feat(kener): added support for base path
2
.gitignore
vendored
@@ -1,7 +1,7 @@
|
||||
.DS_Store
|
||||
node_modules
|
||||
static/kener
|
||||
build/client/kener
|
||||
build
|
||||
config/monitors.yaml
|
||||
config/site.yaml
|
||||
/.svelte-kit
|
||||
|
||||
@@ -24,7 +24,7 @@ COPY docker/root/ /
|
||||
# Dir ENVs need to be set before building or else build throws errors
|
||||
ENV PUBLIC_KENER_FOLDER=/config/static \
|
||||
MONITOR_YAML_PATH=/config/monitors.yaml \
|
||||
SITE_YAML_PATH=/config/site.yaml
|
||||
SITE_YAML_PATH=/config/site.yaml
|
||||
|
||||
# build requires devDependencies which are not used by production deploy
|
||||
# so build in a stage so we can copy results to clean "deploy" stage later
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
.toggle.svelte-1rrlwjr.svelte-1rrlwjr{display:none;transition:all .15s ease-in-out}.toggle.open.svelte-1rrlwjr.svelte-1rrlwjr{transform:rotate(180deg)}.incident-div.svelte-1rrlwjr:hover .toggle.svelte-1rrlwjr{display:block}
|
||||
@@ -1 +0,0 @@
|
||||
.daygrid90.svelte-1p2wps9.svelte-1p2wps9{-ms-overflow-style:none;scrollbar-width:none}.daygrid90.svelte-1p2wps9.svelte-1p2wps9::-webkit-scrollbar{display:none}.oneline.svelte-1p2wps9.svelte-1p2wps9{transition:transform .1s ease-in;cursor:pointer}.oneline.svelte-1p2wps9.svelte-1p2wps9:hover{transform:scaleY(1.2)}.oneline.svelte-1p2wps9:hover+.show-hover.svelte-1p2wps9{display:block!important}.show-hover.svelte-1p2wps9.svelte-1p2wps9{display:none;top:40px;padding:0;text-align:left}.today-sq+.hiddenx.svelte-1p2wps9 .message.svelte-1p2wps9{position:absolute;white-space:nowrap}.today-sq.svelte-1p2wps9+.hiddenx.svelte-1p2wps9{visibility:hidden;z-index:30}.today-sq.svelte-1p2wps9:hover+.hiddenx.svelte-1p2wps9{visibility:visible}.today-sq.svelte-1p2wps9.svelte-1p2wps9:hover{box-shadow:#32326926 0 2px 5px,#0000000d 0 1px 1px;opacity:.75;transition:all .1s ease-in;cursor:pointer}.today-sq.svelte-1p2wps9.svelte-1p2wps9{position:relative;z-index:0}
|
||||
@@ -1 +0,0 @@
|
||||
import{s as h,r as v,z as c,f as g,g as b,h as C,d as f,F as d,i as p,u as D,v as E,w as I,y as _,A as N}from"./scheduler.36bfad59.js";import{S as P,i as S,a as V,t as q}from"./index.76a7851a.js";import{f as m,b as z}from"./Icon.22c2c156.js";function A(n){let e,i,l;const r=n[3].default,t=v(r,n,n[2],null);let u=[{class:i=m("rounded-lg border bg-card text-card-foreground shadow-sm",n[0])},n[1]],o={};for(let s=0;s<u.length;s+=1)o=c(o,u[s]);return{c(){e=g("div"),t&&t.c(),this.h()},l(s){e=b(s,"DIV",{class:!0});var a=C(e);t&&t.l(a),a.forEach(f),this.h()},h(){d(e,o)},m(s,a){p(s,e,a),t&&t.m(e,null),l=!0},p(s,[a]){t&&t.p&&(!l||a&4)&&D(t,r,s,s[2],l?I(r,s[2],a,null):E(s[2]),null),d(e,o=z(u,[(!l||a&1&&i!==(i=m("rounded-lg border bg-card text-card-foreground shadow-sm",s[0])))&&{class:i},a&2&&s[1]]))},i(s){l||(V(t,s),l=!0)},o(s){q(t,s),l=!1},d(s){s&&f(e),t&&t.d(s)}}}function F(n,e,i){const l=["class"];let r=_(e,l),{$$slots:t={},$$scope:u}=e,{class:o=void 0}=e;return n.$$set=s=>{e=c(c({},e),N(s)),i(1,r=_(e,l)),"class"in s&&i(0,o=s.class),"$$scope"in s&&i(2,u=s.$$scope)},[o,r,u,t]}class J extends P{constructor(e){super(),S(this,e,F,A,h,{class:0})}}function j(n){let e,i,l;const r=n[3].default,t=v(r,n,n[2],null);let u=[{class:i=m("p-6 pt-0",n[0])},n[1]],o={};for(let s=0;s<u.length;s+=1)o=c(o,u[s]);return{c(){e=g("div"),t&&t.c(),this.h()},l(s){e=b(s,"DIV",{class:!0});var a=C(e);t&&t.l(a),a.forEach(f),this.h()},h(){d(e,o)},m(s,a){p(s,e,a),t&&t.m(e,null),l=!0},p(s,[a]){t&&t.p&&(!l||a&4)&&D(t,r,s,s[2],l?I(r,s[2],a,null):E(s[2]),null),d(e,o=z(u,[(!l||a&1&&i!==(i=m("p-6 pt-0",s[0])))&&{class:i},a&2&&s[1]]))},i(s){l||(V(t,s),l=!0)},o(s){q(t,s),l=!1},d(s){s&&f(e),t&&t.d(s)}}}function k(n,e,i){const l=["class"];let r=_(e,l),{$$slots:t={},$$scope:u}=e,{class:o=void 0}=e;return n.$$set=s=>{e=c(c({},e),N(s)),i(1,r=_(e,l)),"class"in s&&i(0,o=s.class),"$$scope"in s&&i(2,u=s.$$scope)},[o,r,u,t]}class K extends P{constructor(e){super(),S(this,e,k,j,h,{class:0})}}export{J as C,K as a};
|
||||
@@ -1 +0,0 @@
|
||||
import{s as u,z as r,A as i,r as m,u as d,v as p,w as g}from"./scheduler.36bfad59.js";import{S as h,i as $,b as v,d as b,m as C,a as _,t as f,e as w}from"./index.76a7851a.js";import{I as N,b as I,h as S}from"./Icon.22c2c156.js";function j(l){let e;const s=l[2].default,o=m(s,l,l[3],null);return{c(){o&&o.c()},l(n){o&&o.l(n)},m(n,t){o&&o.m(n,t),e=!0},p(n,t){o&&o.p&&(!e||t&8)&&d(o,s,n,n[3],e?g(s,n[3],t,null):p(n[3]),null)},i(n){e||(_(o,n),e=!0)},o(n){f(o,n),e=!1},d(n){o&&o.d(n)}}}function q(l){let e,s;const o=[{name:"chevron-down"},l[1],{iconNode:l[0]}];let n={$$slots:{default:[j]},$$scope:{ctx:l}};for(let t=0;t<o.length;t+=1)n=r(n,o[t]);return e=new N({props:n}),{c(){v(e.$$.fragment)},l(t){b(e.$$.fragment,t)},m(t,a){C(e,t,a),s=!0},p(t,[a]){const c=a&3?I(o,[o[0],a&2&&S(t[1]),a&1&&{iconNode:t[0]}]):{};a&8&&(c.$$scope={dirty:a,ctx:t}),e.$set(c)},i(t){s||(_(e.$$.fragment,t),s=!0)},o(t){f(e.$$.fragment,t),s=!1},d(t){w(e,t)}}}function z(l,e,s){let{$$slots:o={},$$scope:n}=e;const t=[["path",{d:"m6 9 6 6 6-6"}]];return l.$$set=a=>{s(1,e=r(r({},e),i(a))),"$$scope"in a&&s(3,n=a.$$scope)},e=i(e),[t,e,o,n]}class A extends h{constructor(e){super(),$(this,e,z,q,u,{})}}const E=A;export{E as C};
|
||||
@@ -1 +0,0 @@
|
||||
import{S as a}from"./scheduler.36bfad59.js";function i(){const n=a();return t=>{const{originalEvent:e}=t.detail,{cancelable:r}=t,c=e.type;n(c,{originalEvent:e,currentTarget:e.currentTarget},{cancelable:r})||t.preventDefault()}}export{i as c};
|
||||
@@ -1 +0,0 @@
|
||||
const o=typeof window<"u"?window:typeof globalThis<"u"?globalThis:global;export{o as g};
|
||||
@@ -1,4 +0,0 @@
|
||||
var K=Object.defineProperty;var Q=(t,e,n)=>e in t?K(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var I=(t,e,n)=>(Q(t,typeof e!="symbol"?e+"":e,n),n);import{M as w,a0 as W,d as V,a1 as X,E as k,T as O,G as M,a2 as Y,a3 as N,a4 as T,h as Z,a5 as tt,a6 as et,a7 as nt,a8 as it,a9 as U,aa as st,ab as rt,ac as at,ad as ot,ae as ft}from"./scheduler.36bfad59.js";const q=typeof window<"u";let B=q?()=>window.performance.now():()=>Date.now(),D=q?t=>requestAnimationFrame(t):w;const E=new Set;function H(t){E.forEach(e=>{e.c(t)||(E.delete(e),e.f())}),E.size!==0&&D(H)}function F(t){let e;return E.size===0&&D(H),{promise:new Promise(n=>{E.add(e={c:t,f:n})}),abort(){E.delete(e)}}}const P=new Map;let R=0;function ut(t){let e=5381,n=t.length;for(;n--;)e=(e<<5)-e^t.charCodeAt(n);return e>>>0}function ct(t,e){const n={stylesheet:X(e),rules:{}};return P.set(t,n),n}function z(t,e,n,s,u,a,c,i=0){const l=16.666/s;let r=`{
|
||||
`;for(let $=0;$<=1;$+=l){const m=e+(n-e)*a($);r+=$*100+`%{${c(m,1-m)}}
|
||||
`}const d=r+`100% {${c(n,1-n)}}
|
||||
}`,f=`__svelte_${ut(d)}_${i}`,g=W(t),{stylesheet:h,rules:o}=P.get(g)||ct(g,t);o[f]||(o[f]=!0,h.insertRule(`@keyframes ${f} ${d}`,h.cssRules.length));const _=t.style.animation||"";return t.style.animation=`${_?`${_}, `:""}${f} ${s}ms linear ${u}ms 1 both`,R+=1,f}function A(t,e){const n=(t.style.animation||"").split(", "),s=n.filter(e?a=>a.indexOf(e)<0:a=>a.indexOf("__svelte")===-1),u=n.length-s.length;u&&(t.style.animation=s.join(", "),R-=u,R||lt())}function lt(){D(()=>{R||(P.forEach(t=>{const{ownerNode:e}=t.stylesheet;e&&V(e)}),P.clear())})}let S;function G(){return S||(S=Promise.resolve(),S.then(()=>{S=null})),S}function v(t,e,n){t.dispatchEvent(Y(`${e?"intro":"outro"}${n}`))}const C=new Set;let p;function yt(){p={r:0,c:[],p}}function xt(){p.r||k(p.c),p=p.p}function dt(t,e){t&&t.i&&(C.delete(t),t.i(e))}function vt(t,e,n,s){if(t&&t.o){if(C.has(t))return;C.add(t),p.c.push(()=>{C.delete(t),s&&(n&&t.d(1),s())}),t.o(e)}else s&&s()}const L={duration:0};function wt(t,e,n){const s={direction:"in"};let u=e(t,n,s),a=!1,c,i,l=0;function r(){c&&A(t,c)}function d(){const{delay:g=0,duration:h=300,easing:o=N,tick:_=w,css:$}=u||L;$&&(c=z(t,0,1,h,g,o,$,l++)),_(0,1);const m=B()+g,y=m+h;i&&i.abort(),a=!0,M(()=>v(t,!0,"start")),i=F(x=>{if(a){if(x>=y)return _(1,0),v(t,!0,"end"),r(),a=!1;if(x>=m){const b=o((x-m)/h);_(b,1-b)}}return a})}let f=!1;return{start(){f||(f=!0,A(t),O(u)?(u=u(s),G().then(d)):d())},invalidate(){f=!1},end(){a&&(r(),a=!1)}}}function bt(t,e,n){const s={direction:"out"};let u=e(t,n,s),a=!0,c;const i=p;i.r+=1;let l;function r(){const{delay:d=0,duration:f=300,easing:g=N,tick:h=w,css:o}=u||L;o&&(c=z(t,1,0,f,d,g,o));const _=B()+d,$=_+f;M(()=>v(t,!1,"start")),"inert"in t&&(l=t.inert,t.inert=!0),F(m=>{if(a){if(m>=$)return h(0,1),v(t,!1,"end"),--i.r||k(i.c),!1;if(m>=_){const y=g((m-_)/f);h(1-y,y)}}return a})}return O(u)?G().then(()=>{u=u(s),r()}):r(),{end(d){d&&"inert"in t&&(t.inert=l),d&&u.tick&&u.tick(1,0),a&&(c&&A(t,c),a=!1)}}}function Et(t,e,n,s){let a=e(t,n,{direction:"both"}),c=s?0:1,i=null,l=null,r=null,d;function f(){r&&A(t,r)}function g(o,_){const $=o.b-c;return _*=Math.abs($),{a:c,b:o.b,d:$,duration:_,start:o.start,end:o.start+_,group:o.group}}function h(o){const{delay:_=0,duration:$=300,easing:m=N,tick:y=w,css:x}=a||L,b={start:B()+_,b:o};o||(b.group=p,p.r+=1),"inert"in t&&(o?d!==void 0&&(t.inert=d):(d=t.inert,t.inert=!0)),i||l?l=b:(x&&(f(),r=z(t,c,o,$,_,m,x)),o&&y(0,1),i=g(b,$),M(()=>v(t,o,"start")),F(j=>{if(l&&j>l.start&&(i=g(l,$),l=null,v(t,i.b,"start"),x&&(f(),r=z(t,c,i.b,i.duration,0,m,a.css))),i){if(j>=i.end)y(c=i.b,1-c),v(t,i.b,"end"),l||(i.b?f():--i.group.r||k(i.group.c)),i=null;else if(j>=i.start){const J=j-i.start;c=i.a+i.d*m(J/i.duration),y(c,1-c)}}return!!(i||l)}))}return{run(o){O(a)?G().then(()=>{a=a({direction:o?"in":"out"}),h(o)}):h(o)},end(){f(),i=l=null}}}function kt(t,e,n){const s=t.$$.props[e];s!==void 0&&(t.$$.bound[s]=n,n(t.$$.ctx[s]))}function St(t){t&&t.c()}function Mt(t,e){t&&t.l(e)}function _t(t,e,n){const{fragment:s,after_update:u}=t.$$;s&&s.m(e,n),M(()=>{const a=t.$$.on_mount.map(st).filter(O);t.$$.on_destroy?t.$$.on_destroy.push(...a):k(a),t.$$.on_mount=[]}),u.forEach(M)}function $t(t,e){const n=t.$$;n.fragment!==null&&(nt(n.after_update),k(n.on_destroy),n.fragment&&n.fragment.d(e),n.on_destroy=n.fragment=null,n.ctx=[])}function ht(t,e){t.$$.dirty[0]===-1&&(rt.push(t),at(),t.$$.dirty.fill(0)),t.$$.dirty[e/31|0]|=1<<e%31}function Ot(t,e,n,s,u,a,c=null,i=[-1]){const l=it;U(t);const r=t.$$={fragment:null,ctx:[],props:a,update:w,not_equal:u,bound:T(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(e.context||(l?l.$$.context:[])),callbacks:T(),dirty:i,skip_bound:!1,root:e.target||l.$$.root};c&&c(r.root);let d=!1;if(r.ctx=n?n(t,e.props||{},(f,g,...h)=>{const o=h.length?h[0]:g;return r.ctx&&u(r.ctx[f],r.ctx[f]=o)&&(!r.skip_bound&&r.bound[f]&&r.bound[f](o),d&&ht(t,f)),g}):[],r.update(),d=!0,k(r.before_update),r.fragment=s?s(r.ctx):!1,e.target){if(e.hydrate){ot();const f=Z(e.target);r.fragment&&r.fragment.l(f),f.forEach(V)}else r.fragment&&r.fragment.c();e.intro&&dt(t.$$.fragment),_t(t,e.target,e.anchor),ft(),tt()}U(l)}class jt{constructor(){I(this,"$$");I(this,"$$set")}$destroy(){$t(this,1),this.$destroy=w}$on(e,n){if(!O(n))return w;const s=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return s.push(n),()=>{const u=s.indexOf(n);u!==-1&&s.splice(u,1)}}$set(e){this.$$set&&!et(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const gt="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(gt);export{jt as S,dt as a,St as b,xt as c,Mt as d,$t as e,bt as f,yt as g,wt as h,Ot as i,Et as j,kt as k,_t as m,vt as t};
|
||||
@@ -1 +0,0 @@
|
||||
import{M as b,s as w,$ as m,E as q,T as x}from"./scheduler.36bfad59.js";const a=[];function z(s,u){return{subscribe:A(s,u).subscribe}}function A(s,u=b){let t;const r=new Set;function o(n){if(w(s,n)&&(s=n,t)){const i=!a.length;for(const e of r)e[1](),a.push(e,s);if(i){for(let e=0;e<a.length;e+=2)a[e][0](a[e+1]);a.length=0}}}function f(n){o(n(s))}function l(n,i=b){const e=[n,i];return r.add(e),r.size===1&&(t=u(o,f)||b),n(s),()=>{r.delete(e),r.size===0&&t&&(t(),t=null)}}return{set:o,update:f,subscribe:l}}function B(s,u,t){const r=!Array.isArray(s),o=r?[s]:s;if(!o.every(Boolean))throw new Error("derived() expects stores as input, got a falsy value");const f=u.length<2;return z(t,(l,n)=>{let i=!1;const e=[];let d=0,p=b;const y=()=>{if(d)return;p();const c=u(r?e[0]:e,l,n);f?l(c):p=x(c)?c:b},h=o.map((c,g)=>m(c,_=>{e[g]=_,d&=~(1<<g),i&&y()},()=>{d|=1<<g}));return i=!0,y(),function(){q(h),p(),i=!1}})}function M(s){return{subscribe:s.subscribe.bind(s)}}export{M as a,B as d,z as r,A as w};
|
||||
@@ -1 +0,0 @@
|
||||
var s;const e=((s=globalThis.__sveltekit_1v526qh)==null?void 0:s.base)??"";var a;const t=((a=globalThis.__sveltekit_1v526qh)==null?void 0:a.assets)??e;export{t as a,e as b};
|
||||
@@ -1 +0,0 @@
|
||||
import{w as u}from"./index.a41bf830.js";import{a as b}from"./paths.2cb8f640.js";const v="1714138922396",A="sveltekit:snapshot",R="sveltekit:scroll",y="sveltekit:index",f={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},_=location.origin;function I(e){let t=e.baseURI;if(!t){const n=e.getElementsByTagName("base");t=n.length?n[0].href:e.URL}return t}function S(){return{x:pageXOffset,y:pageYOffset}}function c(e,t){return e.getAttribute(`data-sveltekit-${t}`)}const d={...f,"":f.hover};function g(e){let t=e.assignedSlot??e.parentNode;return(t==null?void 0:t.nodeType)===11&&(t=t.host),t}function T(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()==="A"&&e.hasAttribute("href"))return e;e=g(e)}}function x(e,t){let n;try{n=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI)}catch{}const s=e instanceof SVGAElement?e.target.baseVal:e.target,r=!n||!!s||k(n,t)||(e.getAttribute("rel")||"").split(/\s+/).includes("external"),l=(n==null?void 0:n.origin)===_&&e.hasAttribute("download");return{url:n,external:r,target:s,download:l}}function O(e){let t=null,n=null,s=null,r=null,l=null,o=null,a=e;for(;a&&a!==document.documentElement;)s===null&&(s=c(a,"preload-code")),r===null&&(r=c(a,"preload-data")),t===null&&(t=c(a,"keepfocus")),n===null&&(n=c(a,"noscroll")),l===null&&(l=c(a,"reload")),o===null&&(o=c(a,"replacestate")),a=g(a);function i(h){switch(h){case"":case"true":return!0;case"off":case"false":return!1;default:return null}}return{preload_code:d[s??"off"],preload_data:d[r??"off"],keep_focus:i(t),noscroll:i(n),reload:i(l),replace_state:i(o)}}function p(e){const t=u(e);let n=!0;function s(){n=!0,t.update(o=>o)}function r(o){n=!1,t.set(o)}function l(o){let a;return t.subscribe(i=>{(a===void 0||n&&i!==a)&&o(a=i)})}return{notify:s,set:r,subscribe:l}}function m(){const{set:e,subscribe:t}=u(!1);let n;async function s(){clearTimeout(n);try{const r=await fetch(`${b}/_app/version.json`,{headers:{pragma:"no-cache","cache-control":"no-cache"}});if(!r.ok)return!1;const o=(await r.json()).version!==v;return o&&(e(!0),clearTimeout(n)),o}catch{return!1}}return{subscribe:t,check:s}}function k(e,t){return e.origin!==_||!e.pathname.startsWith(t)}function U(e){e.client}const L={url:p({}),page:p({}),navigating:u(null),updated:m()};export{y as I,f as P,R as S,A as a,x as b,O as c,L as d,U as e,T as f,I as g,k as i,_ as o,S as s};
|
||||
@@ -1 +0,0 @@
|
||||
import{d as e}from"./singletons.db536df2.js";const r=()=>{const s=e;return{page:{subscribe:s.page.subscribe},navigating:{subscribe:s.navigating.subscribe},updated:s.updated}},b={subscribe(s){return r().page.subscribe(s)}};export{b as p};
|
||||
@@ -1 +0,0 @@
|
||||
import{s as b,f as u,l as h,a as S,g as d,h as v,m as g,d as m,c as q,i as _,I as x,n as E,M as $,x as y}from"../chunks/scheduler.36bfad59.js";import{S as C,i as H}from"../chunks/index.76a7851a.js";import{p as I}from"../chunks/stores.eda3841a.js";function M(i){var f;let a,s=i[0].status+"",r,o,n,p=((f=i[0].error)==null?void 0:f.message)+"",c;return{c(){a=u("h1"),r=h(s),o=S(),n=u("p"),c=h(p)},l(e){a=d(e,"H1",{});var t=v(a);r=g(t,s),t.forEach(m),o=q(e),n=d(e,"P",{});var l=v(n);c=g(l,p),l.forEach(m)},m(e,t){_(e,a,t),x(a,r),_(e,o,t),_(e,n,t),x(n,c)},p(e,[t]){var l;t&1&&s!==(s=e[0].status+"")&&E(r,s),t&1&&p!==(p=((l=e[0].error)==null?void 0:l.message)+"")&&E(c,p)},i:$,o:$,d(e){e&&(m(a),m(o),m(n))}}}function P(i,a,s){let r;return y(i,I,o=>s(0,r=o)),[r]}class z extends C{constructor(a){super(),H(this,a,P,M,b,{})}}export{z as component};
|
||||
@@ -1 +0,0 @@
|
||||
{"version":"1714138922396"}
|
||||
|
Before Width: | Height: | Size: 156 KiB |
|
Before Width: | Height: | Size: 4.8 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 339 KiB |
|
Before Width: | Height: | Size: 460 KiB |
|
Before Width: | Height: | Size: 162 KiB |
|
Before Width: | Height: | Size: 242 KiB |
|
Before Width: | Height: | Size: 547 KiB |
|
Before Width: | Height: | Size: 368 KiB |
|
Before Width: | Height: | Size: 655 KiB |
|
Before Width: | Height: | Size: 677 KiB |
|
Before Width: | Height: | Size: 508 KiB |
|
Before Width: | Height: | Size: 4.4 KiB |
@@ -1 +0,0 @@
|
||||
User-agent: *
|
||||
|
Before Width: | Height: | Size: 420 KiB |
|
Before Width: | Height: | Size: 70 KiB |
|
Before Width: | Height: | Size: 9.1 KiB |
@@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="256px" height="308px" viewBox="0 0 256 308" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid">
|
||||
<g>
|
||||
<path d="M239.681566,40.706757 C211.113272,-0.181889366 154.69089,-12.301439 113.894816,13.6910393 L42.2469062,59.3555354 C22.6760042,71.6680028 9.1958152,91.6538543 5.11196889,114.412133 C1.69420521,133.371174 4.6982178,152.928576 13.6483951,169.987905 C7.51549676,179.291145 3.33259428,189.7413 1.3524912,200.706787 C-2.77083771,223.902098 2.62286977,247.780539 16.3159596,266.951444 C44.8902975,307.843936 101.312954,319.958266 142.10271,293.967161 L213.75062,248.302665 C233.322905,235.991626 246.803553,216.005094 250.885557,193.246067 C254.302867,174.287249 251.30121,154.730228 242.355449,137.668922 C248.486748,128.365895 252.667894,117.916162 254.646134,106.951413 C258.772188,83.7560394 253.378243,59.8765465 239.682665,40.706757" fill="#FF3E00"></path>
|
||||
<path d="M106.888658,270.841265 C83.7871855,276.848065 59.3915045,267.805346 45.7864111,248.192566 C37.5477583,236.66102 34.3023491,222.296573 36.7830958,208.343155 C37.1989333,206.075414 37.7711933,203.839165 38.4957755,201.650433 L39.845476,197.534835 L43.5173097,200.231763 C51.9971301,206.462491 61.4784803,211.199728 71.5527203,214.239302 L74.2164003,215.047419 L73.9710252,217.705878 C73.6455499,221.487851 74.6696022,225.262925 76.8616703,228.361972 C80.9560313,234.269749 88.3011363,236.995968 95.2584831,235.190159 C96.8160691,234.773852 98.3006859,234.121384 99.6606718,233.25546 L171.331634,187.582718 C174.877468,185.349963 177.321139,181.729229 178.065299,177.605596 C178.808171,173.400048 177.830501,169.072361 175.351884,165.594581 C171.255076,159.685578 163.908134,156.9582 156.947927,158.762547 C155.392392,159.178888 153.90975,159.83088 152.551509,160.695872 L125.202489,178.130144 C120.705281,180.989558 115.797437,183.144784 110.64897,184.521162 C87.547692,190.527609 63.1523949,181.484801 49.5475471,161.872188 C41.3085624,150.340895 38.0631179,135.976391 40.5442317,122.023052 C43.0002744,108.333716 51.1099574,96.3125326 62.8835328,88.9089537 L134.548175,43.2323647 C139.047294,40.3682559 143.958644,38.21032 149.111311,36.8336525 C172.21244,30.8273594 196.607527,39.8700206 210.212459,59.4823515 C218.451112,71.013898 221.696522,85.3783452 219.215775,99.3317627 C218.798144,101.59911 218.225915,103.835236 217.503095,106.024485 L216.153395,110.140083 L212.483484,107.447276 C204.004261,101.212984 194.522,96.4735732 184.44615,93.4336926 L181.78247,92.6253012 L182.027845,89.9668419 C182.350522,86.1852063 181.326723,82.4111645 179.1372,79.3110228 C175.042839,73.4032457 167.697734,70.677026 160.740387,72.4828355 C159.182801,72.8991426 157.698185,73.5516104 156.338199,74.4175344 L84.6672364,120.0922 C81.1218886,122.323199 78.6795938,125.943704 77.9387928,130.066574 C77.1913232,134.271925 78.1673502,138.601163 80.6469865,142.078963 C84.7438467,147.987899 92.0907405,150.71526 99.0509435,148.910997 C100.608143,148.493836 102.092543,147.841423 103.452857,146.976298 L130.798305,129.548621 C135.293566,126.685437 140.201191,124.528302 145.350175,123.152382 C168.451453,117.145935 192.846751,126.188743 206.451598,145.801356 C214.690583,157.332649 217.936027,171.697153 215.454914,185.650492 C212.997261,199.340539 204.888162,211.362752 193.115613,218.769811 L121.450695,264.442553 C116.951576,267.306662 112.040226,269.464598 106.887559,270.841265" fill="#FFFFFF"></path>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 3.4 KiB |
37
build/env.js
@@ -1,37 +0,0 @@
|
||||
/* global "" */
|
||||
|
||||
const expected = new Set([
|
||||
'SOCKET_PATH',
|
||||
'HOST',
|
||||
'PORT',
|
||||
'ORIGIN',
|
||||
'XFF_DEPTH',
|
||||
'ADDRESS_HEADER',
|
||||
'PROTOCOL_HEADER',
|
||||
'HOST_HEADER',
|
||||
'BODY_SIZE_LIMIT'
|
||||
]);
|
||||
|
||||
if ("") {
|
||||
for (const name in process.env) {
|
||||
if (name.startsWith("")) {
|
||||
const unprefixed = name.slice("".length);
|
||||
if (!expected.has(unprefixed)) {
|
||||
throw new Error(
|
||||
`You should change envPrefix (${""}) to avoid conflicts with existing environment variables — unexpectedly saw ${name}`
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string} name
|
||||
* @param {any} fallback
|
||||
*/
|
||||
function env(name, fallback) {
|
||||
const prefixed = "" + name;
|
||||
return prefixed in process.env ? process.env[prefixed] : fallback;
|
||||
}
|
||||
|
||||
export { env };
|
||||
1307
build/handler.js
225
build/index.js
@@ -1,225 +0,0 @@
|
||||
import { handler } from './handler.js';
|
||||
import { env } from './env.js';
|
||||
import http from 'http';
|
||||
import * as qs from 'querystring';
|
||||
|
||||
function parse$1 (str, loose) {
|
||||
if (str instanceof RegExp) return { keys:false, pattern:str };
|
||||
var c, o, tmp, ext, keys=[], pattern='', arr = str.split('/');
|
||||
arr[0] || arr.shift();
|
||||
|
||||
while (tmp = arr.shift()) {
|
||||
c = tmp[0];
|
||||
if (c === '*') {
|
||||
keys.push('wild');
|
||||
pattern += '/(.*)';
|
||||
} else if (c === ':') {
|
||||
o = tmp.indexOf('?', 1);
|
||||
ext = tmp.indexOf('.', 1);
|
||||
keys.push( tmp.substring(1, !!~o ? o : !!~ext ? ext : tmp.length) );
|
||||
pattern += !!~o && !~ext ? '(?:/([^/]+?))?' : '/([^/]+?)';
|
||||
if (!!~ext) pattern += (!!~o ? '?' : '') + '\\' + tmp.substring(ext);
|
||||
} else {
|
||||
pattern += '/' + tmp;
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
keys: keys,
|
||||
pattern: new RegExp('^' + pattern + (loose ? '(?=$|\/)' : '\/?$'), 'i')
|
||||
};
|
||||
}
|
||||
|
||||
class Trouter {
|
||||
constructor() {
|
||||
this.routes = [];
|
||||
|
||||
this.all = this.add.bind(this, '');
|
||||
this.get = this.add.bind(this, 'GET');
|
||||
this.head = this.add.bind(this, 'HEAD');
|
||||
this.patch = this.add.bind(this, 'PATCH');
|
||||
this.options = this.add.bind(this, 'OPTIONS');
|
||||
this.connect = this.add.bind(this, 'CONNECT');
|
||||
this.delete = this.add.bind(this, 'DELETE');
|
||||
this.trace = this.add.bind(this, 'TRACE');
|
||||
this.post = this.add.bind(this, 'POST');
|
||||
this.put = this.add.bind(this, 'PUT');
|
||||
}
|
||||
|
||||
use(route, ...fns) {
|
||||
let handlers = [].concat.apply([], fns);
|
||||
let { keys, pattern } = parse$1(route, true);
|
||||
this.routes.push({ keys, pattern, method:'', handlers });
|
||||
return this;
|
||||
}
|
||||
|
||||
add(method, route, ...fns) {
|
||||
let { keys, pattern } = parse$1(route);
|
||||
let handlers = [].concat.apply([], fns);
|
||||
this.routes.push({ keys, pattern, method, handlers });
|
||||
return this;
|
||||
}
|
||||
|
||||
find(method, url) {
|
||||
let isHEAD=(method === 'HEAD');
|
||||
let i=0, j=0, k, tmp, arr=this.routes;
|
||||
let matches=[], params={}, handlers=[];
|
||||
for (; i < arr.length; i++) {
|
||||
tmp = arr[i];
|
||||
if (tmp.method.length === 0 || tmp.method === method || isHEAD && tmp.method === 'GET') {
|
||||
if (tmp.keys === false) {
|
||||
matches = tmp.pattern.exec(url);
|
||||
if (matches === null) continue;
|
||||
if (matches.groups !== void 0) for (k in matches.groups) params[k]=matches.groups[k];
|
||||
tmp.handlers.length > 1 ? (handlers=handlers.concat(tmp.handlers)) : handlers.push(tmp.handlers[0]);
|
||||
} else if (tmp.keys.length > 0) {
|
||||
matches = tmp.pattern.exec(url);
|
||||
if (matches === null) continue;
|
||||
for (j=0; j < tmp.keys.length;) params[tmp.keys[j]]=matches[++j];
|
||||
tmp.handlers.length > 1 ? (handlers=handlers.concat(tmp.handlers)) : handlers.push(tmp.handlers[0]);
|
||||
} else if (tmp.pattern.test(url)) {
|
||||
tmp.handlers.length > 1 ? (handlers=handlers.concat(tmp.handlers)) : handlers.push(tmp.handlers[0]);
|
||||
}
|
||||
} // else not a match
|
||||
}
|
||||
|
||||
return { params, handlers };
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @typedef ParsedURL
|
||||
* @type {import('.').ParsedURL}
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef Request
|
||||
* @property {string} url
|
||||
* @property {ParsedURL} _parsedUrl
|
||||
*/
|
||||
|
||||
/**
|
||||
* @param {Request} req
|
||||
* @returns {ParsedURL|void}
|
||||
*/
|
||||
function parse(req) {
|
||||
let raw = req.url;
|
||||
if (raw == null) return;
|
||||
|
||||
let prev = req._parsedUrl;
|
||||
if (prev && prev.raw === raw) return prev;
|
||||
|
||||
let pathname=raw, search='', query;
|
||||
|
||||
if (raw.length > 1) {
|
||||
let idx = raw.indexOf('?', 1);
|
||||
|
||||
if (idx !== -1) {
|
||||
search = raw.substring(idx);
|
||||
pathname = raw.substring(0, idx);
|
||||
if (search.length > 1) {
|
||||
query = qs.parse(search.substring(1));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return req._parsedUrl = { pathname, search, query, raw };
|
||||
}
|
||||
|
||||
function onError(err, req, res) {
|
||||
let code = typeof err.status === 'number' && err.status;
|
||||
code = res.statusCode = (code && code >= 100 ? code : 500);
|
||||
if (typeof err === 'string' || Buffer.isBuffer(err)) res.end(err);
|
||||
else res.end(err.message || http.STATUS_CODES[code]);
|
||||
}
|
||||
|
||||
const mount = fn => fn instanceof Polka ? fn.attach : fn;
|
||||
|
||||
class Polka extends Trouter {
|
||||
constructor(opts={}) {
|
||||
super();
|
||||
this.parse = parse;
|
||||
this.server = opts.server;
|
||||
this.handler = this.handler.bind(this);
|
||||
this.onError = opts.onError || onError; // catch-all handler
|
||||
this.onNoMatch = opts.onNoMatch || this.onError.bind(null, { status: 404 });
|
||||
this.attach = (req, res) => setImmediate(this.handler, req, res);
|
||||
}
|
||||
|
||||
use(base, ...fns) {
|
||||
if (base === '/') {
|
||||
super.use(base, fns.map(mount));
|
||||
} else if (typeof base === 'function' || base instanceof Polka) {
|
||||
super.use('/', [base, ...fns].map(mount));
|
||||
} else {
|
||||
super.use(base,
|
||||
(req, _, next) => {
|
||||
if (typeof base === 'string') {
|
||||
let len = base.length;
|
||||
base.startsWith('/') || len++;
|
||||
req.url = req.url.substring(len) || '/';
|
||||
req.path = req.path.substring(len) || '/';
|
||||
} else {
|
||||
req.url = req.url.replace(base, '') || '/';
|
||||
req.path = req.path.replace(base, '') || '/';
|
||||
}
|
||||
if (req.url.charAt(0) !== '/') {
|
||||
req.url = '/' + req.url;
|
||||
}
|
||||
next();
|
||||
},
|
||||
fns.map(mount),
|
||||
(req, _, next) => {
|
||||
req.path = req._parsedUrl.pathname;
|
||||
req.url = req.path + req._parsedUrl.search;
|
||||
next();
|
||||
}
|
||||
);
|
||||
}
|
||||
return this; // chainable
|
||||
}
|
||||
|
||||
listen() {
|
||||
(this.server = this.server || http.createServer()).on('request', this.attach);
|
||||
this.server.listen.apply(this.server, arguments);
|
||||
return this;
|
||||
}
|
||||
|
||||
handler(req, res, next) {
|
||||
let info = this.parse(req), path = info.pathname;
|
||||
let obj = this.find(req.method, req.path=path);
|
||||
|
||||
req.url = path + info.search;
|
||||
req.originalUrl = req.originalUrl || req.url;
|
||||
req.query = info.query || {};
|
||||
req.search = info.search;
|
||||
req.params = obj.params;
|
||||
|
||||
if (path.length > 1 && path.indexOf('%', 1) !== -1) {
|
||||
for (let k in req.params) {
|
||||
try { req.params[k] = decodeURIComponent(req.params[k]); }
|
||||
catch (e) { /* malform uri segment */ }
|
||||
}
|
||||
}
|
||||
|
||||
let i=0, arr=obj.handlers.concat(this.onNoMatch), len=arr.length;
|
||||
let loop = async () => res.finished || (i < len) && arr[i++](req, res, next);
|
||||
(next = next || (err => err ? this.onError(err, req, res, next) : loop().catch(next)))(); // init
|
||||
}
|
||||
}
|
||||
|
||||
function polka (opts) {
|
||||
return new Polka(opts);
|
||||
}
|
||||
|
||||
const path = env('SOCKET_PATH', false);
|
||||
const host = env('HOST', '0.0.0.0');
|
||||
const port = env('PORT', !path && '3000');
|
||||
|
||||
const server = polka().use(handler);
|
||||
|
||||
server.listen({ path, host, port }, () => {
|
||||
console.log(`Listening on ${path ? path : host + ':' + port}`);
|
||||
});
|
||||
|
||||
export { host, path, port, server };
|
||||
@@ -1,86 +0,0 @@
|
||||
import fs from 'fs-extra';
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
|
||||
const langMap = {};
|
||||
const files = fs.readdirSync("./locales");
|
||||
for (const file of files) {
|
||||
if (!file.endsWith(".json")) {
|
||||
continue;
|
||||
}
|
||||
const lang = file.split(".")[0];
|
||||
const data = fs.readFileSync(`./locales/${file}`, "utf8");
|
||||
try {
|
||||
langMap[lang] = JSON.parse(data);
|
||||
} catch (err) {
|
||||
console.log(`Error parsing ${file}: ${err}`);
|
||||
}
|
||||
}
|
||||
function mergeEnglish(language, english) {
|
||||
for (let key in english) {
|
||||
if (language[key] === void 0) {
|
||||
language[key] = english[key];
|
||||
}
|
||||
if (typeof language[key] === "object") {
|
||||
mergeEnglish(language[key], english[key]);
|
||||
}
|
||||
}
|
||||
}
|
||||
const defaultLang = "en";
|
||||
const init = (lang) => {
|
||||
let english = langMap[defaultLang];
|
||||
let language = langMap[lang];
|
||||
if (language === void 0) {
|
||||
return english;
|
||||
}
|
||||
mergeEnglish(language, english);
|
||||
return language;
|
||||
};
|
||||
async function load({ params, route, url, cookies, request }) {
|
||||
let site = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/site.json", "utf8"));
|
||||
const headers = request.headers;
|
||||
const userAgent = headers.get("user-agent");
|
||||
let localTz = "GMT";
|
||||
const localTzCookie = cookies.get("localTz");
|
||||
if (!!localTzCookie) {
|
||||
localTz = localTzCookie;
|
||||
}
|
||||
let showNav = true;
|
||||
if (url.pathname.startsWith("/embed")) {
|
||||
showNav = false;
|
||||
}
|
||||
let isBot = false;
|
||||
if (userAgent?.includes("Chrome-Lighthouse") || userAgent?.includes("bot")) {
|
||||
isBot = true;
|
||||
}
|
||||
let selectedLang = "en";
|
||||
const localLangCookie = cookies.get("localLang");
|
||||
if (!!localLangCookie && site.i18n?.locales[localLangCookie]) {
|
||||
selectedLang = localLangCookie;
|
||||
} else if (site.i18n?.defaultLocale && site.i18n?.locales[site.i18n.defaultLocale]) {
|
||||
selectedLang = site.i18n.defaultLocale;
|
||||
}
|
||||
return {
|
||||
site,
|
||||
localTz,
|
||||
showNav,
|
||||
isBot,
|
||||
lang: init(String(selectedLang)),
|
||||
selectedLang
|
||||
};
|
||||
}
|
||||
|
||||
var _layout_server = /*#__PURE__*/Object.freeze({
|
||||
__proto__: null,
|
||||
load: load
|
||||
});
|
||||
|
||||
const index = 0;
|
||||
let component_cache;
|
||||
const component = async () => component_cache ??= (await import('./_layout.svelte-54f19014.js')).default;
|
||||
const server_id = "src/routes/+layout.server.js";
|
||||
const imports = ["_app/immutable/nodes/0.4f379a4d.js","_app/immutable/chunks/scheduler.36bfad59.js","_app/immutable/chunks/index.76a7851a.js","_app/immutable/chunks/globals.7f7f1b26.js","_app/immutable/chunks/Icon.22c2c156.js","_app/immutable/chunks/index.a41bf830.js","_app/immutable/chunks/index.f836667e.js","_app/immutable/chunks/events.74eec825.js"];
|
||||
const stylesheets = ["_app/immutable/assets/0.1ffe9223.css"];
|
||||
const fonts = [];
|
||||
|
||||
export { component, fonts, imports, index, _layout_server as server, server_id, stylesheets };
|
||||
//# sourceMappingURL=0-b9813c04.js.map
|
||||
@@ -1,9 +0,0 @@
|
||||
const index = 1;
|
||||
let component_cache;
|
||||
const component = async () => component_cache ??= (await import('./error.svelte-3dc2f51e.js')).default;
|
||||
const imports = ["_app/immutable/nodes/1.fa7269b2.js","_app/immutable/chunks/scheduler.36bfad59.js","_app/immutable/chunks/index.76a7851a.js","_app/immutable/chunks/stores.eda3841a.js","_app/immutable/chunks/singletons.db536df2.js","_app/immutable/chunks/index.a41bf830.js","_app/immutable/chunks/paths.2cb8f640.js"];
|
||||
const stylesheets = [];
|
||||
const fonts = [];
|
||||
|
||||
export { component, fonts, imports, index, stylesheets };
|
||||
//# sourceMappingURL=1-a26e5b42.js.map
|
||||
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"1-a26e5b42.js","sources":["../../../.svelte-kit/adapter-node/nodes/1.js"],"sourcesContent":["\n\nexport const index = 1;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/fallbacks/error.svelte.js')).default;\nexport const imports = [\"_app/immutable/nodes/1.fa7269b2.js\",\"_app/immutable/chunks/scheduler.36bfad59.js\",\"_app/immutable/chunks/index.76a7851a.js\",\"_app/immutable/chunks/stores.eda3841a.js\",\"_app/immutable/chunks/singletons.db536df2.js\",\"_app/immutable/chunks/index.a41bf830.js\",\"_app/immutable/chunks/paths.2cb8f640.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG,EAAE;AACvB,IAAI,eAAe,CAAC;AACR,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAsC,CAAC,EAAE,QAAQ;AAC5G,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,6CAA6C,CAAC,yCAAyC,CAAC,0CAA0C,CAAC,8CAA8C,CAAC,yCAAyC,CAAC,yCAAyC,EAAE;AACxT,MAAC,WAAW,GAAG,GAAG;AAClB,MAAC,KAAK,GAAG;;;;"}
|
||||
@@ -1,51 +0,0 @@
|
||||
import { G as GetOpenIncidents, M as Mapper, F as FilterAndInsertMonitorInIncident } from './github-da26bf52.js';
|
||||
import { F as FetchData } from './page-576e2fb0.js';
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
import fs from 'fs-extra';
|
||||
import 'axios';
|
||||
import './tool-53f63ca6.js';
|
||||
import 'marked';
|
||||
|
||||
async function load({ parent }) {
|
||||
let monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/monitors.json", "utf8"));
|
||||
const parentData = await parent();
|
||||
const siteData = parentData.site;
|
||||
const github = siteData.github;
|
||||
const monitorsActive = [];
|
||||
for (let i = 0; i < monitors.length; i++) {
|
||||
if (monitors[i].hidden !== void 0 && monitors[i].hidden === true) {
|
||||
continue;
|
||||
}
|
||||
if (monitors[i].category !== void 0 && monitors[i].category !== "home") {
|
||||
continue;
|
||||
}
|
||||
delete monitors[i].api;
|
||||
delete monitors[i].defaultStatus;
|
||||
let data = await FetchData(monitors[i], parentData.localTz);
|
||||
monitors[i].pageData = data;
|
||||
monitors[i].activeIncidents = [];
|
||||
monitorsActive.push(monitors[i]);
|
||||
}
|
||||
let openIncidents = await GetOpenIncidents(github);
|
||||
let openIncidentsReduced = openIncidents.map(Mapper);
|
||||
return {
|
||||
monitors: monitorsActive,
|
||||
openIncidents: FilterAndInsertMonitorInIncident(openIncidentsReduced, monitorsActive)
|
||||
};
|
||||
}
|
||||
|
||||
var _page_server = /*#__PURE__*/Object.freeze({
|
||||
__proto__: null,
|
||||
load: load
|
||||
});
|
||||
|
||||
const index = 2;
|
||||
let component_cache;
|
||||
const component = async () => component_cache ??= (await import('./_page.svelte-f19899de.js')).default;
|
||||
const server_id = "src/routes/+page.server.js";
|
||||
const imports = ["_app/immutable/nodes/2.e13d3e99.js","_app/immutable/chunks/scheduler.36bfad59.js","_app/immutable/chunks/index.76a7851a.js","_app/immutable/chunks/Icon.22c2c156.js","_app/immutable/chunks/index.a41bf830.js","_app/immutable/chunks/monitor.628a0861.js","_app/immutable/chunks/client.22cd9d5b.js","_app/immutable/chunks/index.f836667e.js","_app/immutable/chunks/events.74eec825.js","_app/immutable/chunks/card-content.b04fef6d.js","_app/immutable/chunks/incident.0ec87052.js","_app/immutable/chunks/chevron-down.f5cb0116.js"];
|
||||
const stylesheets = ["_app/immutable/assets/monitor.27a2e44b.css","_app/immutable/assets/incident.d0acbf00.css"];
|
||||
const fonts = [];
|
||||
|
||||
export { component, fonts, imports, index, _page_server as server, server_id, stylesheets };
|
||||
//# sourceMappingURL=2-8fb53b32.js.map
|
||||
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"2-8fb53b32.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/_page.server.js","../../../.svelte-kit/adapter-node/nodes/2.js"],"sourcesContent":["import { e as GetOpenIncidents, M as Mapper, F as FilterAndInsertMonitorInIncident } from \"../../chunks/github.js\";\nimport { F as FetchData } from \"../../chunks/page.js\";\nimport { p as public_env } from \"../../chunks/shared-server.js\";\nimport fs from \"fs-extra\";\nasync function load({ parent }) {\n let monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + \"/monitors.json\", \"utf8\"));\n const parentData = await parent();\n const siteData = parentData.site;\n const github = siteData.github;\n const monitorsActive = [];\n for (let i = 0; i < monitors.length; i++) {\n if (monitors[i].hidden !== void 0 && monitors[i].hidden === true) {\n continue;\n }\n if (monitors[i].category !== void 0 && monitors[i].category !== \"home\") {\n continue;\n }\n delete monitors[i].api;\n delete monitors[i].defaultStatus;\n let data = await FetchData(monitors[i], parentData.localTz);\n monitors[i].pageData = data;\n monitors[i].activeIncidents = [];\n monitorsActive.push(monitors[i]);\n }\n let openIncidents = await GetOpenIncidents(github);\n let openIncidentsReduced = openIncidents.map(Mapper);\n return {\n monitors: monitorsActive,\n openIncidents: FilterAndInsertMonitorInIncident(openIncidentsReduced, monitorsActive)\n };\n}\nexport {\n load\n};\n","import * as server from '../entries/pages/_page.server.js';\n\nexport const index = 2;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/+page.server.js\";\nexport const imports = [\"_app/immutable/nodes/2.e13d3e99.js\",\"_app/immutable/chunks/scheduler.36bfad59.js\",\"_app/immutable/chunks/index.76a7851a.js\",\"_app/immutable/chunks/Icon.22c2c156.js\",\"_app/immutable/chunks/index.a41bf830.js\",\"_app/immutable/chunks/monitor.628a0861.js\",\"_app/immutable/chunks/client.22cd9d5b.js\",\"_app/immutable/chunks/index.f836667e.js\",\"_app/immutable/chunks/events.74eec825.js\",\"_app/immutable/chunks/card-content.b04fef6d.js\",\"_app/immutable/chunks/incident.0ec87052.js\",\"_app/immutable/chunks/chevron-down.f5cb0116.js\"];\nexport const stylesheets = [\"_app/immutable/assets/monitor.27a2e44b.css\",\"_app/immutable/assets/incident.d0acbf00.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":";;;;;;;;AAIA,eAAe,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE;AAChC,EAAE,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,GAAG,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;AACxG,EAAE,MAAM,UAAU,GAAG,MAAM,MAAM,EAAE,CAAC;AACpC,EAAE,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC;AACnC,EAAE,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;AACjC,EAAE,MAAM,cAAc,GAAG,EAAE,CAAC;AAC5B,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC5C,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,EAAE;AACtE,MAAM,SAAS;AACf,KAAK;AACL,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,EAAE;AAC5E,MAAM,SAAS;AACf,KAAK;AACL,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAC3B,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;AACrC,IAAI,IAAI,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;AAChE,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;AAChC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,EAAE,CAAC;AACrC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,GAAG;AACH,EAAE,IAAI,aAAa,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACrD,EAAE,IAAI,oBAAoB,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACvD,EAAE,OAAO;AACT,IAAI,QAAQ,EAAE,cAAc;AAC5B,IAAI,aAAa,EAAE,gCAAgC,CAAC,oBAAoB,EAAE,cAAc,CAAC;AACzF,GAAG,CAAC;AACJ;;;;;;;AC5BY,MAAC,KAAK,GAAG,EAAE;AACvB,IAAI,eAAe,CAAC;AACR,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAkC,CAAC,EAAE,QAAQ;AAExG,MAAC,SAAS,GAAG,6BAA6B;AAC1C,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,6CAA6C,CAAC,yCAAyC,CAAC,wCAAwC,CAAC,yCAAyC,CAAC,2CAA2C,CAAC,0CAA0C,CAAC,yCAAyC,CAAC,0CAA0C,CAAC,gDAAgD,CAAC,4CAA4C,CAAC,gDAAgD,EAAE;AACxhB,MAAC,WAAW,GAAG,CAAC,4CAA4C,CAAC,6CAA6C,EAAE;AAC5G,MAAC,KAAK,GAAG;;;;"}
|
||||
@@ -1,50 +0,0 @@
|
||||
import { G as GetOpenIncidents, M as Mapper, F as FilterAndInsertMonitorInIncident } from './github-da26bf52.js';
|
||||
import { F as FetchData } from './page-576e2fb0.js';
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
import fs from 'fs-extra';
|
||||
import 'axios';
|
||||
import './tool-53f63ca6.js';
|
||||
import 'marked';
|
||||
|
||||
async function load({ params, route, url, parent }) {
|
||||
let monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/monitors.json", "utf8"));
|
||||
const parentData = await parent();
|
||||
const siteData = parentData.site;
|
||||
const github = siteData.github;
|
||||
const monitorsActive = [];
|
||||
for (let i = 0; i < monitors.length; i++) {
|
||||
if (monitors[i].hidden !== void 0 && monitors[i].hidden === true) {
|
||||
continue;
|
||||
}
|
||||
if (monitors[i].category === void 0 || monitors[i].category !== params.category) {
|
||||
continue;
|
||||
}
|
||||
delete monitors[i].api;
|
||||
delete monitors[i].defaultStatus;
|
||||
let data = await FetchData(monitors[i], parentData.localTz);
|
||||
monitors[i].pageData = data;
|
||||
monitorsActive.push(monitors[i]);
|
||||
}
|
||||
let openIncidents = await GetOpenIncidents(github);
|
||||
let openIncidentsReduced = openIncidents.map(Mapper);
|
||||
return {
|
||||
monitors: monitorsActive,
|
||||
openIncidents: FilterAndInsertMonitorInIncident(openIncidentsReduced, monitorsActive)
|
||||
};
|
||||
}
|
||||
|
||||
var _page_server = /*#__PURE__*/Object.freeze({
|
||||
__proto__: null,
|
||||
load: load
|
||||
});
|
||||
|
||||
const index = 3;
|
||||
let component_cache;
|
||||
const component = async () => component_cache ??= (await import('./_page.svelte-eceb8035.js')).default;
|
||||
const server_id = "src/routes/category-[category]/+page.server.js";
|
||||
const imports = ["_app/immutable/nodes/3.c80d2096.js","_app/immutable/chunks/scheduler.36bfad59.js","_app/immutable/chunks/index.76a7851a.js","_app/immutable/chunks/Icon.22c2c156.js","_app/immutable/chunks/index.a41bf830.js","_app/immutable/chunks/monitor.628a0861.js","_app/immutable/chunks/client.22cd9d5b.js","_app/immutable/chunks/index.f836667e.js","_app/immutable/chunks/events.74eec825.js","_app/immutable/chunks/card-content.b04fef6d.js","_app/immutable/chunks/incident.0ec87052.js","_app/immutable/chunks/chevron-down.f5cb0116.js","_app/immutable/chunks/stores.eda3841a.js","_app/immutable/chunks/singletons.db536df2.js","_app/immutable/chunks/paths.2cb8f640.js"];
|
||||
const stylesheets = ["_app/immutable/assets/monitor.27a2e44b.css","_app/immutable/assets/incident.d0acbf00.css"];
|
||||
const fonts = [];
|
||||
|
||||
export { component, fonts, imports, index, _page_server as server, server_id, stylesheets };
|
||||
//# sourceMappingURL=3-a69b4202.js.map
|
||||
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"3-a69b4202.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/category-_category_/_page.server.js","../../../.svelte-kit/adapter-node/nodes/3.js"],"sourcesContent":["import { e as GetOpenIncidents, M as Mapper, F as FilterAndInsertMonitorInIncident } from \"../../../chunks/github.js\";\nimport { F as FetchData } from \"../../../chunks/page.js\";\nimport { p as public_env } from \"../../../chunks/shared-server.js\";\nimport fs from \"fs-extra\";\nasync function load({ params, route, url, parent }) {\n let monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + \"/monitors.json\", \"utf8\"));\n const parentData = await parent();\n const siteData = parentData.site;\n const github = siteData.github;\n const monitorsActive = [];\n for (let i = 0; i < monitors.length; i++) {\n if (monitors[i].hidden !== void 0 && monitors[i].hidden === true) {\n continue;\n }\n if (monitors[i].category === void 0 || monitors[i].category !== params.category) {\n continue;\n }\n delete monitors[i].api;\n delete monitors[i].defaultStatus;\n let data = await FetchData(monitors[i], parentData.localTz);\n monitors[i].pageData = data;\n monitorsActive.push(monitors[i]);\n }\n let openIncidents = await GetOpenIncidents(github);\n let openIncidentsReduced = openIncidents.map(Mapper);\n return {\n monitors: monitorsActive,\n openIncidents: FilterAndInsertMonitorInIncident(openIncidentsReduced, monitorsActive)\n };\n}\nexport {\n load\n};\n","import * as server from '../entries/pages/category-_category_/_page.server.js';\n\nexport const index = 3;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/category-_category_/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/category-[category]/+page.server.js\";\nexport const imports = [\"_app/immutable/nodes/3.c80d2096.js\",\"_app/immutable/chunks/scheduler.36bfad59.js\",\"_app/immutable/chunks/index.76a7851a.js\",\"_app/immutable/chunks/Icon.22c2c156.js\",\"_app/immutable/chunks/index.a41bf830.js\",\"_app/immutable/chunks/monitor.628a0861.js\",\"_app/immutable/chunks/client.22cd9d5b.js\",\"_app/immutable/chunks/index.f836667e.js\",\"_app/immutable/chunks/events.74eec825.js\",\"_app/immutable/chunks/card-content.b04fef6d.js\",\"_app/immutable/chunks/incident.0ec87052.js\",\"_app/immutable/chunks/chevron-down.f5cb0116.js\",\"_app/immutable/chunks/stores.eda3841a.js\",\"_app/immutable/chunks/singletons.db536df2.js\",\"_app/immutable/chunks/paths.2cb8f640.js\"];\nexport const stylesheets = [\"_app/immutable/assets/monitor.27a2e44b.css\",\"_app/immutable/assets/incident.d0acbf00.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":";;;;;;;;AAIA,eAAe,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;AACpD,EAAE,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,GAAG,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;AACxG,EAAE,MAAM,UAAU,GAAG,MAAM,MAAM,EAAE,CAAC;AACpC,EAAE,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC;AACnC,EAAE,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;AACjC,EAAE,MAAM,cAAc,GAAG,EAAE,CAAC;AAC5B,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC5C,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,EAAE;AACtE,MAAM,SAAS;AACf,KAAK;AACL,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,EAAE;AACrF,MAAM,SAAS;AACf,KAAK;AACL,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAC3B,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;AACrC,IAAI,IAAI,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;AAChE,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;AAChC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,GAAG;AACH,EAAE,IAAI,aAAa,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACrD,EAAE,IAAI,oBAAoB,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACvD,EAAE,OAAO;AACT,IAAI,QAAQ,EAAE,cAAc;AAC5B,IAAI,aAAa,EAAE,gCAAgC,CAAC,oBAAoB,EAAE,cAAc,CAAC;AACzF,GAAG,CAAC;AACJ;;;;;;;AC3BY,MAAC,KAAK,GAAG,EAAE;AACvB,IAAI,eAAe,CAAC;AACR,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAsD,CAAC,EAAE,QAAQ;AAE5H,MAAC,SAAS,GAAG,iDAAiD;AAC9D,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,6CAA6C,CAAC,yCAAyC,CAAC,wCAAwC,CAAC,yCAAyC,CAAC,2CAA2C,CAAC,0CAA0C,CAAC,yCAAyC,CAAC,0CAA0C,CAAC,gDAAgD,CAAC,4CAA4C,CAAC,gDAAgD,CAAC,0CAA0C,CAAC,8CAA8C,CAAC,yCAAyC,EAAE;AAC5pB,MAAC,WAAW,GAAG,CAAC,4CAA4C,CAAC,6CAA6C,EAAE;AAC5G,MAAC,KAAK,GAAG;;;;"}
|
||||
@@ -1,24 +0,0 @@
|
||||
import axios from 'axios';
|
||||
|
||||
async function load({ params, route, url, parent }) {
|
||||
const { data } = await axios.get("https://raw.githubusercontent.com/rajnandan1/kener/main/docs.md");
|
||||
return {
|
||||
md: data
|
||||
};
|
||||
}
|
||||
|
||||
var _page_server = /*#__PURE__*/Object.freeze({
|
||||
__proto__: null,
|
||||
load: load
|
||||
});
|
||||
|
||||
const index = 4;
|
||||
let component_cache;
|
||||
const component = async () => component_cache ??= (await import('./_page.svelte-d381d79d.js')).default;
|
||||
const server_id = "src/routes/docs/+page.server.js";
|
||||
const imports = ["_app/immutable/nodes/4.b62b9ee0.js","_app/immutable/chunks/scheduler.36bfad59.js","_app/immutable/chunks/index.76a7851a.js","_app/immutable/chunks/globals.7f7f1b26.js","_app/immutable/chunks/Icon.22c2c156.js","_app/immutable/chunks/index.a41bf830.js","_app/immutable/chunks/card-content.b04fef6d.js","_app/immutable/chunks/events.74eec825.js","_app/immutable/chunks/chevron-down.f5cb0116.js"];
|
||||
const stylesheets = [];
|
||||
const fonts = [];
|
||||
|
||||
export { component, fonts, imports, index, _page_server as server, server_id, stylesheets };
|
||||
//# sourceMappingURL=4-f5c7f6c7.js.map
|
||||
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"4-f5c7f6c7.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/docs/_page.server.js","../../../.svelte-kit/adapter-node/nodes/4.js"],"sourcesContent":["import axios from \"axios\";\nasync function load({ params, route, url, parent }) {\n const { data } = await axios.get(\"https://raw.githubusercontent.com/rajnandan1/kener/main/docs.md\");\n return {\n md: data\n };\n}\nexport {\n load\n};\n","import * as server from '../entries/pages/docs/_page.server.js';\n\nexport const index = 4;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/docs/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/docs/+page.server.js\";\nexport const imports = [\"_app/immutable/nodes/4.b62b9ee0.js\",\"_app/immutable/chunks/scheduler.36bfad59.js\",\"_app/immutable/chunks/index.76a7851a.js\",\"_app/immutable/chunks/globals.7f7f1b26.js\",\"_app/immutable/chunks/Icon.22c2c156.js\",\"_app/immutable/chunks/index.a41bf830.js\",\"_app/immutable/chunks/card-content.b04fef6d.js\",\"_app/immutable/chunks/events.74eec825.js\",\"_app/immutable/chunks/chevron-down.f5cb0116.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":";;AACA,eAAe,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;AACpD,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;AACtG,EAAE,OAAO;AACT,IAAI,EAAE,EAAE,IAAI;AACZ,GAAG,CAAC;AACJ;;;;;;;ACJY,MAAC,KAAK,GAAG,EAAE;AACvB,IAAI,eAAe,CAAC;AACR,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAuC,CAAC,EAAE,QAAQ;AAE7G,MAAC,SAAS,GAAG,kCAAkC;AAC/C,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,6CAA6C,CAAC,yCAAyC,CAAC,2CAA2C,CAAC,wCAAwC,CAAC,yCAAyC,CAAC,gDAAgD,CAAC,0CAA0C,CAAC,gDAAgD,EAAE;AACtZ,MAAC,WAAW,GAAG,GAAG;AAClB,MAAC,KAAK,GAAG;;;;"}
|
||||
@@ -1,43 +0,0 @@
|
||||
import { F as FetchData } from './page-576e2fb0.js';
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
import fs from 'fs-extra';
|
||||
|
||||
async function load({ params, route, url, parent }) {
|
||||
let monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/monitors.json", "utf8"));
|
||||
const parentData = await parent();
|
||||
const monitorsActive = [];
|
||||
const query = url.searchParams;
|
||||
const theme = query.get("theme");
|
||||
for (let i = 0; i < monitors.length; i++) {
|
||||
if (monitors[i].tag !== params.tag) {
|
||||
continue;
|
||||
}
|
||||
delete monitors[i].api;
|
||||
delete monitors[i].defaultStatus;
|
||||
monitors[i].embed = true;
|
||||
let data = await FetchData(monitors[i], parentData.localTz);
|
||||
monitors[i].pageData = data;
|
||||
monitorsActive.push(monitors[i]);
|
||||
}
|
||||
return {
|
||||
monitors: monitorsActive,
|
||||
theme,
|
||||
openIncidents: []
|
||||
};
|
||||
}
|
||||
|
||||
var _page_server = /*#__PURE__*/Object.freeze({
|
||||
__proto__: null,
|
||||
load: load
|
||||
});
|
||||
|
||||
const index = 5;
|
||||
let component_cache;
|
||||
const component = async () => component_cache ??= (await import('./_page.svelte-3a830046.js')).default;
|
||||
const server_id = "src/routes/embed-[tag]/+page.server.js";
|
||||
const imports = ["_app/immutable/nodes/5.580836f6.js","_app/immutable/chunks/scheduler.36bfad59.js","_app/immutable/chunks/index.76a7851a.js","_app/immutable/chunks/Icon.22c2c156.js","_app/immutable/chunks/index.a41bf830.js","_app/immutable/chunks/monitor.628a0861.js","_app/immutable/chunks/client.22cd9d5b.js","_app/immutable/chunks/index.f836667e.js","_app/immutable/chunks/events.74eec825.js","_app/immutable/chunks/card-content.b04fef6d.js","_app/immutable/chunks/stores.eda3841a.js","_app/immutable/chunks/singletons.db536df2.js","_app/immutable/chunks/paths.2cb8f640.js"];
|
||||
const stylesheets = ["_app/immutable/assets/monitor.27a2e44b.css"];
|
||||
const fonts = [];
|
||||
|
||||
export { component, fonts, imports, index, _page_server as server, server_id, stylesheets };
|
||||
//# sourceMappingURL=5-33259dd3.js.map
|
||||
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"5-33259dd3.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/embed-_tag_/_page.server.js","../../../.svelte-kit/adapter-node/nodes/5.js"],"sourcesContent":["import { F as FetchData } from \"../../../chunks/page.js\";\nimport { p as public_env } from \"../../../chunks/shared-server.js\";\nimport fs from \"fs-extra\";\nasync function load({ params, route, url, parent }) {\n let monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + \"/monitors.json\", \"utf8\"));\n const parentData = await parent();\n const monitorsActive = [];\n const query = url.searchParams;\n const theme = query.get(\"theme\");\n for (let i = 0; i < monitors.length; i++) {\n if (monitors[i].tag !== params.tag) {\n continue;\n }\n delete monitors[i].api;\n delete monitors[i].defaultStatus;\n monitors[i].embed = true;\n let data = await FetchData(monitors[i], parentData.localTz);\n monitors[i].pageData = data;\n monitorsActive.push(monitors[i]);\n }\n return {\n monitors: monitorsActive,\n theme,\n openIncidents: []\n };\n}\nexport {\n load\n};\n","import * as server from '../entries/pages/embed-_tag_/_page.server.js';\n\nexport const index = 5;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/embed-_tag_/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/embed-[tag]/+page.server.js\";\nexport const imports = [\"_app/immutable/nodes/5.580836f6.js\",\"_app/immutable/chunks/scheduler.36bfad59.js\",\"_app/immutable/chunks/index.76a7851a.js\",\"_app/immutable/chunks/Icon.22c2c156.js\",\"_app/immutable/chunks/index.a41bf830.js\",\"_app/immutable/chunks/monitor.628a0861.js\",\"_app/immutable/chunks/client.22cd9d5b.js\",\"_app/immutable/chunks/index.f836667e.js\",\"_app/immutable/chunks/events.74eec825.js\",\"_app/immutable/chunks/card-content.b04fef6d.js\",\"_app/immutable/chunks/stores.eda3841a.js\",\"_app/immutable/chunks/singletons.db536df2.js\",\"_app/immutable/chunks/paths.2cb8f640.js\"];\nexport const stylesheets = [\"_app/immutable/assets/monitor.27a2e44b.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":";;;;AAGA,eAAe,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;AACpD,EAAE,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,GAAG,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;AACxG,EAAE,MAAM,UAAU,GAAG,MAAM,MAAM,EAAE,CAAC;AACpC,EAAE,MAAM,cAAc,GAAG,EAAE,CAAC;AAC5B,EAAE,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC;AACjC,EAAE,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACnC,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC5C,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,EAAE;AACxC,MAAM,SAAS;AACf,KAAK;AACL,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAC3B,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;AACrC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC;AAC7B,IAAI,IAAI,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;AAChE,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;AAChC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,GAAG;AACH,EAAE,OAAO;AACT,IAAI,QAAQ,EAAE,cAAc;AAC5B,IAAI,KAAK;AACT,IAAI,aAAa,EAAE,EAAE;AACrB,GAAG,CAAC;AACJ;;;;;;;ACvBY,MAAC,KAAK,GAAG,EAAE;AACvB,IAAI,eAAe,CAAC;AACR,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAA8C,CAAC,EAAE,QAAQ;AAEpH,MAAC,SAAS,GAAG,yCAAyC;AACtD,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,6CAA6C,CAAC,yCAAyC,CAAC,wCAAwC,CAAC,yCAAyC,CAAC,2CAA2C,CAAC,0CAA0C,CAAC,yCAAyC,CAAC,0CAA0C,CAAC,gDAAgD,CAAC,0CAA0C,CAAC,8CAA8C,CAAC,yCAAyC,EAAE;AAC9jB,MAAC,WAAW,GAAG,CAAC,4CAA4C,EAAE;AAC9D,MAAC,KAAK,GAAG;;;;"}
|
||||
@@ -1,43 +0,0 @@
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
import { a as GetIncidents, M as Mapper } from './github-da26bf52.js';
|
||||
import fs from 'fs-extra';
|
||||
import 'axios';
|
||||
import './tool-53f63ca6.js';
|
||||
import 'marked';
|
||||
|
||||
async function load({ params, route, url, parent }) {
|
||||
let monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/monitors.json", "utf8"));
|
||||
const siteData = await parent();
|
||||
const github = siteData.site.github;
|
||||
const { description, name, tag, image } = monitors.find((monitor) => monitor.folderName === params.id);
|
||||
const allIncidents = await GetIncidents(tag, github, "all");
|
||||
const gitHubActiveIssues = allIncidents.filter((issue) => {
|
||||
return issue.state === "open";
|
||||
});
|
||||
const gitHubPastIssues = allIncidents.filter((issue) => {
|
||||
return issue.state === "closed";
|
||||
});
|
||||
return {
|
||||
issues: params.id,
|
||||
githubConfig: github,
|
||||
monitor: { description, name, image },
|
||||
activeIncidents: await Promise.all(gitHubActiveIssues.map(Mapper, { github })),
|
||||
pastIncidents: await Promise.all(gitHubPastIssues.map(Mapper, { github }))
|
||||
};
|
||||
}
|
||||
|
||||
var _page_server = /*#__PURE__*/Object.freeze({
|
||||
__proto__: null,
|
||||
load: load
|
||||
});
|
||||
|
||||
const index = 6;
|
||||
let component_cache;
|
||||
const component = async () => component_cache ??= (await import('./_page.svelte-5e89030c.js')).default;
|
||||
const server_id = "src/routes/incident/[id]/+page.server.js";
|
||||
const imports = ["_app/immutable/nodes/6.5e131a8e.js","_app/immutable/chunks/scheduler.36bfad59.js","_app/immutable/chunks/index.76a7851a.js","_app/immutable/chunks/Icon.22c2c156.js","_app/immutable/chunks/index.a41bf830.js","_app/immutable/chunks/incident.0ec87052.js","_app/immutable/chunks/card-content.b04fef6d.js","_app/immutable/chunks/index.f836667e.js","_app/immutable/chunks/client.22cd9d5b.js","_app/immutable/chunks/chevron-down.f5cb0116.js"];
|
||||
const stylesheets = ["_app/immutable/assets/incident.d0acbf00.css"];
|
||||
const fonts = [];
|
||||
|
||||
export { component, fonts, imports, index, _page_server as server, server_id, stylesheets };
|
||||
//# sourceMappingURL=6-9feef482.js.map
|
||||
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"6-9feef482.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/incident/_id_/_page.server.js","../../../.svelte-kit/adapter-node/nodes/6.js"],"sourcesContent":["import { p as public_env } from \"../../../../chunks/shared-server.js\";\nimport { f as GetIncidents, M as Mapper } from \"../../../../chunks/github.js\";\nimport fs from \"fs-extra\";\nasync function load({ params, route, url, parent }) {\n let monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + \"/monitors.json\", \"utf8\"));\n const siteData = await parent();\n const github = siteData.site.github;\n const { description, name, tag, image } = monitors.find((monitor) => monitor.folderName === params.id);\n const allIncidents = await GetIncidents(tag, github, \"all\");\n const gitHubActiveIssues = allIncidents.filter((issue) => {\n return issue.state === \"open\";\n });\n const gitHubPastIssues = allIncidents.filter((issue) => {\n return issue.state === \"closed\";\n });\n return {\n issues: params.id,\n githubConfig: github,\n monitor: { description, name, image },\n activeIncidents: await Promise.all(gitHubActiveIssues.map(Mapper, { github })),\n pastIncidents: await Promise.all(gitHubPastIssues.map(Mapper, { github }))\n };\n}\nexport {\n load\n};\n","import * as server from '../entries/pages/incident/_id_/_page.server.js';\n\nexport const index = 6;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/incident/_id_/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/incident/[id]/+page.server.js\";\nexport const imports = [\"_app/immutable/nodes/6.5e131a8e.js\",\"_app/immutable/chunks/scheduler.36bfad59.js\",\"_app/immutable/chunks/index.76a7851a.js\",\"_app/immutable/chunks/Icon.22c2c156.js\",\"_app/immutable/chunks/index.a41bf830.js\",\"_app/immutable/chunks/incident.0ec87052.js\",\"_app/immutable/chunks/card-content.b04fef6d.js\",\"_app/immutable/chunks/index.f836667e.js\",\"_app/immutable/chunks/client.22cd9d5b.js\",\"_app/immutable/chunks/chevron-down.f5cb0116.js\"];\nexport const stylesheets = [\"_app/immutable/assets/incident.d0acbf00.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":";;;;;;;AAGA,eAAe,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;AACpD,EAAE,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,GAAG,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;AACxG,EAAE,MAAM,QAAQ,GAAG,MAAM,MAAM,EAAE,CAAC;AAClC,EAAE,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;AACtC,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,UAAU,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC;AACzG,EAAE,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAC9D,EAAE,MAAM,kBAAkB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK;AAC5D,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,MAAM,CAAC;AAClC,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK;AAC1D,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC;AACpC,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,MAAM,EAAE,MAAM,CAAC,EAAE;AACrB,IAAI,YAAY,EAAE,MAAM;AACxB,IAAI,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE;AACzC,IAAI,eAAe,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AAClF,IAAI,aAAa,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AAC9E,GAAG,CAAC;AACJ;;;;;;;ACpBY,MAAC,KAAK,GAAG,EAAE;AACvB,IAAI,eAAe,CAAC;AACR,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAgD,CAAC,EAAE,QAAQ;AAEtH,MAAC,SAAS,GAAG,2CAA2C;AACxD,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,6CAA6C,CAAC,yCAAyC,CAAC,wCAAwC,CAAC,yCAAyC,CAAC,4CAA4C,CAAC,gDAAgD,CAAC,yCAAyC,CAAC,0CAA0C,CAAC,gDAAgD,EAAE;AACjc,MAAC,WAAW,GAAG,CAAC,6CAA6C,EAAE;AAC/D,MAAC,KAAK,GAAG;;;;"}
|
||||
@@ -1,47 +0,0 @@
|
||||
import { G as GetOpenIncidents, M as Mapper, F as FilterAndInsertMonitorInIncident } from './github-da26bf52.js';
|
||||
import { F as FetchData } from './page-576e2fb0.js';
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
import fs from 'fs-extra';
|
||||
import 'axios';
|
||||
import './tool-53f63ca6.js';
|
||||
import 'marked';
|
||||
|
||||
async function load({ params, route, url, parent }) {
|
||||
let monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/monitors.json", "utf8"));
|
||||
const parentData = await parent();
|
||||
const siteData = parentData.site;
|
||||
const github = siteData.github;
|
||||
const monitorsActive = [];
|
||||
for (let i = 0; i < monitors.length; i++) {
|
||||
if (monitors[i].tag !== params.tag) {
|
||||
continue;
|
||||
}
|
||||
delete monitors[i].api;
|
||||
delete monitors[i].defaultStatus;
|
||||
let data = await FetchData(monitors[i], parentData.localTz);
|
||||
monitors[i].pageData = data;
|
||||
monitorsActive.push(monitors[i]);
|
||||
}
|
||||
let openIncidents = await GetOpenIncidents(github);
|
||||
let openIncidentsReduced = openIncidents.map(Mapper);
|
||||
return {
|
||||
monitors: monitorsActive,
|
||||
openIncidents: FilterAndInsertMonitorInIncident(openIncidentsReduced, monitorsActive)
|
||||
};
|
||||
}
|
||||
|
||||
var _page_server = /*#__PURE__*/Object.freeze({
|
||||
__proto__: null,
|
||||
load: load
|
||||
});
|
||||
|
||||
const index = 7;
|
||||
let component_cache;
|
||||
const component = async () => component_cache ??= (await import('./_page.svelte-ce6dfce4.js')).default;
|
||||
const server_id = "src/routes/monitor-[tag]/+page.server.js";
|
||||
const imports = ["_app/immutable/nodes/7.fb0699c9.js","_app/immutable/chunks/scheduler.36bfad59.js","_app/immutable/chunks/index.76a7851a.js","_app/immutable/chunks/Icon.22c2c156.js","_app/immutable/chunks/index.a41bf830.js","_app/immutable/chunks/monitor.628a0861.js","_app/immutable/chunks/client.22cd9d5b.js","_app/immutable/chunks/index.f836667e.js","_app/immutable/chunks/events.74eec825.js","_app/immutable/chunks/card-content.b04fef6d.js","_app/immutable/chunks/incident.0ec87052.js","_app/immutable/chunks/chevron-down.f5cb0116.js","_app/immutable/chunks/paths.2cb8f640.js"];
|
||||
const stylesheets = ["_app/immutable/assets/monitor.27a2e44b.css","_app/immutable/assets/incident.d0acbf00.css"];
|
||||
const fonts = [];
|
||||
|
||||
export { component, fonts, imports, index, _page_server as server, server_id, stylesheets };
|
||||
//# sourceMappingURL=7-ab0a8f25.js.map
|
||||
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"7-ab0a8f25.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/monitor-_tag_/_page.server.js","../../../.svelte-kit/adapter-node/nodes/7.js"],"sourcesContent":["import { e as GetOpenIncidents, M as Mapper, F as FilterAndInsertMonitorInIncident } from \"../../../chunks/github.js\";\nimport { F as FetchData } from \"../../../chunks/page.js\";\nimport { p as public_env } from \"../../../chunks/shared-server.js\";\nimport fs from \"fs-extra\";\nasync function load({ params, route, url, parent }) {\n let monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + \"/monitors.json\", \"utf8\"));\n const parentData = await parent();\n const siteData = parentData.site;\n const github = siteData.github;\n const monitorsActive = [];\n for (let i = 0; i < monitors.length; i++) {\n if (monitors[i].tag !== params.tag) {\n continue;\n }\n delete monitors[i].api;\n delete monitors[i].defaultStatus;\n let data = await FetchData(monitors[i], parentData.localTz);\n monitors[i].pageData = data;\n monitorsActive.push(monitors[i]);\n }\n let openIncidents = await GetOpenIncidents(github);\n let openIncidentsReduced = openIncidents.map(Mapper);\n return {\n monitors: monitorsActive,\n openIncidents: FilterAndInsertMonitorInIncident(openIncidentsReduced, monitorsActive)\n };\n}\nexport {\n load\n};\n","import * as server from '../entries/pages/monitor-_tag_/_page.server.js';\n\nexport const index = 7;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/monitor-_tag_/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/monitor-[tag]/+page.server.js\";\nexport const imports = [\"_app/immutable/nodes/7.fb0699c9.js\",\"_app/immutable/chunks/scheduler.36bfad59.js\",\"_app/immutable/chunks/index.76a7851a.js\",\"_app/immutable/chunks/Icon.22c2c156.js\",\"_app/immutable/chunks/index.a41bf830.js\",\"_app/immutable/chunks/monitor.628a0861.js\",\"_app/immutable/chunks/client.22cd9d5b.js\",\"_app/immutable/chunks/index.f836667e.js\",\"_app/immutable/chunks/events.74eec825.js\",\"_app/immutable/chunks/card-content.b04fef6d.js\",\"_app/immutable/chunks/incident.0ec87052.js\",\"_app/immutable/chunks/chevron-down.f5cb0116.js\",\"_app/immutable/chunks/paths.2cb8f640.js\"];\nexport const stylesheets = [\"_app/immutable/assets/monitor.27a2e44b.css\",\"_app/immutable/assets/incident.d0acbf00.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":";;;;;;;;AAIA,eAAe,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;AACpD,EAAE,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,GAAG,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;AACxG,EAAE,MAAM,UAAU,GAAG,MAAM,MAAM,EAAE,CAAC;AACpC,EAAE,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC;AACnC,EAAE,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;AACjC,EAAE,MAAM,cAAc,GAAG,EAAE,CAAC;AAC5B,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC5C,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,EAAE;AACxC,MAAM,SAAS;AACf,KAAK;AACL,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAC3B,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;AACrC,IAAI,IAAI,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;AAChE,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;AAChC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,GAAG;AACH,EAAE,IAAI,aAAa,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACrD,EAAE,IAAI,oBAAoB,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACvD,EAAE,OAAO;AACT,IAAI,QAAQ,EAAE,cAAc;AAC5B,IAAI,aAAa,EAAE,gCAAgC,CAAC,oBAAoB,EAAE,cAAc,CAAC;AACzF,GAAG,CAAC;AACJ;;;;;;;ACxBY,MAAC,KAAK,GAAG,EAAE;AACvB,IAAI,eAAe,CAAC;AACR,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAgD,CAAC,EAAE,QAAQ;AAEtH,MAAC,SAAS,GAAG,2CAA2C;AACxD,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,6CAA6C,CAAC,yCAAyC,CAAC,wCAAwC,CAAC,yCAAyC,CAAC,2CAA2C,CAAC,0CAA0C,CAAC,yCAAyC,CAAC,0CAA0C,CAAC,gDAAgD,CAAC,4CAA4C,CAAC,gDAAgD,CAAC,yCAAyC,EAAE;AAClkB,MAAC,WAAW,GAAG,CAAC,4CAA4C,CAAC,6CAA6C,EAAE;AAC5G,MAAC,KAAK,GAAG;;;;"}
|
||||
@@ -1,406 +0,0 @@
|
||||
import { c as create_ssr_component, v as validate_component, e as escape, a as each, b as add_attribute, d as compute_rest_props, f as subscribe, g as spread, h as escape_attribute_value, i as escape_object } from './ssr-3edfa391.js';
|
||||
import { B as Button } from './index3-c13390c6.js';
|
||||
import { c as cn, s as setCtx$3, g as getCtx$2, a as getAttrs$4, d as disabledAttrs, i as is_void, b as setGroupCtx, e as getContent, f as flyAndScale, I as Icon$1 } from './Icon-36e7f051.js';
|
||||
import { d as derived } from './index2-c5c18f89.js';
|
||||
import { c as createDispatcher } from './events-b3d49719.js';
|
||||
import 'clsx';
|
||||
import 'tailwind-variants';
|
||||
import 'tailwind-merge';
|
||||
|
||||
const DropdownMenu = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let $idValues, $$unsubscribe_idValues;
|
||||
let { closeOnOutsideClick = void 0 } = $$props;
|
||||
let { closeOnEscape = void 0 } = $$props;
|
||||
let { portal = void 0 } = $$props;
|
||||
let { forceVisible = void 0 } = $$props;
|
||||
let { open = void 0 } = $$props;
|
||||
let { onOpenChange = void 0 } = $$props;
|
||||
let { preventScroll = void 0 } = $$props;
|
||||
let { arrowSize = void 0 } = $$props;
|
||||
let { positioning = void 0 } = $$props;
|
||||
let { loop = void 0 } = $$props;
|
||||
let { dir = void 0 } = $$props;
|
||||
let { typeahead = void 0 } = $$props;
|
||||
let { closeFocus = void 0 } = $$props;
|
||||
let { disableFocusFirstItem = void 0 } = $$props;
|
||||
const { states: { open: localOpen }, updateOption, ids } = setCtx$3({
|
||||
closeOnOutsideClick,
|
||||
closeOnEscape,
|
||||
portal,
|
||||
forceVisible,
|
||||
defaultOpen: open,
|
||||
preventScroll,
|
||||
arrowSize,
|
||||
positioning,
|
||||
loop,
|
||||
dir,
|
||||
typeahead,
|
||||
closeFocus,
|
||||
disableFocusFirstItem,
|
||||
onOpenChange: ({ next }) => {
|
||||
if (open !== next) {
|
||||
onOpenChange?.(next);
|
||||
open = next;
|
||||
}
|
||||
return next;
|
||||
}
|
||||
});
|
||||
const idValues = derived([ids.menu, ids.trigger], ([$menuId, $triggerId]) => ({ menu: $menuId, trigger: $triggerId }));
|
||||
$$unsubscribe_idValues = subscribe(idValues, (value) => $idValues = value);
|
||||
if ($$props.closeOnOutsideClick === void 0 && $$bindings.closeOnOutsideClick && closeOnOutsideClick !== void 0)
|
||||
$$bindings.closeOnOutsideClick(closeOnOutsideClick);
|
||||
if ($$props.closeOnEscape === void 0 && $$bindings.closeOnEscape && closeOnEscape !== void 0)
|
||||
$$bindings.closeOnEscape(closeOnEscape);
|
||||
if ($$props.portal === void 0 && $$bindings.portal && portal !== void 0)
|
||||
$$bindings.portal(portal);
|
||||
if ($$props.forceVisible === void 0 && $$bindings.forceVisible && forceVisible !== void 0)
|
||||
$$bindings.forceVisible(forceVisible);
|
||||
if ($$props.open === void 0 && $$bindings.open && open !== void 0)
|
||||
$$bindings.open(open);
|
||||
if ($$props.onOpenChange === void 0 && $$bindings.onOpenChange && onOpenChange !== void 0)
|
||||
$$bindings.onOpenChange(onOpenChange);
|
||||
if ($$props.preventScroll === void 0 && $$bindings.preventScroll && preventScroll !== void 0)
|
||||
$$bindings.preventScroll(preventScroll);
|
||||
if ($$props.arrowSize === void 0 && $$bindings.arrowSize && arrowSize !== void 0)
|
||||
$$bindings.arrowSize(arrowSize);
|
||||
if ($$props.positioning === void 0 && $$bindings.positioning && positioning !== void 0)
|
||||
$$bindings.positioning(positioning);
|
||||
if ($$props.loop === void 0 && $$bindings.loop && loop !== void 0)
|
||||
$$bindings.loop(loop);
|
||||
if ($$props.dir === void 0 && $$bindings.dir && dir !== void 0)
|
||||
$$bindings.dir(dir);
|
||||
if ($$props.typeahead === void 0 && $$bindings.typeahead && typeahead !== void 0)
|
||||
$$bindings.typeahead(typeahead);
|
||||
if ($$props.closeFocus === void 0 && $$bindings.closeFocus && closeFocus !== void 0)
|
||||
$$bindings.closeFocus(closeFocus);
|
||||
if ($$props.disableFocusFirstItem === void 0 && $$bindings.disableFocusFirstItem && disableFocusFirstItem !== void 0)
|
||||
$$bindings.disableFocusFirstItem(disableFocusFirstItem);
|
||||
open !== void 0 && localOpen.set(open);
|
||||
{
|
||||
updateOption("closeOnOutsideClick", closeOnOutsideClick);
|
||||
}
|
||||
{
|
||||
updateOption("closeOnEscape", closeOnEscape);
|
||||
}
|
||||
{
|
||||
updateOption("portal", portal);
|
||||
}
|
||||
{
|
||||
updateOption("forceVisible", forceVisible);
|
||||
}
|
||||
{
|
||||
updateOption("preventScroll", preventScroll);
|
||||
}
|
||||
{
|
||||
updateOption("arrowSize", arrowSize);
|
||||
}
|
||||
{
|
||||
updateOption("positioning", positioning);
|
||||
}
|
||||
{
|
||||
updateOption("loop", loop);
|
||||
}
|
||||
{
|
||||
updateOption("dir", dir);
|
||||
}
|
||||
{
|
||||
updateOption("closeFocus", closeFocus);
|
||||
}
|
||||
{
|
||||
updateOption("disableFocusFirstItem", disableFocusFirstItem);
|
||||
}
|
||||
{
|
||||
updateOption("typeahead", typeahead);
|
||||
}
|
||||
$$unsubscribe_idValues();
|
||||
return `${slots.default ? slots.default({ ids: $idValues }) : ``}`;
|
||||
});
|
||||
const DropdownMenuItem = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let builder;
|
||||
let attrs;
|
||||
let $$restProps = compute_rest_props($$props, ["href", "asChild", "disabled"]);
|
||||
let $item, $$unsubscribe_item;
|
||||
let { href = void 0 } = $$props;
|
||||
let { asChild = false } = $$props;
|
||||
let { disabled = false } = $$props;
|
||||
const { elements: { item } } = getCtx$2();
|
||||
$$unsubscribe_item = subscribe(item, (value) => $item = value);
|
||||
createDispatcher();
|
||||
if ($$props.href === void 0 && $$bindings.href && href !== void 0)
|
||||
$$bindings.href(href);
|
||||
if ($$props.asChild === void 0 && $$bindings.asChild && asChild !== void 0)
|
||||
$$bindings.asChild(asChild);
|
||||
if ($$props.disabled === void 0 && $$bindings.disabled && disabled !== void 0)
|
||||
$$bindings.disabled(disabled);
|
||||
builder = $item;
|
||||
attrs = {
|
||||
...getAttrs$4("item"),
|
||||
...disabledAttrs(disabled)
|
||||
};
|
||||
$$unsubscribe_item();
|
||||
return `${asChild ? `${slots.default ? slots.default({ builder, attrs }) : ``}` : `${((tag) => {
|
||||
return tag ? `<${href ? "a" : "div"}${spread(
|
||||
[
|
||||
{ href: escape_attribute_value(href) },
|
||||
escape_object(builder),
|
||||
escape_object($$restProps),
|
||||
escape_object(attrs)
|
||||
],
|
||||
{}
|
||||
)}>${is_void(tag) ? "" : `${slots.default ? slots.default({ builder, attrs }) : ``}`}${is_void(tag) ? "" : `</${tag}>`}` : "";
|
||||
})(href ? "a" : "div")}`}`;
|
||||
});
|
||||
const DropdownMenuGroup = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let builder;
|
||||
let $$restProps = compute_rest_props($$props, ["asChild"]);
|
||||
let $group, $$unsubscribe_group;
|
||||
let { asChild = false } = $$props;
|
||||
const { group, id } = setGroupCtx();
|
||||
$$unsubscribe_group = subscribe(group, (value) => $group = value);
|
||||
const attrs = getAttrs$4("group");
|
||||
if ($$props.asChild === void 0 && $$bindings.asChild && asChild !== void 0)
|
||||
$$bindings.asChild(asChild);
|
||||
builder = $group(id);
|
||||
$$unsubscribe_group();
|
||||
return `${asChild ? `${slots.default ? slots.default({ builder, attrs }) : ``}` : `<div${spread([escape_object(builder), escape_object($$restProps), escape_object(attrs)], {})}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>`}`;
|
||||
});
|
||||
const DropdownMenuContent = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let builder;
|
||||
let $$restProps = compute_rest_props($$props, [
|
||||
"sideOffset",
|
||||
"transition",
|
||||
"transitionConfig",
|
||||
"inTransition",
|
||||
"inTransitionConfig",
|
||||
"outTransition",
|
||||
"outTransitionConfig",
|
||||
"asChild",
|
||||
"id"
|
||||
]);
|
||||
let $menu, $$unsubscribe_menu;
|
||||
let $open, $$unsubscribe_open;
|
||||
let { sideOffset = 5 } = $$props;
|
||||
let { transition = void 0 } = $$props;
|
||||
let { transitionConfig = void 0 } = $$props;
|
||||
let { inTransition = void 0 } = $$props;
|
||||
let { inTransitionConfig = void 0 } = $$props;
|
||||
let { outTransition = void 0 } = $$props;
|
||||
let { outTransitionConfig = void 0 } = $$props;
|
||||
let { asChild = false } = $$props;
|
||||
let { id = void 0 } = $$props;
|
||||
const { elements: { menu }, states: { open }, ids } = getContent(sideOffset);
|
||||
$$unsubscribe_menu = subscribe(menu, (value) => $menu = value);
|
||||
$$unsubscribe_open = subscribe(open, (value) => $open = value);
|
||||
const attrs = getAttrs$4("content");
|
||||
createDispatcher();
|
||||
if ($$props.sideOffset === void 0 && $$bindings.sideOffset && sideOffset !== void 0)
|
||||
$$bindings.sideOffset(sideOffset);
|
||||
if ($$props.transition === void 0 && $$bindings.transition && transition !== void 0)
|
||||
$$bindings.transition(transition);
|
||||
if ($$props.transitionConfig === void 0 && $$bindings.transitionConfig && transitionConfig !== void 0)
|
||||
$$bindings.transitionConfig(transitionConfig);
|
||||
if ($$props.inTransition === void 0 && $$bindings.inTransition && inTransition !== void 0)
|
||||
$$bindings.inTransition(inTransition);
|
||||
if ($$props.inTransitionConfig === void 0 && $$bindings.inTransitionConfig && inTransitionConfig !== void 0)
|
||||
$$bindings.inTransitionConfig(inTransitionConfig);
|
||||
if ($$props.outTransition === void 0 && $$bindings.outTransition && outTransition !== void 0)
|
||||
$$bindings.outTransition(outTransition);
|
||||
if ($$props.outTransitionConfig === void 0 && $$bindings.outTransitionConfig && outTransitionConfig !== void 0)
|
||||
$$bindings.outTransitionConfig(outTransitionConfig);
|
||||
if ($$props.asChild === void 0 && $$bindings.asChild && asChild !== void 0)
|
||||
$$bindings.asChild(asChild);
|
||||
if ($$props.id === void 0 && $$bindings.id && id !== void 0)
|
||||
$$bindings.id(id);
|
||||
{
|
||||
if (id) {
|
||||
ids.menu.set(id);
|
||||
}
|
||||
}
|
||||
builder = $menu;
|
||||
$$unsubscribe_menu();
|
||||
$$unsubscribe_open();
|
||||
return ` ${asChild && $open ? `${slots.default ? slots.default({ builder, attrs }) : ``}` : `${transition && $open ? `<div${spread([escape_object(builder), escape_object($$restProps), escape_object(attrs)], {})}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>` : `${inTransition && outTransition && $open ? `<div${spread([escape_object(builder), escape_object($$restProps), escape_object(attrs)], {})}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>` : `${inTransition && $open ? `<div${spread(
|
||||
[
|
||||
escape_object(builder),
|
||||
escape_object($$restProps),
|
||||
escape_object(attrs)
|
||||
],
|
||||
{}
|
||||
)}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>` : `${outTransition && $open ? `<div${spread(
|
||||
[
|
||||
escape_object(builder),
|
||||
escape_object($$restProps),
|
||||
escape_object(attrs)
|
||||
],
|
||||
{}
|
||||
)}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>` : `${$open ? `<div${spread(
|
||||
[
|
||||
escape_object(builder),
|
||||
escape_object($$restProps),
|
||||
escape_object(attrs)
|
||||
],
|
||||
{}
|
||||
)}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>` : ``}`}`}`}`}`}`;
|
||||
});
|
||||
const DropdownMenuTrigger = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let builder;
|
||||
let $$restProps = compute_rest_props($$props, ["asChild", "id"]);
|
||||
let $trigger, $$unsubscribe_trigger;
|
||||
let { asChild = false } = $$props;
|
||||
let { id = void 0 } = $$props;
|
||||
const { elements: { trigger }, ids } = getCtx$2();
|
||||
$$unsubscribe_trigger = subscribe(trigger, (value) => $trigger = value);
|
||||
createDispatcher();
|
||||
const attrs = getAttrs$4("trigger");
|
||||
if ($$props.asChild === void 0 && $$bindings.asChild && asChild !== void 0)
|
||||
$$bindings.asChild(asChild);
|
||||
if ($$props.id === void 0 && $$bindings.id && id !== void 0)
|
||||
$$bindings.id(id);
|
||||
{
|
||||
if (id) {
|
||||
ids.trigger.set(id);
|
||||
}
|
||||
}
|
||||
builder = $trigger;
|
||||
$$unsubscribe_trigger();
|
||||
return `${asChild ? `${slots.default ? slots.default({ builder, attrs }) : ``}` : `<button${spread(
|
||||
[
|
||||
escape_object(builder),
|
||||
{ type: "button" },
|
||||
escape_object($$restProps),
|
||||
escape_object(attrs)
|
||||
],
|
||||
{}
|
||||
)}>${slots.default ? slots.default({ builder, attrs }) : ``}</button>`}`;
|
||||
});
|
||||
const Dropdown_menu_item = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let $$restProps = compute_rest_props($$props, ["class", "inset"]);
|
||||
let { class: className = void 0 } = $$props;
|
||||
let { inset = void 0 } = $$props;
|
||||
if ($$props.class === void 0 && $$bindings.class && className !== void 0)
|
||||
$$bindings.class(className);
|
||||
if ($$props.inset === void 0 && $$bindings.inset && inset !== void 0)
|
||||
$$bindings.inset(inset);
|
||||
return `${validate_component(DropdownMenuItem, "DropdownMenuPrimitive.Item").$$render(
|
||||
$$result,
|
||||
Object.assign(
|
||||
{},
|
||||
{
|
||||
class: cn("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50", inset && "pl-8", className)
|
||||
},
|
||||
$$restProps
|
||||
),
|
||||
{},
|
||||
{
|
||||
default: () => {
|
||||
return `${slots.default ? slots.default({}) : ``}`;
|
||||
}
|
||||
}
|
||||
)}`;
|
||||
});
|
||||
const Dropdown_menu_content = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let $$restProps = compute_rest_props($$props, ["class", "sideOffset", "transition", "transitionConfig"]);
|
||||
let { class: className = void 0 } = $$props;
|
||||
let { sideOffset = 4 } = $$props;
|
||||
let { transition = flyAndScale } = $$props;
|
||||
let { transitionConfig = void 0 } = $$props;
|
||||
if ($$props.class === void 0 && $$bindings.class && className !== void 0)
|
||||
$$bindings.class(className);
|
||||
if ($$props.sideOffset === void 0 && $$bindings.sideOffset && sideOffset !== void 0)
|
||||
$$bindings.sideOffset(sideOffset);
|
||||
if ($$props.transition === void 0 && $$bindings.transition && transition !== void 0)
|
||||
$$bindings.transition(transition);
|
||||
if ($$props.transitionConfig === void 0 && $$bindings.transitionConfig && transitionConfig !== void 0)
|
||||
$$bindings.transitionConfig(transitionConfig);
|
||||
return `${validate_component(DropdownMenuContent, "DropdownMenuPrimitive.Content").$$render(
|
||||
$$result,
|
||||
Object.assign(
|
||||
{},
|
||||
{ transition },
|
||||
{ transitionConfig },
|
||||
{ sideOffset },
|
||||
{
|
||||
class: cn("z-50 min-w-[8rem] rounded-md border bg-popover p-1 text-popover-foreground shadow-md focus:outline-none", className)
|
||||
},
|
||||
$$restProps
|
||||
),
|
||||
{},
|
||||
{
|
||||
default: () => {
|
||||
return `${slots.default ? slots.default({}) : ``}`;
|
||||
}
|
||||
}
|
||||
)}`;
|
||||
});
|
||||
const Languages = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
const iconNode = [
|
||||
["path", { "d": "m5 8 6 6" }],
|
||||
["path", { "d": "m4 14 6-6 2-3" }],
|
||||
["path", { "d": "M2 5h12" }],
|
||||
["path", { "d": "M7 2h1" }],
|
||||
["path", { "d": "m22 22-5-10-5 10" }],
|
||||
["path", { "d": "M14 18h6" }]
|
||||
];
|
||||
return `${validate_component(Icon$1, "Icon").$$render($$result, Object.assign({}, { name: "languages" }, $$props, { iconNode }), {}, {
|
||||
default: () => {
|
||||
return `${slots.default ? slots.default({}) : ``}`;
|
||||
}
|
||||
})}`;
|
||||
});
|
||||
const Languages$1 = Languages;
|
||||
const Root = DropdownMenu;
|
||||
const Trigger = DropdownMenuTrigger;
|
||||
const Group = DropdownMenuGroup;
|
||||
const Nav = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let { data } = $$props;
|
||||
let defaultLocaleKey = data.selectedLang;
|
||||
const allLocales = data.site.i18n?.locales;
|
||||
let defaultLocaleValue;
|
||||
if (!allLocales) {
|
||||
defaultLocaleValue = "English";
|
||||
} else {
|
||||
defaultLocaleValue = allLocales[defaultLocaleKey];
|
||||
}
|
||||
if ($$props.data === void 0 && $$bindings.data && data !== void 0)
|
||||
$$bindings.data(data);
|
||||
return `<div class="one"></div> <header class="relative z-50 w-full"><div class="container flex h-14 items-center"><div class="mr-4 flex blurry-bg w-full justify-between"><a${add_attribute("href", data.site.home ? data.site.home : "/", 0)} class="mr-6 flex items-center space-x-2">${data.site.logo ? `<img${add_attribute("src", data.site.logo, 0)} class="h-8"${add_attribute("alt", data.site.title, 0)} srcset="">` : ``} ${data.site.title ? `<span class="hidden font-bold md:inline-block text-[15px] lg:text-base">${escape(data.site.title)}</span>` : ``}</a> ${data.site.nav ? `<nav class="flex flex-wrap items-center space-x-6 text-sm font-medium">${each(data.site.nav, (navItem) => {
|
||||
return `<a${add_attribute("href", navItem.url, 0)}>${escape(navItem.name)} </a>`;
|
||||
})} ${data.site.i18n && data.site.i18n.locales && Object.keys(data.site.i18n.locales).length > 1 ? `${validate_component(Root, "DropdownMenu.Root").$$render($$result, {}, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Trigger, "DropdownMenu.Trigger").$$render($$result, {}, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Button, "Button").$$render($$result, { variant: "outline", size: "sm" }, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Languages$1, "Languages").$$render($$result, { size: 14, class: "mr-2" }, {}, {})} ${escape(defaultLocaleValue)}`;
|
||||
}
|
||||
})}`;
|
||||
}
|
||||
})} ${validate_component(Dropdown_menu_content, "DropdownMenu.Content").$$render($$result, {}, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Group, "DropdownMenu.Group").$$render($$result, {}, {}, {
|
||||
default: () => {
|
||||
return `${each(Object.entries(allLocales), ([key, value]) => {
|
||||
return `${validate_component(Dropdown_menu_item, "DropdownMenu.Item").$$render($$result, {}, {}, {
|
||||
default: () => {
|
||||
return `${escape(value)}`;
|
||||
}
|
||||
})}`;
|
||||
})}`;
|
||||
}
|
||||
})}`;
|
||||
}
|
||||
})}`;
|
||||
}
|
||||
})}` : ``}</nav>` : ``}</div></div></header>`;
|
||||
});
|
||||
const Layout = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let { data } = $$props;
|
||||
if ($$props.data === void 0 && $$bindings.data && data !== void 0)
|
||||
$$bindings.data(data);
|
||||
return `${data.showNav ? `${validate_component(Nav, "Nav").$$render($$result, { data }, {}, {})}` : ``} ${$$result.head += `<!-- HEAD_svelte-3shchj_START -->${$$result.title = `<title>${escape(data.site.title)}</title>`, ""}${each(Object.entries(data.site.metaTags), ([key, value]) => {
|
||||
return `<meta${add_attribute("name", key, 0)}${add_attribute("content", value, 0)}>`;
|
||||
})}<!-- HEAD_svelte-3shchj_END -->`, ""} ${slots.default ? slots.default({}) : ``} ${data.showNav && !!data.site.footerHTML ? `<footer class="py-6 z-10 md:px-8 md:py-0"><div class="container relative flex flex-col pl-0 items-center justify-center max-w-[890px] gap-4 md:h-24 md:flex-row"><div class="flex flex-col items-center gap-4 px-8 md:flex-row md:gap-2 md:px-0"><p class="text-center text-sm leading-loose text-muted-foreground md:text-left"><!-- HTML_TAG_START -->${data.site.footerHTML}<!-- HTML_TAG_END --></p></div></div></footer>` : ``}`;
|
||||
});
|
||||
|
||||
export { Layout as default };
|
||||
//# sourceMappingURL=_layout.svelte-54f19014.js.map
|
||||
@@ -1,53 +0,0 @@
|
||||
import { c as create_ssr_component, f as subscribe, b as add_attribute, v as validate_component, a as each, e as escape } from './ssr-3edfa391.js';
|
||||
import { M as Monitor } from './monitor-5e0b1df7.js';
|
||||
import { C as Card, a as Card_content } from './card-content-6ec0cd90.js';
|
||||
import 'clsx';
|
||||
import './Icon-36e7f051.js';
|
||||
import { l } from './client-7218de37.js';
|
||||
import { p as page } from './stores-d0ec6658.js';
|
||||
import './index2-c5c18f89.js';
|
||||
import './events-b3d49719.js';
|
||||
import './index3-c13390c6.js';
|
||||
import 'tailwind-variants';
|
||||
import 'tailwind-merge';
|
||||
|
||||
const Page = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let $$unsubscribe_page;
|
||||
$$unsubscribe_page = subscribe(page, (value) => value);
|
||||
let element;
|
||||
let { data } = $$props;
|
||||
if ($$props.data === void 0 && $$bindings.data && data !== void 0)
|
||||
$$bindings.data(data);
|
||||
$$unsubscribe_page();
|
||||
return `${data.monitors.length > 0 ? `<section class="w-fit p-0"${add_attribute("this", element, 0)}>${validate_component(Card, "Card.Root").$$render($$result, { class: "w-[580px] border-0 shadow-none" }, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Card_content, "Card.Content").$$render($$result, { class: "p-0 monitors-card " }, {}, {
|
||||
default: () => {
|
||||
return `${each(data.monitors, (monitor) => {
|
||||
return `${validate_component(Monitor, "Monitor").$$render(
|
||||
$$result,
|
||||
{
|
||||
monitor,
|
||||
localTz: data.localTz,
|
||||
lang: data.lang
|
||||
},
|
||||
{},
|
||||
{}
|
||||
)}`;
|
||||
})}`;
|
||||
}
|
||||
})}`;
|
||||
}
|
||||
})}</section>` : `<section class="mx-auto bg-transparent mb-4 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center" id="">${validate_component(Card, "Card.Root").$$render($$result, { class: "mx-auto" }, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Card_content, "Card.Content").$$render($$result, { class: "pt-4" }, {}, {
|
||||
default: () => {
|
||||
return `<h1 class="scroll-m-20 text-2xl font-extrabold tracking-tight lg:text-2xl text-center" data-svelte-h="svelte-1vwlrnd">No Monitor Found.</h1> <p class="mt-3 text-center">${escape(l(data.lang, "root.read_doc_monitor"))} <a href="https://kener.ing/docs#h1add-monitors" target="_blank" class="underline">${escape(l(data.lang, "root.here"))}</a></p>`;
|
||||
}
|
||||
})}`;
|
||||
}
|
||||
})}</section>`}`;
|
||||
});
|
||||
|
||||
export { Page as default };
|
||||
//# sourceMappingURL=_page.svelte-3a830046.js.map
|
||||
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"_page.svelte-3a830046.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/embed-_tag_/_page.svelte.js"],"sourcesContent":["import { c as create_ssr_component, a as subscribe, g as add_attribute, v as validate_component, i as each, h as escape } from \"../../../chunks/ssr.js\";\nimport { M as Monitor } from \"../../../chunks/monitor.js\";\nimport { C as Card, a as Card_content } from \"../../../chunks/card-content.js\";\nimport \"clsx\";\nimport \"dequal\";\nimport \"../../../chunks/Icon.js\";\nimport { l } from \"../../../chunks/client.js\";\nimport { p as page } from \"../../../chunks/stores.js\";\nconst Page = create_ssr_component(($$result, $$props, $$bindings, slots) => {\n let $$unsubscribe_page;\n $$unsubscribe_page = subscribe(page, (value) => value);\n let element;\n let { data } = $$props;\n if ($$props.data === void 0 && $$bindings.data && data !== void 0)\n $$bindings.data(data);\n $$unsubscribe_page();\n return `${data.monitors.length > 0 ? `<section class=\"w-fit p-0\"${add_attribute(\"this\", element, 0)}>${validate_component(Card, \"Card.Root\").$$render($$result, { class: \"w-[580px] border-0 shadow-none\" }, {}, {\n default: () => {\n return `${validate_component(Card_content, \"Card.Content\").$$render($$result, { class: \"p-0 monitors-card \" }, {}, {\n default: () => {\n return `${each(data.monitors, (monitor) => {\n return `${validate_component(Monitor, \"Monitor\").$$render(\n $$result,\n {\n monitor,\n localTz: data.localTz,\n lang: data.lang\n },\n {},\n {}\n )}`;\n })}`;\n }\n })}`;\n }\n })}</section>` : `<section class=\"mx-auto bg-transparent mb-4 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center\" id=\"\">${validate_component(Card, \"Card.Root\").$$render($$result, { class: \"mx-auto\" }, {}, {\n default: () => {\n return `${validate_component(Card_content, \"Card.Content\").$$render($$result, { class: \"pt-4\" }, {}, {\n default: () => {\n return `<h1 class=\"scroll-m-20 text-2xl font-extrabold tracking-tight lg:text-2xl text-center\" data-svelte-h=\"svelte-1vwlrnd\">No Monitor Found.</h1> <p class=\"mt-3 text-center\">${escape(l(data.lang, \"root.read_doc_monitor\"))} <a href=\"https://kener.ing/docs#h1add-monitors\" target=\"_blank\" class=\"underline\">${escape(l(data.lang, \"root.here\"))}</a></p>`;\n }\n })}`;\n }\n })}</section>`}`;\n});\nexport {\n Page as default\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;AAQK,MAAC,IAAI,GAAG,oBAAoB,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,KAAK;AAC5E,EAAE,IAAI,kBAAkB,CAAC;AACzB,EAAE,kBAAkB,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;AACzD,EAAE,IAAI,OAAO,CAAC;AACd,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;AACzB,EAAE,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,UAAU,CAAC,IAAI,IAAI,IAAI,KAAK,KAAK,CAAC;AACnE,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,EAAE,kBAAkB,EAAE,CAAC;AACvB,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,0BAA0B,EAAE,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,EAAE,EAAE,EAAE;AACnN,IAAI,OAAO,EAAE,MAAM;AACnB,MAAM,OAAO,CAAC,EAAE,kBAAkB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,EAAE,EAAE;AACzH,QAAQ,OAAO,EAAE,MAAM;AACvB,UAAU,OAAO,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,KAAK;AACrD,YAAY,OAAO,CAAC,EAAE,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,QAAQ;AACrE,cAAc,QAAQ;AACtB,cAAc;AACd,gBAAgB,OAAO;AACvB,gBAAgB,OAAO,EAAE,IAAI,CAAC,OAAO;AACrC,gBAAgB,IAAI,EAAE,IAAI,CAAC,IAAI;AAC/B,eAAe;AACf,cAAc,EAAE;AAChB,cAAc,EAAE;AAChB,aAAa,CAAC,CAAC,CAAC;AAChB,WAAW,CAAC,CAAC,CAAC,CAAC;AACf,SAAS;AACT,OAAO,CAAC,CAAC,CAAC,CAAC;AACX,KAAK;AACL,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,wHAAwH,EAAE,kBAAkB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE;AACjO,IAAI,OAAO,EAAE,MAAM;AACnB,MAAM,OAAO,CAAC,EAAE,kBAAkB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE;AAC3G,QAAQ,OAAO,EAAE,MAAM;AACvB,UAAU,OAAO,CAAC,yKAAyK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,uBAAuB,CAAC,CAAC,CAAC,mFAAmF,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC5W,SAAS;AACT,OAAO,CAAC,CAAC,CAAC,CAAC;AACX,KAAK;AACL,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;;;;"}
|
||||
@@ -1,113 +0,0 @@
|
||||
import { c as create_ssr_component, e as escape, v as validate_component, a as each, d as compute_rest_props, f as subscribe, g as spread, i as escape_object } from './ssr-3edfa391.js';
|
||||
import { I as Incident } from './incident-1b62c429.js';
|
||||
import { c as cn, p as setCtx, q as getAttrs } from './Icon-36e7f051.js';
|
||||
import { l, s as summaryTime, B as Badge } from './client-7218de37.js';
|
||||
import './card-content-6ec0cd90.js';
|
||||
import 'clsx';
|
||||
import './helpers-0acb6e43.js';
|
||||
import 'moment';
|
||||
import './index3-c13390c6.js';
|
||||
import 'tailwind-variants';
|
||||
import './chevron-down-10a1d022.js';
|
||||
import './index2-c5c18f89.js';
|
||||
import 'tailwind-merge';
|
||||
|
||||
const Separator$1 = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let builder;
|
||||
let $$restProps = compute_rest_props($$props, ["orientation", "decorative", "asChild"]);
|
||||
let $root, $$unsubscribe_root;
|
||||
let { orientation = "horizontal" } = $$props;
|
||||
let { decorative = true } = $$props;
|
||||
let { asChild = false } = $$props;
|
||||
const { elements: { root }, updateOption } = setCtx({ orientation, decorative });
|
||||
$$unsubscribe_root = subscribe(root, (value) => $root = value);
|
||||
const attrs = getAttrs("root");
|
||||
if ($$props.orientation === void 0 && $$bindings.orientation && orientation !== void 0)
|
||||
$$bindings.orientation(orientation);
|
||||
if ($$props.decorative === void 0 && $$bindings.decorative && decorative !== void 0)
|
||||
$$bindings.decorative(decorative);
|
||||
if ($$props.asChild === void 0 && $$bindings.asChild && asChild !== void 0)
|
||||
$$bindings.asChild(asChild);
|
||||
{
|
||||
updateOption("orientation", orientation);
|
||||
}
|
||||
{
|
||||
updateOption("decorative", decorative);
|
||||
}
|
||||
builder = $root;
|
||||
$$unsubscribe_root();
|
||||
return `${asChild ? `${slots.default ? slots.default({ builder, attrs }) : ``}` : `<div${spread([escape_object(builder), escape_object($$restProps), escape_object(attrs)], {})}></div>`}`;
|
||||
});
|
||||
const Separator = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let $$restProps = compute_rest_props($$props, ["class", "orientation", "decorative"]);
|
||||
let { class: className = void 0 } = $$props;
|
||||
let { orientation = "horizontal" } = $$props;
|
||||
let { decorative = void 0 } = $$props;
|
||||
if ($$props.class === void 0 && $$bindings.class && className !== void 0)
|
||||
$$bindings.class(className);
|
||||
if ($$props.orientation === void 0 && $$bindings.orientation && orientation !== void 0)
|
||||
$$bindings.orientation(orientation);
|
||||
if ($$props.decorative === void 0 && $$bindings.decorative && decorative !== void 0)
|
||||
$$bindings.decorative(decorative);
|
||||
return `${validate_component(Separator$1, "SeparatorPrimitive.Root").$$render(
|
||||
$$result,
|
||||
Object.assign(
|
||||
{},
|
||||
{
|
||||
class: cn(
|
||||
"shrink-0 bg-border",
|
||||
orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
|
||||
className
|
||||
)
|
||||
},
|
||||
{ orientation },
|
||||
{ decorative },
|
||||
$$restProps
|
||||
),
|
||||
{},
|
||||
{}
|
||||
)}`;
|
||||
});
|
||||
const Page = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let { data } = $$props;
|
||||
if ($$props.data === void 0 && $$bindings.data && data !== void 0)
|
||||
$$bindings.data(data);
|
||||
return `${$$result.head += `<!-- HEAD_svelte-i3y6kb_START -->${$$result.title = `<title> ${escape(data.monitor.name)} - ${escape(l(data.lang, "root.incidents"))} </title>`, ""}<!-- HEAD_svelte-i3y6kb_END -->`, ""} <section class="mx-auto flex w-full max-w-4xl flex-1 flex-col items-start justify-center"><div class="mx-auto max-w-screen-xl px-4 pt-32 pb-16 lg:flex lg:items-center"><div class="mx-auto max-w-3xl text-center blurry-bg"><h1 class="bg-gradient-to-r from-green-300 via-blue-500 to-purple-600 bg-clip-text text-5xl font-extrabold text-transparent leading-snug">${escape(data.monitor.name)}</h1> <p class="mx-auto mt-4 max-w-xl sm:text-xl"><!-- HTML_TAG_START -->${data.monitor.description}<!-- HTML_TAG_END --></p></div></div></section> <section class="mx-auto flex-1 mt-8 flex-col mb-4 flex w-full"><div class="container"><h1 class="mb-4 text-2xl font-bold leading-none">${validate_component(Badge, "Badge").$$render($$result, { variant: "outline" }, {}, {
|
||||
default: () => {
|
||||
return `${escape(l(data.lang, "root.active_incidents"))}`;
|
||||
}
|
||||
})}</h1> ${data.activeIncidents.length > 0 ? `${each(data.activeIncidents, (incident, i) => {
|
||||
return `${validate_component(Incident, "Incident").$$render(
|
||||
$$result,
|
||||
{
|
||||
incident,
|
||||
state: i == 0 ? "open" : "close",
|
||||
variant: "title+body+comments",
|
||||
monitor: data.monitor,
|
||||
lang: data.lang
|
||||
},
|
||||
{},
|
||||
{}
|
||||
)}`;
|
||||
})}` : `<div class="flex items-center justify-left"><p class="text-base font-semibold">${escape(l(data.lang, "root.no_active_incident"))}</p></div>`}</div></section> ${validate_component(Separator, "Separator").$$render($$result, { class: "container mb-4 w-[400px]" }, {}, {})} <section class="mx-auto flex-1 mt-8 flex-col mb-4 flex w-full"><div class="container"><h1 class="mb-4 text-2xl font-bold leading-none">${validate_component(Badge, "Badge").$$render($$result, { variant: "outline" }, {}, {
|
||||
default: () => {
|
||||
return `${escape(l(data.lang, "root.recent_incidents"))} - ${escape(summaryTime(data.lang, `Last ${data.site.github.incidentSince} hours`))}`;
|
||||
}
|
||||
})}</h1> ${data.pastIncidents.length > 0 ? `${each(data.pastIncidents, (incident) => {
|
||||
return `${validate_component(Incident, "Incident").$$render(
|
||||
$$result,
|
||||
{
|
||||
incident,
|
||||
state: "close",
|
||||
variant: "title+body+comments",
|
||||
monitor: data.monitor,
|
||||
lang: data.lang
|
||||
},
|
||||
{},
|
||||
{}
|
||||
)}`;
|
||||
})}` : `<div class="flex items-center justify-left"><p class="text-base font-semibold">${escape(l(data.lang, "root.no_recent_incident"))}</p></div>`}</div></section>`;
|
||||
});
|
||||
|
||||
export { Page as default };
|
||||
//# sourceMappingURL=_page.svelte-5e89030c.js.map
|
||||
@@ -1,78 +0,0 @@
|
||||
import { c as create_ssr_component, e as escape, v as validate_component, a as each } from './ssr-3edfa391.js';
|
||||
import { M as Monitor } from './monitor-5e0b1df7.js';
|
||||
import { C as Card, a as Card_content } from './card-content-6ec0cd90.js';
|
||||
import 'clsx';
|
||||
import { I as Incident } from './incident-1b62c429.js';
|
||||
import './Icon-36e7f051.js';
|
||||
import { l, B as Badge } from './client-7218de37.js';
|
||||
import './index2-c5c18f89.js';
|
||||
import './events-b3d49719.js';
|
||||
import './index3-c13390c6.js';
|
||||
import 'tailwind-variants';
|
||||
import './helpers-0acb6e43.js';
|
||||
import 'moment';
|
||||
import './chevron-down-10a1d022.js';
|
||||
import 'tailwind-merge';
|
||||
|
||||
const Page = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let { data } = $$props;
|
||||
let hasActiveIncidents = data.openIncidents.length > 0;
|
||||
if ($$props.data === void 0 && $$bindings.data && data !== void 0)
|
||||
$$bindings.data(data);
|
||||
return `${$$result.head += `<!-- HEAD_svelte-11ekmvk_START -->${data.monitors.length > 0 ? `${$$result.title = `<title>${escape(data.monitors[0].name)} Monitor Page</title>`, ""}` : ``}<!-- HEAD_svelte-11ekmvk_END -->`, ""} <div class="mt-32"></div> ${hasActiveIncidents ? `<section class="mx-auto bg-transparent mb-4 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center" id=""><div class="grid w-full grid-cols-2 gap-4"><div class="col-span-2 md:col-span-1 text-center md:text-left">${validate_component(Badge, "Badge").$$render($$result, { variant: "outline" }, {}, {
|
||||
default: () => {
|
||||
return `${escape(l(data.lang, "root.ongoing_incidents"))}`;
|
||||
}
|
||||
})}</div></div></section> <section class="mx-auto mb-8 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center" id="">${each(data.openIncidents, (incident, i) => {
|
||||
return `${validate_component(Incident, "Incident").$$render(
|
||||
$$result,
|
||||
{
|
||||
incident,
|
||||
state: "close",
|
||||
variant: "title+body+comments+monitor",
|
||||
monitor: incident.monitor,
|
||||
lang: data.lang
|
||||
},
|
||||
{},
|
||||
{}
|
||||
)}`;
|
||||
})}</section>` : ``} ${data.monitors.length > 0 ? `<section class="mx-auto bg-transparent mb-4 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center" id=""><div class="grid w-full grid-cols-2 gap-4"><div class="col-span-2 md:col-span-1 text-center md:text-left">${validate_component(Badge, "Badge").$$render($$result, { class: "", variant: "outline" }, {}, {
|
||||
default: () => {
|
||||
return `${escape(l(data.lang, "root.availability_per_component"))}`;
|
||||
}
|
||||
})}</div> <div class="col-span-2 md:col-span-1 text-center md:text-right">${validate_component(Badge, "Badge").$$render($$result, { variant: "outline" }, {}, {
|
||||
default: () => {
|
||||
return `<span class="w-[8px] h-[8px] inline-flex rounded-full bg-api-up opacity-75 mr-1"></span> <span class="mr-3">${escape(l(data.lang, "statuses.UP"))}</span> <span class="w-[8px] h-[8px] inline-flex rounded-full bg-api-degraded opacity-75 mr-1"></span> <span class="mr-3">${escape(l(data.lang, "statuses.DEGRADED"))}</span> <span class="w-[8px] h-[8px] inline-flex rounded-full bg-api-down opacity-75 mr-1"></span> <span class="mr-3">${escape(l(data.lang, "statuses.DOWN"))}</span>`;
|
||||
}
|
||||
})}</div></div></section> <section class="mx-auto backdrop-blur-[2px] mb-8 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center">${validate_component(Card, "Card.Root").$$render($$result, { class: "w-full" }, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Card_content, "Card.Content").$$render($$result, { class: "p-0 monitors-card" }, {}, {
|
||||
default: () => {
|
||||
return `${each(data.monitors, (monitor) => {
|
||||
return `${validate_component(Monitor, "Monitor").$$render(
|
||||
$$result,
|
||||
{
|
||||
monitor,
|
||||
localTz: data.localTz,
|
||||
lang: data.lang
|
||||
},
|
||||
{},
|
||||
{}
|
||||
)}`;
|
||||
})}`;
|
||||
}
|
||||
})}`;
|
||||
}
|
||||
})}</section>` : `<section class="mx-auto bg-transparent mb-4 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center" id="">${validate_component(Card, "Card.Root").$$render($$result, { class: "mx-auto" }, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Card_content, "Card.Content").$$render($$result, { class: "pt-4" }, {}, {
|
||||
default: () => {
|
||||
return `<h1 class="scroll-m-20 text-2xl font-extrabold tracking-tight lg:text-2xl text-center">${escape(l(data.lang, "root.no_monitors"))}</h1> <p class="mt-3 text-center">${escape(l(data.lang, "root.read_doc_monitor"))} <a href="https://kener.ing/docs#h1add-monitors" target="_blank" class="underline">${escape(l(data.lang, "root.here"))}</a></p>`;
|
||||
}
|
||||
})}`;
|
||||
}
|
||||
})}</section>`}`;
|
||||
});
|
||||
|
||||
export { Page as default };
|
||||
//# sourceMappingURL=_page.svelte-ce6dfce4.js.map
|
||||
@@ -1,328 +0,0 @@
|
||||
import { c as create_ssr_component, v as validate_component, a as each, e as escape, d as compute_rest_props, f as subscribe, g as spread, i as escape_object } from './ssr-3edfa391.js';
|
||||
import { marked } from 'marked';
|
||||
import { C as Card, a as Card_content } from './card-content-6ec0cd90.js';
|
||||
import 'clsx';
|
||||
import { c as cn, h as setCtx$4, j as setItem, k as getCtx$3, l as getTrigger, m as getContent$1, n as getAttrs$5, o as cubicOut } from './Icon-36e7f051.js';
|
||||
import { c as createDispatcher } from './events-b3d49719.js';
|
||||
import { C as ChevronDown } from './chevron-down-10a1d022.js';
|
||||
import './index2-c5c18f89.js';
|
||||
import 'tailwind-merge';
|
||||
|
||||
const Accordion = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let builder;
|
||||
let $$restProps = compute_rest_props($$props, ["multiple", "value", "onValueChange", "disabled", "asChild"]);
|
||||
let $root, $$unsubscribe_root;
|
||||
let { multiple = false } = $$props;
|
||||
let { value = void 0 } = $$props;
|
||||
let { onValueChange = void 0 } = $$props;
|
||||
let { disabled = false } = $$props;
|
||||
let { asChild = false } = $$props;
|
||||
const { elements: { root }, states: { value: localValue }, updateOption } = setCtx$4({
|
||||
multiple,
|
||||
disabled,
|
||||
defaultValue: value,
|
||||
onValueChange: ({ next }) => {
|
||||
if (value !== next) {
|
||||
onValueChange?.(next);
|
||||
value = next;
|
||||
}
|
||||
return next;
|
||||
}
|
||||
});
|
||||
$$unsubscribe_root = subscribe(root, (value2) => $root = value2);
|
||||
const attrs = getAttrs$5("root");
|
||||
if ($$props.multiple === void 0 && $$bindings.multiple && multiple !== void 0)
|
||||
$$bindings.multiple(multiple);
|
||||
if ($$props.value === void 0 && $$bindings.value && value !== void 0)
|
||||
$$bindings.value(value);
|
||||
if ($$props.onValueChange === void 0 && $$bindings.onValueChange && onValueChange !== void 0)
|
||||
$$bindings.onValueChange(onValueChange);
|
||||
if ($$props.disabled === void 0 && $$bindings.disabled && disabled !== void 0)
|
||||
$$bindings.disabled(disabled);
|
||||
if ($$props.asChild === void 0 && $$bindings.asChild && asChild !== void 0)
|
||||
$$bindings.asChild(asChild);
|
||||
{
|
||||
localValue.set(value);
|
||||
}
|
||||
{
|
||||
updateOption("multiple", multiple);
|
||||
}
|
||||
{
|
||||
updateOption("disabled", disabled);
|
||||
}
|
||||
builder = $root;
|
||||
$$unsubscribe_root();
|
||||
return `${asChild ? `${slots.default ? slots.default({ builder, attrs }) : ``}` : `<div${spread([escape_object(builder), escape_object($$restProps), escape_object(attrs)], {})}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>`}`;
|
||||
});
|
||||
const AccordionItem = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let builder;
|
||||
let $$restProps = compute_rest_props($$props, ["value", "disabled", "asChild"]);
|
||||
let $item, $$unsubscribe_item;
|
||||
let { value } = $$props;
|
||||
let { disabled = void 0 } = $$props;
|
||||
let { asChild = false } = $$props;
|
||||
const { item, props } = setItem({ value, disabled });
|
||||
$$unsubscribe_item = subscribe(item, (value2) => $item = value2);
|
||||
const attrs = getAttrs$5("item");
|
||||
if ($$props.value === void 0 && $$bindings.value && value !== void 0)
|
||||
$$bindings.value(value);
|
||||
if ($$props.disabled === void 0 && $$bindings.disabled && disabled !== void 0)
|
||||
$$bindings.disabled(disabled);
|
||||
if ($$props.asChild === void 0 && $$bindings.asChild && asChild !== void 0)
|
||||
$$bindings.asChild(asChild);
|
||||
builder = $item(props);
|
||||
$$unsubscribe_item();
|
||||
return `${asChild ? `${slots.default ? slots.default({ builder, attrs }) : ``}` : `<div${spread([escape_object(builder), escape_object($$restProps), escape_object(attrs)], {})}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>`}`;
|
||||
});
|
||||
const AccordionHeader = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let builder;
|
||||
let $$restProps = compute_rest_props($$props, ["level", "asChild"]);
|
||||
let $header, $$unsubscribe_header;
|
||||
let { level = 3 } = $$props;
|
||||
let { asChild = false } = $$props;
|
||||
const { elements: { heading: header } } = getCtx$3();
|
||||
$$unsubscribe_header = subscribe(header, (value) => $header = value);
|
||||
const attrs = getAttrs$5("header");
|
||||
if ($$props.level === void 0 && $$bindings.level && level !== void 0)
|
||||
$$bindings.level(level);
|
||||
if ($$props.asChild === void 0 && $$bindings.asChild && asChild !== void 0)
|
||||
$$bindings.asChild(asChild);
|
||||
builder = $header(level);
|
||||
$$unsubscribe_header();
|
||||
return `${asChild ? `${slots.default ? slots.default({ builder, attrs }) : ``}` : `<div${spread([escape_object(builder), escape_object($$restProps), escape_object(attrs)], {})}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>`}`;
|
||||
});
|
||||
const AccordionTrigger = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let builder;
|
||||
let $$restProps = compute_rest_props($$props, ["asChild"]);
|
||||
let $trigger, $$unsubscribe_trigger;
|
||||
let { asChild = false } = $$props;
|
||||
const { trigger, props } = getTrigger();
|
||||
$$unsubscribe_trigger = subscribe(trigger, (value) => $trigger = value);
|
||||
createDispatcher();
|
||||
const attrs = getAttrs$5("trigger");
|
||||
if ($$props.asChild === void 0 && $$bindings.asChild && asChild !== void 0)
|
||||
$$bindings.asChild(asChild);
|
||||
builder = $trigger(props);
|
||||
$$unsubscribe_trigger();
|
||||
return `${asChild ? `${slots.default ? slots.default({ builder, attrs }) : ``}` : `<button${spread(
|
||||
[
|
||||
escape_object(builder),
|
||||
{ type: "button" },
|
||||
escape_object($$restProps),
|
||||
escape_object(attrs)
|
||||
],
|
||||
{}
|
||||
)}>${slots.default ? slots.default({ builder, attrs }) : ``}</button>`}`;
|
||||
});
|
||||
const AccordionContent = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let builder;
|
||||
let $$restProps = compute_rest_props($$props, [
|
||||
"transition",
|
||||
"transitionConfig",
|
||||
"inTransition",
|
||||
"inTransitionConfig",
|
||||
"outTransition",
|
||||
"outTransitionConfig",
|
||||
"asChild"
|
||||
]);
|
||||
let $content, $$unsubscribe_content;
|
||||
let $isSelected, $$unsubscribe_isSelected;
|
||||
let { transition = void 0 } = $$props;
|
||||
let { transitionConfig = void 0 } = $$props;
|
||||
let { inTransition = void 0 } = $$props;
|
||||
let { inTransitionConfig = void 0 } = $$props;
|
||||
let { outTransition = void 0 } = $$props;
|
||||
let { outTransitionConfig = void 0 } = $$props;
|
||||
let { asChild = false } = $$props;
|
||||
const { content, isSelected, props } = getContent$1();
|
||||
$$unsubscribe_content = subscribe(content, (value) => $content = value);
|
||||
$$unsubscribe_isSelected = subscribe(isSelected, (value) => $isSelected = value);
|
||||
const attrs = getAttrs$5("content");
|
||||
if ($$props.transition === void 0 && $$bindings.transition && transition !== void 0)
|
||||
$$bindings.transition(transition);
|
||||
if ($$props.transitionConfig === void 0 && $$bindings.transitionConfig && transitionConfig !== void 0)
|
||||
$$bindings.transitionConfig(transitionConfig);
|
||||
if ($$props.inTransition === void 0 && $$bindings.inTransition && inTransition !== void 0)
|
||||
$$bindings.inTransition(inTransition);
|
||||
if ($$props.inTransitionConfig === void 0 && $$bindings.inTransitionConfig && inTransitionConfig !== void 0)
|
||||
$$bindings.inTransitionConfig(inTransitionConfig);
|
||||
if ($$props.outTransition === void 0 && $$bindings.outTransition && outTransition !== void 0)
|
||||
$$bindings.outTransition(outTransition);
|
||||
if ($$props.outTransitionConfig === void 0 && $$bindings.outTransitionConfig && outTransitionConfig !== void 0)
|
||||
$$bindings.outTransitionConfig(outTransitionConfig);
|
||||
if ($$props.asChild === void 0 && $$bindings.asChild && asChild !== void 0)
|
||||
$$bindings.asChild(asChild);
|
||||
builder = $content(props);
|
||||
$$unsubscribe_content();
|
||||
$$unsubscribe_isSelected();
|
||||
return `${asChild && $isSelected(props) ? `${slots.default ? slots.default({ builder, attrs }) : ``}` : `${transition && $isSelected(props) ? `<div${spread([escape_object(builder), escape_object($$restProps), escape_object(attrs)], {})}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>` : `${inTransition && outTransition && $isSelected(props) ? `<div${spread([escape_object(builder), escape_object($$restProps), escape_object(attrs)], {})}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>` : `${inTransition && $isSelected(props) ? `<div${spread(
|
||||
[
|
||||
escape_object(builder),
|
||||
escape_object($$restProps),
|
||||
escape_object(attrs)
|
||||
],
|
||||
{}
|
||||
)}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>` : `${outTransition && $isSelected(props) ? `<div${spread(
|
||||
[
|
||||
escape_object(builder),
|
||||
escape_object($$restProps),
|
||||
escape_object(attrs)
|
||||
],
|
||||
{}
|
||||
)}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>` : `${$isSelected(props) ? `<div${spread(
|
||||
[
|
||||
escape_object(builder),
|
||||
escape_object($$restProps),
|
||||
escape_object(attrs)
|
||||
],
|
||||
{}
|
||||
)}>${slots.default ? slots.default({ builder, attrs }) : ``}</div>` : ``}`}`}`}`}`}`;
|
||||
});
|
||||
function slide(node, { delay = 0, duration = 400, easing = cubicOut, axis = "y" } = {}) {
|
||||
const style = getComputedStyle(node);
|
||||
const opacity = +style.opacity;
|
||||
const primary_property = axis === "y" ? "height" : "width";
|
||||
const primary_property_value = parseFloat(style[primary_property]);
|
||||
const secondary_properties = axis === "y" ? ["top", "bottom"] : ["left", "right"];
|
||||
const capitalized_secondary_properties = secondary_properties.map(
|
||||
(e) => `${e[0].toUpperCase()}${e.slice(1)}`
|
||||
);
|
||||
const padding_start_value = parseFloat(style[`padding${capitalized_secondary_properties[0]}`]);
|
||||
const padding_end_value = parseFloat(style[`padding${capitalized_secondary_properties[1]}`]);
|
||||
const margin_start_value = parseFloat(style[`margin${capitalized_secondary_properties[0]}`]);
|
||||
const margin_end_value = parseFloat(style[`margin${capitalized_secondary_properties[1]}`]);
|
||||
const border_width_start_value = parseFloat(
|
||||
style[`border${capitalized_secondary_properties[0]}Width`]
|
||||
);
|
||||
const border_width_end_value = parseFloat(
|
||||
style[`border${capitalized_secondary_properties[1]}Width`]
|
||||
);
|
||||
return {
|
||||
delay,
|
||||
duration,
|
||||
easing,
|
||||
css: (t) => `overflow: hidden;opacity: ${Math.min(t * 20, 1) * opacity};${primary_property}: ${t * primary_property_value}px;padding-${secondary_properties[0]}: ${t * padding_start_value}px;padding-${secondary_properties[1]}: ${t * padding_end_value}px;margin-${secondary_properties[0]}: ${t * margin_start_value}px;margin-${secondary_properties[1]}: ${t * margin_end_value}px;border-${secondary_properties[0]}-width: ${t * border_width_start_value}px;border-${secondary_properties[1]}-width: ${t * border_width_end_value}px;`
|
||||
};
|
||||
}
|
||||
const Accordion_content = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let $$restProps = compute_rest_props($$props, ["class", "transition", "transitionConfig"]);
|
||||
let { class: className = void 0 } = $$props;
|
||||
let { transition = slide } = $$props;
|
||||
let { transitionConfig = { duration: 200 } } = $$props;
|
||||
if ($$props.class === void 0 && $$bindings.class && className !== void 0)
|
||||
$$bindings.class(className);
|
||||
if ($$props.transition === void 0 && $$bindings.transition && transition !== void 0)
|
||||
$$bindings.transition(transition);
|
||||
if ($$props.transitionConfig === void 0 && $$bindings.transitionConfig && transitionConfig !== void 0)
|
||||
$$bindings.transitionConfig(transitionConfig);
|
||||
return `${validate_component(AccordionContent, "AccordionPrimitive.Content").$$render(
|
||||
$$result,
|
||||
Object.assign(
|
||||
{},
|
||||
{
|
||||
class: cn("overflow-hidden text-sm transition-all", className)
|
||||
},
|
||||
{ transition },
|
||||
{ transitionConfig },
|
||||
$$restProps
|
||||
),
|
||||
{},
|
||||
{
|
||||
default: () => {
|
||||
return `<div class="pb-4 pt-0">${slots.default ? slots.default({}) : ``}</div>`;
|
||||
}
|
||||
}
|
||||
)}`;
|
||||
});
|
||||
const Accordion_item = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let $$restProps = compute_rest_props($$props, ["class", "value"]);
|
||||
let { class: className = void 0 } = $$props;
|
||||
let { value } = $$props;
|
||||
if ($$props.class === void 0 && $$bindings.class && className !== void 0)
|
||||
$$bindings.class(className);
|
||||
if ($$props.value === void 0 && $$bindings.value && value !== void 0)
|
||||
$$bindings.value(value);
|
||||
return `${validate_component(AccordionItem, "AccordionPrimitive.Item").$$render($$result, Object.assign({}, { value }, { class: cn("border-b", className) }, $$restProps), {}, {
|
||||
default: () => {
|
||||
return `${slots.default ? slots.default({}) : ``}`;
|
||||
}
|
||||
})}`;
|
||||
});
|
||||
const Accordion_trigger = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let $$restProps = compute_rest_props($$props, ["class", "level"]);
|
||||
let { class: className = void 0 } = $$props;
|
||||
let { level = 3 } = $$props;
|
||||
if ($$props.class === void 0 && $$bindings.class && className !== void 0)
|
||||
$$bindings.class(className);
|
||||
if ($$props.level === void 0 && $$bindings.level && level !== void 0)
|
||||
$$bindings.level(level);
|
||||
return `${validate_component(AccordionHeader, "AccordionPrimitive.Header").$$render($$result, { level, class: "flex" }, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(AccordionTrigger, "AccordionPrimitive.Trigger").$$render(
|
||||
$$result,
|
||||
Object.assign(
|
||||
{},
|
||||
{
|
||||
class: cn("flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180", className)
|
||||
},
|
||||
$$restProps
|
||||
),
|
||||
{},
|
||||
{
|
||||
default: () => {
|
||||
return `${slots.default ? slots.default({}) : ``} ${validate_component(ChevronDown, "ChevronDown").$$render(
|
||||
$$result,
|
||||
{
|
||||
class: "h-4 w-4 transition-transform duration-200"
|
||||
},
|
||||
{},
|
||||
{}
|
||||
)}`;
|
||||
}
|
||||
}
|
||||
)}`;
|
||||
}
|
||||
})}`;
|
||||
});
|
||||
const Root = Accordion;
|
||||
const Page = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let { data } = $$props;
|
||||
let html = marked.parse(data.md);
|
||||
let sideBar = [];
|
||||
if ($$props.data === void 0 && $$bindings.data && data !== void 0)
|
||||
$$bindings.data(data);
|
||||
return `${$$result.head += `<!-- HEAD_svelte-tjl0wq_START -->${$$result.title = `<title>
|
||||
Kener Documentation
|
||||
</title>`, ""}<!-- HEAD_svelte-tjl0wq_END -->`, ""} <section class="mx-auto md:container rounded-3xl scroll-smooth mt-8">${validate_component(Card, "Card.Root").$$render($$result, {}, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Card_content, "Card.Content").$$render($$result, { class: "px-1" }, {}, {
|
||||
default: () => {
|
||||
return `<div class="grid grid-cols-5 gap-4"><div class="col-span-5 md:col-span-1 pt-2 hidden md:block pr-1 border-r-2 border-secondary sticky top-0 overflow-y-auto max-h-screen">${each(sideBar, (item) => {
|
||||
return `${validate_component(Root, "Accordion.Root").$$render($$result, {}, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Accordion_item, "Accordion.Item").$$render($$result, { value: item.id }, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Accordion_trigger, "Accordion.Trigger").$$render($$result, { class: "text-sm font-semibold pl-2 pr-3" }, {}, {
|
||||
default: () => {
|
||||
return `<a href="${"#" + escape(item.id, true)}" class="sidebar-a">${escape(item.text)}</a> `;
|
||||
}
|
||||
})} ${validate_component(Accordion_content, "Accordion.Content").$$render($$result, {}, {}, {
|
||||
default: () => {
|
||||
return ` <ul class="text-sm font-medium pl-6">${each(item.children, (child) => {
|
||||
return `<li class="w-full py-2"><a href="${"#" + escape(child.id, true)}" class="sidebar-a">${escape(child.text)}</a> </li>`;
|
||||
})}</ul> `;
|
||||
}
|
||||
})} `;
|
||||
}
|
||||
})} `;
|
||||
}
|
||||
})}`;
|
||||
})}</div> <div class="col-span-5 md:col-span-4"><div class="pt-6 p-0 md:p-10 "><article id="markdown" class="prose prose-stone max-w-none dark:prose-invert dark:prose-pre:bg-neutral-900 prose-code:py-[0.2rem] prose-code:font-normal prose-code:font-mono prose-code:text-sm prose-code:rounded"><!-- HTML_TAG_START -->${html}<!-- HTML_TAG_END --></article></div></div></div>`;
|
||||
}
|
||||
})}`;
|
||||
}
|
||||
})} </section>`;
|
||||
});
|
||||
|
||||
export { Page as default };
|
||||
//# sourceMappingURL=_page.svelte-d381d79d.js.map
|
||||
@@ -1,83 +0,0 @@
|
||||
import { c as create_ssr_component, f as subscribe, e as escape, b as add_attribute, v as validate_component, a as each } from './ssr-3edfa391.js';
|
||||
import { M as Monitor } from './monitor-5e0b1df7.js';
|
||||
import { C as Card, a as Card_content } from './card-content-6ec0cd90.js';
|
||||
import 'clsx';
|
||||
import { I as Incident } from './incident-1b62c429.js';
|
||||
import './Icon-36e7f051.js';
|
||||
import { l, B as Badge } from './client-7218de37.js';
|
||||
import { p as page } from './stores-d0ec6658.js';
|
||||
import './index2-c5c18f89.js';
|
||||
import './events-b3d49719.js';
|
||||
import './index3-c13390c6.js';
|
||||
import 'tailwind-variants';
|
||||
import './helpers-0acb6e43.js';
|
||||
import 'moment';
|
||||
import './chevron-down-10a1d022.js';
|
||||
import 'tailwind-merge';
|
||||
|
||||
const Page = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let $page, $$unsubscribe_page;
|
||||
$$unsubscribe_page = subscribe(page, (value) => $page = value);
|
||||
let { data } = $$props;
|
||||
let category = data.site.categories.find((c) => c.name === $page.params.category);
|
||||
let hasActiveIncidents = data.openIncidents.length > 0;
|
||||
if ($$props.data === void 0 && $$bindings.data && data !== void 0)
|
||||
$$bindings.data(data);
|
||||
$$unsubscribe_page();
|
||||
return `${$$result.head += `<!-- HEAD_svelte-11js0ry_START -->${category ? `${$$result.title = `<title>${escape(category.name)} ${escape(l(data.lang, "root.category"))}</title>`, ""} ${category.description ? `<meta name="description"${add_attribute("content", category.description, 0)}>` : ``}` : ``}<!-- HEAD_svelte-11js0ry_END -->`, ""} <div class="mt-32"></div> ${category ? `<section class="mx-auto flex w-full max-w-4xl mb-8 flex-1 flex-col items-start justify-center"><div class="mx-auto max-w-screen-xl px-4 lg:flex lg:items-center"><div class="mx-auto max-w-3xl text-center blurry-bg">${category.name ? `<h1 class="bg-gradient-to-r from-green-300 via-blue-500 to-purple-600 bg-clip-text text-5xl font-extrabold text-transparent leading-snug">${escape(category.name)}</h1>` : ``} ${category.description ? `<p class="mx-auto mt-4 max-w-xl sm:text-xl">${escape(category.description)}</p>` : ``}</div></div></section>` : ``} ${hasActiveIncidents ? `<section class="mx-auto bg-transparent mb-4 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center" id=""><div class="grid w-full grid-cols-2 gap-4"><div class="col-span-2 md:col-span-1 text-center md:text-left">${validate_component(Badge, "Badge").$$render($$result, { variant: "outline" }, {}, {
|
||||
default: () => {
|
||||
return `${escape(l(data.lang, "root.ongoing_incidents"))}`;
|
||||
}
|
||||
})}</div></div></section> <section class="mx-auto backdrop-blur-[2px] mb-8 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center" id="">${each(data.openIncidents, (incident, i) => {
|
||||
return `${validate_component(Incident, "Incident").$$render(
|
||||
$$result,
|
||||
{
|
||||
incident,
|
||||
state: "close",
|
||||
variant: "title+body+comments+monitor",
|
||||
monitor: incident.monitor,
|
||||
lang: data.lang
|
||||
},
|
||||
{},
|
||||
{}
|
||||
)}`;
|
||||
})}</section>` : ``} ${data.monitors.length > 0 ? `<section class="mx-auto bg-transparent mb-4 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center" id=""><div class="grid w-full grid-cols-2 gap-4"><div class="col-span-2 md:col-span-1 text-center md:text-left">${validate_component(Badge, "Badge").$$render($$result, { class: "", variant: "outline" }, {}, {
|
||||
default: () => {
|
||||
return `${escape(l(data.lang, "root.availability_per_component"))}`;
|
||||
}
|
||||
})}</div> <div class="col-span-2 md:col-span-1 text-center md:text-right">${validate_component(Badge, "Badge").$$render($$result, { variant: "outline" }, {}, {
|
||||
default: () => {
|
||||
return `<span class="w-[8px] h-[8px] inline-flex rounded-full bg-api-up opacity-75 mr-1"></span> <span class="mr-3">${escape(l(data.lang, "statuses.UP"))}</span> <span class="w-[8px] h-[8px] inline-flex rounded-full bg-api-degraded opacity-75 mr-1"></span> <span class="mr-3">${escape(l(data.lang, "statuses.DEGRADED"))}</span> <span class="w-[8px] h-[8px] inline-flex rounded-full bg-api-down opacity-75 mr-1"></span> <span class="mr-3">${escape(l(data.lang, "statuses.DOWN"))}</span>`;
|
||||
}
|
||||
})}</div></div></section> <section class="mx-auto backdrop-blur-[2px] mb-8 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center">${validate_component(Card, "Card.Root").$$render($$result, { class: "w-full" }, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Card_content, "Card.Content").$$render($$result, { class: "p-0 monitors-card" }, {}, {
|
||||
default: () => {
|
||||
return `${each(data.monitors, (monitor) => {
|
||||
return `${validate_component(Monitor, "Monitor").$$render(
|
||||
$$result,
|
||||
{
|
||||
monitor,
|
||||
localTz: data.localTz,
|
||||
lang: data.lang
|
||||
},
|
||||
{},
|
||||
{}
|
||||
)}`;
|
||||
})}`;
|
||||
}
|
||||
})}`;
|
||||
}
|
||||
})}</section>` : `<section class="mx-auto bg-transparent mb-4 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center" id="">${validate_component(Card, "Card.Root").$$render($$result, { class: "mx-auto" }, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Card_content, "Card.Content").$$render($$result, { class: "pt-4" }, {}, {
|
||||
default: () => {
|
||||
return `<h1 class="scroll-m-20 text-2xl font-extrabold tracking-tight lg:text-2xl text-center">${escape(l(data.lang, "root.no_monitors"))}</h1> <p class="mt-3 text-center">${escape(l(data.lang, "root.read_doc_monitor"))} <a href="https://kener.ing/docs#h1add-monitors" target="_blank" class="underline">${escape(l(data.lang, "root.here"))}</a></p>`;
|
||||
}
|
||||
})}`;
|
||||
}
|
||||
})}</section>`}`;
|
||||
});
|
||||
|
||||
export { Page as default };
|
||||
//# sourceMappingURL=_page.svelte-eceb8035.js.map
|
||||
@@ -1,88 +0,0 @@
|
||||
import { c as create_ssr_component, b as add_attribute, e as escape, v as validate_component, a as each } from './ssr-3edfa391.js';
|
||||
import { M as Monitor } from './monitor-5e0b1df7.js';
|
||||
import { C as Card, a as Card_content } from './card-content-6ec0cd90.js';
|
||||
import { I as Incident, C as Card_header, a as Card_title, b as Card_description } from './incident-1b62c429.js';
|
||||
import 'clsx';
|
||||
import { b as buttonVariants } from './index3-c13390c6.js';
|
||||
import { l, B as Badge } from './client-7218de37.js';
|
||||
import './Icon-36e7f051.js';
|
||||
import './index2-c5c18f89.js';
|
||||
import 'tailwind-merge';
|
||||
import './events-b3d49719.js';
|
||||
import './helpers-0acb6e43.js';
|
||||
import 'moment';
|
||||
import './chevron-down-10a1d022.js';
|
||||
import 'tailwind-variants';
|
||||
|
||||
const Page = create_ssr_component(($$result, $$props, $$bindings, slots) => {
|
||||
let { data } = $$props;
|
||||
let hasActiveIncidents = data.openIncidents.length > 0;
|
||||
if ($$props.data === void 0 && $$bindings.data && data !== void 0)
|
||||
$$bindings.data(data);
|
||||
return `<div class="mt-32"></div> ${data.site.hero ? `<section class="mx-auto mb-8 flex w-full max-w-4xl flex-1 flex-col items-start justify-center"><div class="mx-auto max-w-screen-xl px-4 lg:flex lg:items-center"><div class="blurry-bg mx-auto max-w-3xl text-center">${data.site.hero.image ? `<img${add_attribute("src", data.site.hero.image, 0)} class="m-auto h-16 w-16" alt="" srcset="">` : ``} ${data.site.hero.title ? `<h1 class="bg-gradient-to-r from-green-300 via-blue-500 to-purple-600 bg-clip-text text-5xl font-extrabold leading-snug text-transparent">${escape(data.site.hero.title)}</h1>` : ``} ${data.site.hero.subtitle ? `<p class="mx-auto mt-4 max-w-xl sm:text-xl">${escape(data.site.hero.subtitle)}</p>` : ``}</div></div></section>` : ``} ${hasActiveIncidents ? `<section class="mx-auto mb-4 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center bg-transparent" id=""><div class="grid w-full grid-cols-2 gap-4"><div class="col-span-2 text-center md:col-span-1 md:text-left">${validate_component(Badge, "Badge").$$render($$result, { variant: "outline" }, {}, {
|
||||
default: () => {
|
||||
return `${escape(l(data.lang, "root.ongoing_incidents"))}`;
|
||||
}
|
||||
})}</div></div></section> <section class="mx-auto mb-8 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center backdrop-blur-[2px]" id="">${each(data.openIncidents, (incident, i) => {
|
||||
return `${validate_component(Incident, "Incident").$$render(
|
||||
$$result,
|
||||
{
|
||||
incident,
|
||||
state: "close",
|
||||
variant: "title+body+comments+monitor",
|
||||
monitor: incident.monitor,
|
||||
lang: data.lang
|
||||
},
|
||||
{},
|
||||
{}
|
||||
)}`;
|
||||
})}</section>` : ``} ${data.monitors.length > 0 ? `<section class="mx-auto mb-4 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center bg-transparent" id=""><div class="grid w-full grid-cols-2 gap-4"><div class="col-span-2 text-center md:col-span-1 md:text-left">${validate_component(Badge, "Badge").$$render($$result, { class: "", variant: "outline" }, {}, {
|
||||
default: () => {
|
||||
return `${escape(l(data.lang, "root.availability_per_component"))}`;
|
||||
}
|
||||
})}</div> <div class="col-span-2 text-center md:col-span-1 md:text-right">${validate_component(Badge, "Badge").$$render($$result, { variant: "outline" }, {}, {
|
||||
default: () => {
|
||||
return `<span class="bg-api-up mr-1 inline-flex h-[8px] w-[8px] rounded-full opacity-75"></span> <span class="mr-3">${escape(l(data.lang, "statuses.UP"))}</span> <span class="bg-api-degraded mr-1 inline-flex h-[8px] w-[8px] rounded-full opacity-75"></span> <span class="mr-3">${escape(l(data.lang, "statuses.DEGRADED"))}</span> <span class="bg-api-down mr-1 inline-flex h-[8px] w-[8px] rounded-full opacity-75"></span> <span class="mr-3">${escape(l(data.lang, "statuses.DOWN"))}</span>`;
|
||||
}
|
||||
})}</div></div></section> <section class="mx-auto mb-8 flex w-full max-w-[890px] flex-1 flex-col items-start justify-center backdrop-blur-[2px]">${validate_component(Card, "Card.Root").$$render($$result, {}, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Card_content, "Card.Content").$$render($$result, { class: "monitors-card p-0" }, {}, {
|
||||
default: () => {
|
||||
return `${each(data.monitors, (monitor) => {
|
||||
return `${validate_component(Monitor, "Monitor").$$render(
|
||||
$$result,
|
||||
{
|
||||
monitor,
|
||||
localTz: data.localTz,
|
||||
lang: data.lang
|
||||
},
|
||||
{},
|
||||
{}
|
||||
)}`;
|
||||
})}`;
|
||||
}
|
||||
})}`;
|
||||
}
|
||||
})}</section>` : ``} ${data.site.categories ? `<section class="mx-auto mb-8 w-full max-w-[890px] flex-1 flex-col items-start backdrop-blur-[2px]"><h2 class="mb-2 mt-2 px-2 text-xl font-semibold">${escape(l(data.lang, "root.other_monitors"))}</h2> ${each(data.site.categories, (category) => {
|
||||
return `${validate_component(Card, "Card.Root").$$render($$result, { class: "mb-2 w-full" }, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Card_header, "Card.Header").$$render($$result, {}, {}, {
|
||||
default: () => {
|
||||
return `${validate_component(Card_title, "Card.Title").$$render($$result, {}, {}, {
|
||||
default: () => {
|
||||
return `${escape(category.name)}`;
|
||||
}
|
||||
})} ${validate_component(Card_description, "Card.Description").$$render($$result, { class: "relative pr-[100px]" }, {}, {
|
||||
default: () => {
|
||||
return `${category.description ? `${escape(category.description)}` : ``} <a href="${"/category-" + escape(category.name, true)}" class="${escape(buttonVariants({ variant: "secondary" }), true) + " absolute -top-4 right-2"}">View</a> `;
|
||||
}
|
||||
})} `;
|
||||
}
|
||||
})} `;
|
||||
}
|
||||
})}`;
|
||||
})}</section>` : ``}`;
|
||||
});
|
||||
|
||||
export { Page as default };
|
||||
//# sourceMappingURL=_page.svelte-f19899de.js.map
|
||||
@@ -1,84 +0,0 @@
|
||||
import { j as json } from './index-d7f43214.js';
|
||||
import { a as auth, P as ParseIncidentPayload, G as GHIssueToKenerIncident } from './webhook-a142f52d.js';
|
||||
import { U as UpdateIssue, b as GetIncidentByNumber } from './github-da26bf52.js';
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
import fs from 'fs-extra';
|
||||
import './helpers-0acb6e43.js';
|
||||
import './tool-53f63ca6.js';
|
||||
import 'randomstring';
|
||||
import 'axios';
|
||||
import 'marked';
|
||||
|
||||
async function PATCH({ request, params }) {
|
||||
const authError = auth(request);
|
||||
if (authError !== null) {
|
||||
return json(
|
||||
{ error: authError.message },
|
||||
{
|
||||
status: 401
|
||||
}
|
||||
);
|
||||
}
|
||||
const incidentNumber = params.incidentNumber;
|
||||
const payload = await request.json();
|
||||
if (!incidentNumber || isNaN(incidentNumber)) {
|
||||
return json(
|
||||
{ error: "Invalid incidentNumber" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
let { title, body, githubLabels, error } = ParseIncidentPayload(payload);
|
||||
if (error) {
|
||||
return json(
|
||||
{ error },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
let site = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/site.json", "utf8"));
|
||||
let github = site.github;
|
||||
let resp = await UpdateIssue(github, incidentNumber, title, body, githubLabels);
|
||||
if (resp === null) {
|
||||
return json(
|
||||
{ error: "github error" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
return json(GHIssueToKenerIncident(resp), {
|
||||
status: 200
|
||||
});
|
||||
}
|
||||
async function GET({ request, params }) {
|
||||
const authError = auth(request);
|
||||
if (authError !== null) {
|
||||
return json(
|
||||
{ error: authError.message },
|
||||
{
|
||||
status: 401
|
||||
}
|
||||
);
|
||||
}
|
||||
const incidentNumber = params.incidentNumber;
|
||||
let site = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/site.json", "utf8"));
|
||||
let github = site.github;
|
||||
let issue = await GetIncidentByNumber(github, incidentNumber);
|
||||
if (issue === null) {
|
||||
return json(
|
||||
{ error: "incident not found" },
|
||||
{
|
||||
status: 404
|
||||
}
|
||||
);
|
||||
}
|
||||
return json(GHIssueToKenerIncident(issue), {
|
||||
status: 200
|
||||
});
|
||||
}
|
||||
|
||||
export { GET, PATCH };
|
||||
//# sourceMappingURL=_server-23a705bb.js.map
|
||||
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"_server-23a705bb.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/incident/_incidentNumber_/_server.js"],"sourcesContent":["import { j as json } from \"../../../../../chunks/index.js\";\nimport { a as auth, P as ParseIncidentPayload, G as GHIssueToKenerIncident } from \"../../../../../chunks/webhook.js\";\nimport { U as UpdateIssue, G as GetIncidentByNumber } from \"../../../../../chunks/github.js\";\nimport { p as public_env } from \"../../../../../chunks/shared-server.js\";\nimport fs from \"fs-extra\";\nasync function PATCH({ request, params }) {\n const authError = auth(request);\n if (authError !== null) {\n return json(\n { error: authError.message },\n {\n status: 401\n }\n );\n }\n const incidentNumber = params.incidentNumber;\n const payload = await request.json();\n if (!incidentNumber || isNaN(incidentNumber)) {\n return json(\n { error: \"Invalid incidentNumber\" },\n {\n status: 400\n }\n );\n }\n let { title, body, githubLabels, error } = ParseIncidentPayload(payload);\n if (error) {\n return json(\n { error },\n {\n status: 400\n }\n );\n }\n let site = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + \"/site.json\", \"utf8\"));\n let github = site.github;\n let resp = await UpdateIssue(github, incidentNumber, title, body, githubLabels);\n if (resp === null) {\n return json(\n { error: \"github error\" },\n {\n status: 400\n }\n );\n }\n return json(GHIssueToKenerIncident(resp), {\n status: 200\n });\n}\nasync function GET({ request, params }) {\n const authError = auth(request);\n if (authError !== null) {\n return json(\n { error: authError.message },\n {\n status: 401\n }\n );\n }\n const incidentNumber = params.incidentNumber;\n let site = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + \"/site.json\", \"utf8\"));\n let github = site.github;\n let issue = await GetIncidentByNumber(github, incidentNumber);\n if (issue === null) {\n return json(\n { error: \"incident not found\" },\n {\n status: 404\n }\n );\n }\n return json(GHIssueToKenerIncident(issue), {\n status: 200\n });\n}\nexport {\n GET,\n PATCH\n};\n"],"names":[],"mappings":";;;;;;;;;;;AAKA,eAAe,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;AAC1C,EAAE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;AAClC,EAAE,IAAI,SAAS,KAAK,IAAI,EAAE;AAC1B,IAAI,OAAO,IAAI;AACf,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE;AAClC,MAAM;AACN,QAAQ,MAAM,EAAE,GAAG;AACnB,OAAO;AACP,KAAK,CAAC;AACN,GAAG;AACH,EAAE,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AAC/C,EAAE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;AACvC,EAAE,IAAI,CAAC,cAAc,IAAI,KAAK,CAAC,cAAc,CAAC,EAAE;AAChD,IAAI,OAAO,IAAI;AACf,MAAM,EAAE,KAAK,EAAE,wBAAwB,EAAE;AACzC,MAAM;AACN,QAAQ,MAAM,EAAE,GAAG;AACnB,OAAO;AACP,KAAK,CAAC;AACN,GAAG;AACH,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAC3E,EAAE,IAAI,KAAK,EAAE;AACb,IAAI,OAAO,IAAI;AACf,MAAM,EAAE,KAAK,EAAE;AACf,MAAM;AACN,QAAQ,MAAM,EAAE,GAAG;AACnB,OAAO;AACP,KAAK,CAAC;AACN,GAAG;AACH,EAAE,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,GAAG,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;AAChG,EAAE,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3B,EAAE,IAAI,IAAI,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;AAClF,EAAE,IAAI,IAAI,KAAK,IAAI,EAAE;AACrB,IAAI,OAAO,IAAI;AACf,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE;AAC/B,MAAM;AACN,QAAQ,MAAM,EAAE,GAAG;AACnB,OAAO;AACP,KAAK,CAAC;AACN,GAAG;AACH,EAAE,OAAO,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;AAC5C,IAAI,MAAM,EAAE,GAAG;AACf,GAAG,CAAC,CAAC;AACL,CAAC;AACD,eAAe,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;AACxC,EAAE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;AAClC,EAAE,IAAI,SAAS,KAAK,IAAI,EAAE;AAC1B,IAAI,OAAO,IAAI;AACf,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE;AAClC,MAAM;AACN,QAAQ,MAAM,EAAE,GAAG;AACnB,OAAO;AACP,KAAK,CAAC;AACN,GAAG;AACH,EAAE,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AAC/C,EAAE,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,GAAG,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;AAChG,EAAE,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3B,EAAE,IAAI,KAAK,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AAChE,EAAE,IAAI,KAAK,KAAK,IAAI,EAAE;AACtB,IAAI,OAAO,IAAI;AACf,MAAM,EAAE,KAAK,EAAE,oBAAoB,EAAE;AACrC,MAAM;AACN,QAAQ,MAAM,EAAE,GAAG;AACnB,OAAO;AACP,KAAK,CAAC;AACN,GAAG;AACH,EAAE,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE;AAC7C,IAAI,MAAM,EAAE,GAAG;AACf,GAAG,CAAC,CAAC;AACL;;;;"}
|
||||
@@ -1,100 +0,0 @@
|
||||
import { j as json } from './index-d7f43214.js';
|
||||
import { a as auth } from './webhook-a142f52d.js';
|
||||
import { c as GetCommentsForIssue, A as AddComment } from './github-da26bf52.js';
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
import fs from 'fs-extra';
|
||||
import './helpers-0acb6e43.js';
|
||||
import './tool-53f63ca6.js';
|
||||
import 'randomstring';
|
||||
import 'axios';
|
||||
import 'marked';
|
||||
|
||||
async function GET({ request, params }) {
|
||||
const authError = auth(request);
|
||||
if (authError !== null) {
|
||||
return json(
|
||||
{ error: authError.message },
|
||||
{
|
||||
status: 401
|
||||
}
|
||||
);
|
||||
}
|
||||
const incidentNumber = params.incidentNumber;
|
||||
if (!incidentNumber || isNaN(incidentNumber)) {
|
||||
return json(
|
||||
{ error: "Invalid incidentNumber" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
let site = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/site.json", "utf8"));
|
||||
let github = site.github;
|
||||
let resp = await GetCommentsForIssue(incidentNumber, github);
|
||||
return json(
|
||||
resp.map((comment) => {
|
||||
return {
|
||||
commentID: comment.id,
|
||||
body: comment.body,
|
||||
createdAt: Math.floor(new Date(comment.created_at).getTime() / 1e3)
|
||||
};
|
||||
}),
|
||||
{
|
||||
status: 200
|
||||
}
|
||||
);
|
||||
}
|
||||
async function POST({ request, params }) {
|
||||
const authError = auth(request);
|
||||
if (authError !== null) {
|
||||
return json(
|
||||
{ error: authError.message },
|
||||
{
|
||||
status: 401
|
||||
}
|
||||
);
|
||||
}
|
||||
const incidentNumber = params.incidentNumber;
|
||||
if (!incidentNumber || isNaN(incidentNumber)) {
|
||||
return json(
|
||||
{ error: "Invalid incidentNumber" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
const payload = await request.json();
|
||||
let body = payload.body;
|
||||
if (!body || typeof body !== "string") {
|
||||
return json(
|
||||
{ error: "Invalid body" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
let site = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/site.json", "utf8"));
|
||||
let github = site.github;
|
||||
let resp = await AddComment(github, incidentNumber, body);
|
||||
if (resp === null) {
|
||||
return json(
|
||||
{ error: "github error" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
return json(
|
||||
{
|
||||
commentID: resp.id,
|
||||
body: resp.body,
|
||||
createdAt: Math.floor(new Date(resp.created_at).getTime() / 1e3)
|
||||
},
|
||||
{
|
||||
status: 200
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
export { GET, POST };
|
||||
//# sourceMappingURL=_server-4c245834.js.map
|
||||
@@ -1,50 +0,0 @@
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
import fs from 'fs-extra';
|
||||
import { P as ParseUptime } from './helpers-0acb6e43.js';
|
||||
import { makeBadge } from 'badge-maker';
|
||||
|
||||
const monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/monitors.json", "utf8"));
|
||||
async function GET({ params, url }) {
|
||||
const { path0Day, name } = monitors.find((monitor) => monitor.tag === params.tag);
|
||||
const dayData = JSON.parse(fs.readFileSync(path0Day, "utf8"));
|
||||
const query = url.searchParams;
|
||||
const rangeInSeconds = query.get("sinceLast") || 90 * 24 * 60 * 60;
|
||||
const now = Math.floor(Date.now() / 1e3);
|
||||
const since = now - rangeInSeconds;
|
||||
let ups = 0;
|
||||
let downs = 0;
|
||||
let degradeds = 0;
|
||||
for (const timestamp in dayData) {
|
||||
if (timestamp < since) {
|
||||
continue;
|
||||
}
|
||||
const obj = dayData[timestamp];
|
||||
if (obj.status == "UP") {
|
||||
ups++;
|
||||
} else if (obj.status == "DEGRADED") {
|
||||
degradeds++;
|
||||
} else if (obj.status == "DOWN") {
|
||||
downs++;
|
||||
}
|
||||
}
|
||||
let uptime = ParseUptime(ups + degradeds, ups + degradeds + downs) + "%";
|
||||
const labelColor = query.get("labelColor") || "#333";
|
||||
const color = query.get("color") || "#0079FF";
|
||||
const style = query.get("style") || "flat";
|
||||
const format = {
|
||||
label: name,
|
||||
message: uptime,
|
||||
color,
|
||||
labelColor,
|
||||
style
|
||||
};
|
||||
const svg = makeBadge(format);
|
||||
return new Response(svg, {
|
||||
headers: {
|
||||
"Content-Type": "image/svg+xml"
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
export { GET };
|
||||
//# sourceMappingURL=_server-4c69c2ac.js.map
|
||||
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"_server-4c69c2ac.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/badge/_tag_/uptime/_server.js"],"sourcesContent":["import { p as public_env } from \"../../../../../chunks/shared-server.js\";\nimport fs from \"fs-extra\";\nimport { P as ParseUptime } from \"../../../../../chunks/helpers.js\";\nimport { makeBadge } from \"badge-maker\";\nconst monitors = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + \"/monitors.json\", \"utf8\"));\nasync function GET({ params, url }) {\n const { path0Day, name } = monitors.find((monitor) => monitor.tag === params.tag);\n const dayData = JSON.parse(fs.readFileSync(path0Day, \"utf8\"));\n const query = url.searchParams;\n const rangeInSeconds = query.get(\"sinceLast\") || 90 * 24 * 60 * 60;\n const now = Math.floor(Date.now() / 1e3);\n const since = now - rangeInSeconds;\n let ups = 0;\n let downs = 0;\n let degradeds = 0;\n for (const timestamp in dayData) {\n if (timestamp < since) {\n continue;\n }\n const obj = dayData[timestamp];\n if (obj.status == \"UP\") {\n ups++;\n } else if (obj.status == \"DEGRADED\") {\n degradeds++;\n } else if (obj.status == \"DOWN\") {\n downs++;\n }\n }\n let uptime = ParseUptime(ups + degradeds, ups + degradeds + downs) + \"%\";\n const labelColor = query.get(\"labelColor\") || \"#333\";\n const color = query.get(\"color\") || \"#0079FF\";\n const style = query.get(\"style\") || \"flat\";\n const format = {\n label: name,\n message: uptime,\n color,\n labelColor,\n style\n };\n const svg = makeBadge(format);\n return new Response(svg, {\n headers: {\n \"Content-Type\": \"image/svg+xml\"\n }\n });\n}\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;AAIA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,GAAG,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;AACxG,eAAe,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE;AACpC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC;AACpF,EAAE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AAChE,EAAE,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC;AACjC,EAAE,MAAM,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AACrE,EAAE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;AAC3C,EAAE,MAAM,KAAK,GAAG,GAAG,GAAG,cAAc,CAAC;AACrC,EAAE,IAAI,GAAG,GAAG,CAAC,CAAC;AACd,EAAE,IAAI,KAAK,GAAG,CAAC,CAAC;AAChB,EAAE,IAAI,SAAS,GAAG,CAAC,CAAC;AACpB,EAAE,KAAK,MAAM,SAAS,IAAI,OAAO,EAAE;AACnC,IAAI,IAAI,SAAS,GAAG,KAAK,EAAE;AAC3B,MAAM,SAAS;AACf,KAAK;AACL,IAAI,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AACnC,IAAI,IAAI,GAAG,CAAC,MAAM,IAAI,IAAI,EAAE;AAC5B,MAAM,GAAG,EAAE,CAAC;AACZ,KAAK,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,UAAU,EAAE;AACzC,MAAM,SAAS,EAAE,CAAC;AAClB,KAAK,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,MAAM,EAAE;AACrC,MAAM,KAAK,EAAE,CAAC;AACd,KAAK;AACL,GAAG;AACH,EAAE,IAAI,MAAM,GAAG,WAAW,CAAC,GAAG,GAAG,SAAS,EAAE,GAAG,GAAG,SAAS,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC;AAC3E,EAAE,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC;AACvD,EAAE,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC;AAChD,EAAE,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC;AAC7C,EAAE,MAAM,MAAM,GAAG;AACjB,IAAI,KAAK,EAAE,IAAI;AACf,IAAI,OAAO,EAAE,MAAM;AACnB,IAAI,KAAK;AACT,IAAI,UAAU;AACd,IAAI,KAAK;AACT,GAAG,CAAC;AACJ,EAAE,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;AAChC,EAAE,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;AAC3B,IAAI,OAAO,EAAE;AACb,MAAM,cAAc,EAAE,eAAe;AACrC,KAAK;AACL,GAAG,CAAC,CAAC;AACL;;;;"}
|
||||
@@ -1,115 +0,0 @@
|
||||
import { j as json } from './index-d7f43214.js';
|
||||
import { a as auth, P as ParseIncidentPayload, G as GHIssueToKenerIncident } from './webhook-a142f52d.js';
|
||||
import { C as CreateIssue, S as SearchIssue } from './github-da26bf52.js';
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
import fs from 'fs-extra';
|
||||
import './helpers-0acb6e43.js';
|
||||
import './tool-53f63ca6.js';
|
||||
import 'randomstring';
|
||||
import 'axios';
|
||||
import 'marked';
|
||||
|
||||
async function POST({ request }) {
|
||||
const payload = await request.json();
|
||||
const authError = auth(request);
|
||||
if (authError !== null) {
|
||||
return json(
|
||||
{ error: authError.message },
|
||||
{
|
||||
status: 401
|
||||
}
|
||||
);
|
||||
}
|
||||
let { title, body, githubLabels, error } = ParseIncidentPayload(payload);
|
||||
if (error) {
|
||||
return json(
|
||||
{ error },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
let site = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/site.json", "utf8"));
|
||||
let github = site.github;
|
||||
let resp = await CreateIssue(github, title, body, githubLabels);
|
||||
if (resp === null) {
|
||||
return json(
|
||||
{ error: "github error" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
return json(GHIssueToKenerIncident(resp), {
|
||||
status: 200
|
||||
});
|
||||
}
|
||||
async function GET({ request, url }) {
|
||||
const authError = auth(request);
|
||||
if (authError !== null) {
|
||||
return json(
|
||||
{ error: authError.message },
|
||||
{
|
||||
status: 401
|
||||
}
|
||||
);
|
||||
}
|
||||
const query = url.searchParams;
|
||||
const state = query.get("state") || "open";
|
||||
const tags = query.get("tags") || "";
|
||||
const page = query.get("page") || 1;
|
||||
const per_page = query.get("per_page") || 10;
|
||||
const createdAfter = query.get("created_after_utc") || "";
|
||||
const createdBefore = query.get("created_before_utc") || "";
|
||||
const titleLike = query.get("title_like") || "";
|
||||
if (state !== "open" && state !== "closed") {
|
||||
return json(
|
||||
{ error: "state must be open or closed" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
let site = JSON.parse(
|
||||
fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/site.json", "utf8")
|
||||
);
|
||||
let github = site.github;
|
||||
const repo = `${github.owner}/${github.repo}`;
|
||||
const is = "issue";
|
||||
const filterArray = [
|
||||
`repo:${repo}`,
|
||||
`is:${is}`,
|
||||
`state:${state}`,
|
||||
`label:incident`,
|
||||
`sort:created-desc`,
|
||||
`label:${tags.split(",").map((tag) => tag.trim()).join(",")}`
|
||||
];
|
||||
if (createdBefore && createdAfter) {
|
||||
let dateFilter = "";
|
||||
let iso = new Date(createdAfter * 1e3).toISOString();
|
||||
dateFilter += `created:${iso}`;
|
||||
iso = new Date(createdBefore * 1e3).toISOString();
|
||||
dateFilter += `..${iso}`;
|
||||
filterArray.push(dateFilter);
|
||||
} else if (createdAfter) {
|
||||
let iso = new Date(createdAfter * 1e3).toISOString();
|
||||
filterArray.push(`created:>=${iso}`);
|
||||
} else if (createdBefore) {
|
||||
let iso = new Date(createdBefore * 1e3).toISOString();
|
||||
filterArray.push(`created:<=${iso}`);
|
||||
}
|
||||
if (titleLike) {
|
||||
filterArray.unshift(`${titleLike} in:title`);
|
||||
}
|
||||
const resp = await SearchIssue(filterArray, page, per_page);
|
||||
const incidents = resp.items.map((issue) => GHIssueToKenerIncident(issue));
|
||||
return json(
|
||||
incidents,
|
||||
{
|
||||
status: 200
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
export { GET, POST };
|
||||
//# sourceMappingURL=_server-5538fdb3.js.map
|
||||
@@ -1,90 +0,0 @@
|
||||
import { j as json } from './index-d7f43214.js';
|
||||
import { a as auth, G as GHIssueToKenerIncident } from './webhook-a142f52d.js';
|
||||
import { b as GetIncidentByNumber, d as UpdateIssueLabels } from './github-da26bf52.js';
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
import fs from 'fs-extra';
|
||||
import './helpers-0acb6e43.js';
|
||||
import './tool-53f63ca6.js';
|
||||
import 'randomstring';
|
||||
import 'axios';
|
||||
import 'marked';
|
||||
|
||||
async function POST({ request, params }) {
|
||||
const payload = await request.json();
|
||||
const incidentNumber = params.incidentNumber;
|
||||
const authError = auth(request);
|
||||
if (authError !== null) {
|
||||
return json(
|
||||
{ error: authError.message },
|
||||
{
|
||||
status: 401
|
||||
}
|
||||
);
|
||||
}
|
||||
let isIdentified = payload.isIdentified;
|
||||
let isResolved = payload.isResolved;
|
||||
let endDatetime = payload.endDatetime;
|
||||
if (!incidentNumber || isNaN(incidentNumber)) {
|
||||
return json(
|
||||
{ error: "Invalid incidentNumber" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
if (endDatetime && typeof endDatetime !== "number") {
|
||||
return json(
|
||||
{ error: "Invalid endDatetime" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
let site = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/site.json", "utf8"));
|
||||
let github = site.github;
|
||||
let issue = await GetIncidentByNumber(github, incidentNumber);
|
||||
if (issue === null) {
|
||||
return json(
|
||||
{ error: "github error" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
let labels = issue.labels.map((label) => {
|
||||
return label.name;
|
||||
});
|
||||
if (isIdentified !== void 0) {
|
||||
labels = labels.filter((label) => label !== "identified");
|
||||
if (isIdentified === true) {
|
||||
labels.push("identified");
|
||||
}
|
||||
}
|
||||
if (isResolved !== void 0) {
|
||||
labels = labels.filter((label) => label !== "resolved");
|
||||
if (isResolved === true) {
|
||||
labels.push("resolved");
|
||||
}
|
||||
}
|
||||
let body = issue.body;
|
||||
if (endDatetime) {
|
||||
body = body.replace(/\[end_datetime:(\d+)\]/g, "");
|
||||
body = body.trim();
|
||||
body = body + ` [end_datetime:${endDatetime}]`;
|
||||
}
|
||||
let resp = await UpdateIssueLabels(github, incidentNumber, labels, body);
|
||||
if (resp === null) {
|
||||
return json(
|
||||
{ error: "github error" },
|
||||
{
|
||||
status: 400
|
||||
}
|
||||
);
|
||||
}
|
||||
return json(GHIssueToKenerIncident(resp), {
|
||||
status: 200
|
||||
});
|
||||
}
|
||||
|
||||
export { POST };
|
||||
//# sourceMappingURL=_server-81a5c992.js.map
|
||||
@@ -1,26 +0,0 @@
|
||||
import { j as json } from './index-d7f43214.js';
|
||||
import { p as public_env } from './shared-server-58a5f352.js';
|
||||
import fs from 'fs-extra';
|
||||
import { c as GetCommentsForIssue } from './github-da26bf52.js';
|
||||
import { marked } from 'marked';
|
||||
import 'axios';
|
||||
import './tool-53f63ca6.js';
|
||||
|
||||
async function GET({ params }) {
|
||||
const incidentNumber = params.id;
|
||||
let siteData = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + "/site.json", "utf8"));
|
||||
let comments = await GetCommentsForIssue(incidentNumber, siteData.github);
|
||||
comments = comments.map((comment) => {
|
||||
const html = marked.parse(comment.body);
|
||||
return {
|
||||
body: html,
|
||||
created_at: comment.created_at,
|
||||
updated_at: comment.updated_at,
|
||||
html_url: comment.html_url
|
||||
};
|
||||
});
|
||||
return json(comments);
|
||||
}
|
||||
|
||||
export { GET };
|
||||
//# sourceMappingURL=_server-aae868e2.js.map
|
||||
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"_server-aae868e2.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/incident/_id_/comments/_server.js"],"sourcesContent":["import { j as json } from \"../../../../../chunks/index.js\";\nimport { p as public_env } from \"../../../../../chunks/shared-server.js\";\nimport fs from \"fs-extra\";\nimport { a as GetCommentsForIssue } from \"../../../../../chunks/github.js\";\nimport { marked } from \"marked\";\nasync function GET({ params }) {\n const incidentNumber = params.id;\n let siteData = JSON.parse(fs.readFileSync(public_env.PUBLIC_KENER_FOLDER + \"/site.json\", \"utf8\"));\n let comments = await GetCommentsForIssue(incidentNumber, siteData.github);\n comments = comments.map((comment) => {\n const html = marked.parse(comment.body);\n return {\n body: html,\n created_at: comment.created_at,\n updated_at: comment.updated_at,\n html_url: comment.html_url\n };\n });\n return json(comments);\n}\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;AAKA,eAAe,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE;AAC/B,EAAE,MAAM,cAAc,GAAG,MAAM,CAAC,EAAE,CAAC;AACnC,EAAE,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,GAAG,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;AACpG,EAAE,IAAI,QAAQ,GAAG,MAAM,mBAAmB,CAAC,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC5E,EAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK;AACvC,IAAI,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC5C,IAAI,OAAO;AACX,MAAM,IAAI,EAAE,IAAI;AAChB,MAAM,UAAU,EAAE,OAAO,CAAC,UAAU;AACpC,MAAM,UAAU,EAAE,OAAO,CAAC,UAAU;AACpC,MAAM,QAAQ,EAAE,OAAO,CAAC,QAAQ;AAChC,KAAK,CAAC;AACN,GAAG,CAAC,CAAC;AACL,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC;AACxB;;;;"}
|
||||