watch-tail 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -3
- package/build/client/_app/immutable/assets/0.BPmQoXaO.css +2 -0
- package/build/client/_app/immutable/assets/0.BPmQoXaO.css.br +0 -0
- package/build/client/_app/immutable/assets/0.BPmQoXaO.css.gz +0 -0
- package/build/client/_app/immutable/chunks/{KFjMNKuK.js → Bw_9uNRP.js} +1 -1
- package/build/client/_app/immutable/chunks/Bw_9uNRP.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bw_9uNRP.js.gz +0 -0
- package/build/client/_app/immutable/chunks/De_x7GQi.js +1 -0
- package/build/client/_app/immutable/chunks/De_x7GQi.js.br +0 -0
- package/build/client/_app/immutable/chunks/De_x7GQi.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.CO3UiVLU.js → app.Be166AxG.js} +2 -2
- package/build/client/_app/immutable/entry/app.Be166AxG.js.br +0 -0
- package/build/client/_app/immutable/entry/app.Be166AxG.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.clEDpQL9.js +1 -0
- package/build/client/_app/immutable/entry/start.clEDpQL9.js.br +0 -0
- package/build/client/_app/immutable/entry/start.clEDpQL9.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.BJ6Zdc8H.js +1 -0
- package/build/client/_app/immutable/nodes/0.BJ6Zdc8H.js.br +4 -0
- package/build/client/_app/immutable/nodes/0.BJ6Zdc8H.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.Bink5luw.js → 1.xMNWuLLz.js} +1 -1
- package/build/client/_app/immutable/nodes/1.xMNWuLLz.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.xMNWuLLz.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.CaxDXwmh.js +5 -0
- package/build/client/_app/immutable/nodes/2.CaxDXwmh.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.CaxDXwmh.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/handler.js +4 -4
- package/build/index.js +4 -4
- package/build/server/chunks/chunks/{env2.js-D7xrfc37.js → env2.js-DXveJt1Y.js} +18 -12
- package/build/server/chunks/chunks/env2.js-DXveJt1Y.js.map +1 -0
- package/build/server/chunks/chunks/{internal.js-DKaleXjD.js → internal.js-Cc3oBhL-.js} +3 -3
- package/build/server/chunks/chunks/{internal.js-DKaleXjD.js.map → internal.js-Cc3oBhL-.js.map} +1 -1
- package/build/server/chunks/chunks/{state.js-B3c1pOs1.js → state.js-9DxsWxU-.js} +2 -2
- package/build/server/chunks/chunks/{state.js-B3c1pOs1.js.map → state.js-9DxsWxU-.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/health/{_server.ts.js-aiNZfkco.js → _server.ts.js-BOjix7GN.js} +3 -2
- package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-BOjix7GN.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/identity/_server.ts.js-g13uvmrX.js +72 -0
- package/build/server/chunks/entries/endpoints/api/identity/_server.ts.js-g13uvmrX.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/log-groups/{_server.ts.js-D143-vRl.js → _server.ts.js-CmHRxdZK.js} +3 -2
- package/build/server/chunks/entries/endpoints/api/log-groups/{_server.ts.js-D143-vRl.js.map → _server.ts.js-CmHRxdZK.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/regions/{_server.ts.js-CDNL7msU.js → _server.ts.js-BgUwioxp.js} +3 -2
- package/build/server/chunks/entries/endpoints/api/regions/{_server.ts.js-CDNL7msU.js.map → _server.ts.js-BgUwioxp.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/stream/{_server.ts.js-D_i-xW6_.js → _server.ts.js-CIYo4C-0.js} +3 -2
- package/build/server/chunks/entries/endpoints/api/stream/{_server.ts.js-D_i-xW6_.js.map → _server.ts.js-CIYo4C-0.js.map} +1 -1
- package/build/server/chunks/entries/fallbacks/{error.svelte.js-DwU8Vh5R.js → error.svelte.js-CFonuZkV.js} +3 -3
- package/build/server/chunks/entries/fallbacks/{error.svelte.js-DwU8Vh5R.js.map → error.svelte.js-CFonuZkV.js.map} +1 -1
- package/build/server/chunks/entries/pages/_layout.svelte.js-Dzluuq12.js +22 -0
- package/build/server/chunks/entries/pages/_layout.svelte.js-Dzluuq12.js.map +1 -0
- package/build/server/chunks/entries/pages/{_page.svelte.js-CsJstkpB.js → _page.svelte.js-CpwYbxbM.js} +36 -9
- package/build/server/chunks/entries/pages/_page.svelte.js-CpwYbxbM.js.map +1 -0
- package/build/server/chunks/{handler-Dw17Mzkr.js → handler-DS32NMsJ.js} +3 -3
- package/build/server/chunks/{handler-Dw17Mzkr.js.map → handler-DS32NMsJ.js.map} +1 -1
- package/build/server/chunks/{index.js-CAGsYI3V.js → index.js-HHu-yOEK.js} +2 -2
- package/build/server/chunks/{index.js-CAGsYI3V.js.map → index.js-HHu-yOEK.js.map} +1 -1
- package/build/server/chunks/{manifest.js-CVImQuLw.js → manifest.js-BUrA7Zyr.js} +16 -9
- package/build/server/chunks/manifest.js-BUrA7Zyr.js.map +1 -0
- package/build/server/chunks/nodes/{0.js-Bg4_hDjk.js → 0.js-gSRmrAt_.js} +4 -4
- package/build/server/chunks/nodes/{0.js-Bg4_hDjk.js.map → 0.js-gSRmrAt_.js.map} +1 -1
- package/build/server/chunks/nodes/{1.js-D_fOWpEW.js → 1.js-D68K7Ad_.js} +3 -3
- package/build/server/chunks/nodes/{1.js-D_fOWpEW.js.map → 1.js-D68K7Ad_.js.map} +1 -1
- package/build/server/chunks/nodes/2.js-ChYsaaoC.js +9 -0
- package/build/server/chunks/nodes/{2.js-t5EYxWxj.js.map → 2.js-ChYsaaoC.js.map} +1 -1
- package/dist/cli/index.js +150 -34
- package/dist/cli/preflight.js +42 -0
- package/dist/cli/ui.js +7 -3
- package/dist/lib/cli/aws.js +48 -0
- package/package.json +2 -1
- package/build/client/_app/immutable/assets/0.CocWI5K4.css +0 -2
- package/build/client/_app/immutable/assets/0.CocWI5K4.css.br +0 -0
- package/build/client/_app/immutable/assets/0.CocWI5K4.css.gz +0 -0
- package/build/client/_app/immutable/chunks/CsscK9Dm.js +0 -1
- package/build/client/_app/immutable/chunks/CsscK9Dm.js.br +0 -0
- package/build/client/_app/immutable/chunks/CsscK9Dm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/KFjMNKuK.js.br +0 -0
- package/build/client/_app/immutable/chunks/KFjMNKuK.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.CO3UiVLU.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CO3UiVLU.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.t_nX227Y.js +0 -1
- package/build/client/_app/immutable/entry/start.t_nX227Y.js.br +0 -0
- package/build/client/_app/immutable/entry/start.t_nX227Y.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.DHBUWbOo.js +0 -1
- package/build/client/_app/immutable/nodes/0.DHBUWbOo.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.DHBUWbOo.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.Bink5luw.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.Bink5luw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.U0ljz8ot.js +0 -5
- package/build/client/_app/immutable/nodes/2.U0ljz8ot.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.U0ljz8ot.js.gz +0 -0
- package/build/server/chunks/chunks/env2.js-D7xrfc37.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-aiNZfkco.js.map +0 -1
- package/build/server/chunks/entries/pages/_layout.svelte.js-Bx7lXkAi.js +0 -22
- package/build/server/chunks/entries/pages/_layout.svelte.js-Bx7lXkAi.js.map +0 -1
- package/build/server/chunks/entries/pages/_page.svelte.js-CsJstkpB.js.map +0 -1
- package/build/server/chunks/manifest.js-CVImQuLw.js.map +0 -1
- package/build/server/chunks/nodes/2.js-t5EYxWxj.js +0 -9
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{A as e,K as t,M as n,U as r,W as i,j as a,k as o,n as s,t as c}from"./ZAD2y5xJ.js";var l=class{constructor(e,t){this.status=e,this.body=typeof t==`string`?{message:t}:t||{message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}},u=class{constructor(e,t){try{new Headers({location:t})}catch{throw Error(`Invalid redirect location ${JSON.stringify(t)}: this string contains characters that cannot be used in HTTP headers`)}this.status=e,this.location=t}},d=class extends Error{constructor(e,t,n){super(n),this.status=e,this.text=t}};new URL(`sveltekit-internal://`);function f(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function p(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function ee(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(){}function g(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}new TextEncoder;function _(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var te=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&v.delete(b(e)),te(e,t));var v=new Map;function y(e,t){let n=b(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent);r.getAttribute(`data-b64`)!==null&&(e=_(e));let i=r.getAttribute(`data-ttl`);return i&&v.set(n,{body:e,init:t,ttl:1e3*Number(i)}),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function ne(e,t,n){if(v.size>0){let t=b(e,n),r=v.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);v.delete(t)}}return window.fetch(t,n)}function b(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${g(...e)}"]`}return n}var re=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,ie=/^\/\((?:[^)]+)\)$/;function ae(e){let t=[];return{pattern:e===`/`||ie.test(e)?/^\/$/:RegExp(`^${se(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return le(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return le(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=re.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return le(e)}).join(``)}).join(``)}/?$`),params:t}}function oe(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function se(e){return e.slice(1).split(`/`).filter(oe)}function ce(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0){if(s.rest)c=``;else continue}if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function le(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function ue({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=ae(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return ce(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function de(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function fe(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var x=globalThis.__sveltekit_13evn32?.base??``,pe=globalThis.__sveltekit_13evn32?.assets??x??``,me=`1789164607259`,he=`sveltekit:snapshot`,ge=`sveltekit:scroll`,_e=`sveltekit:states`,ve=`sveltekit:pageurl`,S=`sveltekit:history`,C=`sveltekit:navigation`,w={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},ye=location.origin;function be(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function T(){return{x:pageXOffset,y:pageYOffset}}function E(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var xe={...w,"":w.hover};function Se(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function Ce(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=Se(e)}}function we(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||O(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===ye&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function D(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=E(s,`preload-code`)),i===null&&(i=E(s,`preload-data`)),t===null&&(t=E(s,`keepfocus`)),n===null&&(n=E(s,`noscroll`)),a===null&&(a=E(s,`reload`)),o===null&&(o=E(s,`replacestate`)),s=Se(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:xe[r??`off`],preload_data:xe[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Te(e){let n=t(e),r=!0;function i(){r=!0,n.update(e=>e)}function a(e){r=!1,n.set(e)}function o(e){let t;return n.subscribe(n=>{(t===void 0||r&&n!==t)&&e(t=n)})}return{notify:i,set:a,subscribe:o}}var Ee={v:h};function De(){let{set:e,subscribe:n}=t(!1),r;async function i(){clearTimeout(r);try{let t=await fetch(`${pe}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let n=(await t.json()).version!==me;return n&&(e(!0),Ee.v(),clearTimeout(r)),n}catch{return!1}}return{subscribe:n,check:i}}function O(e,t,n){return e.origin!==ye||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function Oe(e){}var ke=2**32-1-1,Ae=Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function je(e){let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getPrototypeOf(t)===null||Object.getOwnPropertyNames(t).sort().join(`\0`)===Ae}function Me(e){return Object.prototype.toString.call(e).slice(8,-1)}function Ne(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)}function Pe(e){return!(!Number.isInteger(e)||e<0||e>ke)}function Fe(e){if(e.length===0||e.length>1&&e.charCodeAt(0)===48)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return Pe(+e)}function Ie(e){for(var t=e.length-1;t>=0&&!Fe(e[t]);t--);return t+1}function Le(e){let t=Object.keys(e);return t.length=Ie(t),t}Uint8Array.fromBase64,typeof process==`object`&&process.versions?.node;var Re=Object.freeze({kind:`not-plain`}),ze=Object.freeze({kind:`symbol-keys`});Object.freeze({identify:e=>e,typeOf:e=>e===null?`null`:typeof e,toPrimitive:e=>e,tagOf:e=>Me(e),isThenable:e=>typeof e.then==`function`,toPromise:e=>Promise.resolve(e),unbox:e=>e.valueOf(),toISOString:e=>isNaN(e.getDate())?``:e.toISOString(),toStringValue:e=>e.toString(),regExpInfo:e=>({source:e.source,flags:e.flags}),valuesOf:e=>e,entriesOf:e=>e,viewInfo:e=>({buffer:e.buffer,byteOffset:e.byteOffset,byteLength:e.byteLength,length:e.length,bufferByteLength:e.buffer.byteLength}),toArrayBuffer:e=>e,lengthOf:e=>e.length,hasOwn:(e,t)=>Object.hasOwn(e,t),indicesOf:e=>Le(e),shapeOf:e=>je(e)?Ne(e).length>0?ze:{kind:Object.getPrototypeOf(e)===null?`null-proto`:`plain`,keys:Object.keys(e)}:Re,get:(e,t)=>e[t]}),Object.freeze({fromPrimitive:e=>e,fromISOString:e=>new Date(e),fromStringValue:(e,t)=>e===`URL`?new URL(t):e===`URLSearchParams`?new URLSearchParams(t):Temporal[e.slice(9)].from(t),fromArrayBuffer:e=>e,fromRegExpInfo:(e,t)=>new RegExp(e,t),fromViewInfo:(e,t,n,r)=>{let i=globalThis[e];return n===void 0?new i(t):new i(t,n,r)},box:e=>Object(e),createArray:e=>Array(e),createSparseArray:e=>{let t=[];return t[ke]=void 0,delete t[ke],t.length=e,t},createObject:()=>({}),createNullPrototypeObject:()=>Object.create(null),createSet:()=>new Set,createMap:()=>new Map,set:(e,t,n)=>{e[t]=n},addValue:(e,t)=>{e.add(t)},addEntry:(e,t,n)=>{e.set(t,n)}});var Be=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);[...Be],[...new Set([...Be])];function Ve(e){return e.filter(e=>e!=null)}function k(e,t){return e+`/`+t}function He(e){return e instanceof l||e instanceof d?e.status:500}function Ue(e){return e instanceof d?e.text:`Internal Error`}var A,j,We,Ge=s.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(s.toString()),Ke=`a:`;Ge?(A={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Ke)},j={current:null},We={current:!1}):(A=new class{#e=i({});get data(){return o(this.#e)}set data(e){r(this.#e,e)}#t=i(null);get form(){return o(this.#t)}set form(e){r(this.#t,e)}#n=i(null);get error(){return o(this.#n)}set error(e){r(this.#n,e)}#r=i({});get params(){return o(this.#r)}set params(e){r(this.#r,e)}#i=i({id:null});get route(){return o(this.#i)}set route(e){r(this.#i,e)}#a=i({});get state(){return o(this.#a)}set state(e){r(this.#a,e)}#o=i(-1);get status(){return o(this.#o)}set status(e){r(this.#o,e)}#s=i(new URL(Ke));get url(){return o(this.#s)}set url(e){r(this.#s,e)}},j=new class{#e=i(null);get current(){return o(this.#e)}set current(e){r(this.#e,e)}},We=new class{#e=i(!1);get current(){return o(this.#e)}set current(e){r(this.#e,e)}},Ee.v=()=>We.current=!0);function qe(e){Object.assign(A,e)}var{onMount:Je,tick:Ye}=c,Xe=n??(e=>e()),Ze=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),M=null,N=de(`sveltekit:scroll`)??{},P=de(`sveltekit:snapshot`)??{},F={url:Te({}),page:Te({}),navigating:t(null),updated:De()};function Qe(e){N[e]=T()}function $e(e,t){let n=e+1;for(;N[n];)delete N[n],n+=1;for(n=t+1;P[n];)delete P[n],n+=1}function I(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(h)}async function et(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(x||`/`);e&&await e.update()}}var tt,nt,L,R,rt,z,it={},at={},B=[],V=[],H=null;function ot(){H?.fork?.then(e=>e?.discard()),H=null,Q={element:void 0,href:void 0}}var st=new Map,ct=new Set,lt=new Set,U=new Set,W={branch:[],error:null,url:null,nav:null},ut=!1,G=!1,dt=!0,K=!1,q=!1,ft=!1,pt=!1,mt,J,Y,X,ht=new Set,gt=new Map,_t=new Map;async function vt(e,t,n){if(globalThis.__sveltekit_13evn32.data){let{q:e={},p:t={},l:n={},f:r={}}=globalThis.__sveltekit_13evn32.data;for(let t in e)it[t]=e[t];for(let e in n)it[e]=n[e];for(let e in r)it[e]=r[e];for(let e in t)at[e]=t[e]}document.URL!==location.href&&(location.href=location.href),z=e,await e.hooks.init?.(),tt=ue(e),R=document.documentElement,rt=t,nt=e.nodes[0],L=e.nodes[1],nt(),L(),J=history.state?.[S],Y=history.state?.[C],J||(J=Y=Date.now(),history.replaceState({...history.state,[S]:J,[C]:Y},``));let r=N[J];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await qt(rt,n)):(await Z({type:`enter`,url:be(z.hash?$t(new URL(location.href)):location.href),replace_state:!0}),i()),Kt()}function yt(){B.length=0,pt=!1}function bt(e){V.some(e=>e?.snapshot)&&(P[e]=V.map(e=>e?.snapshot?.capture()))}function xt(e){P[e]?.forEach((e,t)=>{V[t]?.snapshot?.restore(e)})}function St(){Qe(J),fe(ge,N),bt(Y),fe(he,P)}async function Ct(e,t,n,r){let i,o;t.invalidateAll&&ot(),await Z({type:`goto`,url:be(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:r,accept:()=>{if(t.invalidateAll){pt=!0,i=new Set;for(let[e,t]of gt)for(let[n,r]of t)r.resource?.reset(),i.add(k(e,n));o=new Set;for(let[e,t]of _t)for(let n of t.keys())o.add(k(e,n))}t.invalidate&&t.invalidate.forEach(Wt)}}),t.invalidateAll&&a().then(a).then(()=>{for(let[e,t]of gt)for(let[n,{resource:r}]of t)i?.has(k(e,n))&&r.start();for(let[e,t]of _t)for(let[n,{resource:r}]of t)o?.has(k(e,n))&&r.reconnect()})}async function wt(e){if(e.id!==H?.id){ot();let t={};ht.add(t),H={id:e.id,token:t,promise:Pt({...e,preload:t}).then(e=>(ht.delete(t),e.type===`loaded`&&e.state.error&&ot(),e)),fork:null}}return H.promise}async function Tt(e){let t=(await Rt(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function Et(e,t,n){let r={params:W.params,route:{id:W.route?.id??null},url:new URL(location.href)};if(W={...e.state,nav:r},qe(e.props.page),mt=new z.root({target:t,props:{...e.props,stores:F,components:V},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),n){let e={from:null,to:{...r,scroll:N[J]??T()},willUnload:!1,type:`enter`,complete:Promise.resolve()};U.forEach(t=>t(e))}xt(Y),G=!0}async function Dt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(x&&(e.pathname===x||e.pathname===x+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=f(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:Ve(n).map(e=>e.node.component),page:Qt(A)}};s!==void 0&&(l.props.form=s);let u={},d=!A,p=0;for(let e=0;e<Math.max(n.length,W.branch.length);e+=1){let t=n[e],r=W.branch[e];t?.data!==r?.data&&(d=!0),t&&(u={...u,...t.data},d&&(l.props[`data_${p}`]=u),p+=1)}return(!W.url||e.href!==W.url.href||W.error!==a||s!==void 0&&s!==A.form||d)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:d?u:A.data}),l}async function Ot({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},s=await e();return{node:s,loader:e,server:a,universal:s.universal?.load?{type:`data`,data:null,uses:o}:null,data:a?.data??null,slash:s.universal?.trailingSlash??a?.slash}}function kt(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:G?ne(r,i.href,t):y(r,t)}}function At(e,t,n,r,i,a){if(pt)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==W.params[e])return!0;for(let e of i.dependencies)if(B.some(t=>t(new URL(e))))return!0;return!1}function jt(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function Mt(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function Nt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Qt(A),constructors:[]}}}async function Pt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(H?.id===e)return ht.delete(H.token),H.promise;let{errors:o,layouts:s,leaf:c}=i,d=[...s,c];o.forEach(e=>e?.().catch(h)),d.forEach(e=>e?.[1]().catch(h));let f=W.url?e!==Bt(W.url):!1,p=W.route?i.id!==W.route.id:!1,ee=Mt(W.url,n),m=!1,g=d.map(async(e,t)=>{if(!e)return;let a=W.branch[t];return e[1]===a?.loader&&!At(m,p,f,ee,a.universal?.uses,r)?a:(m=!0,Ot({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await g[n])?.data);return e},server_data_node:jt(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of g)e.catch(h);let _=[];for(let e=0;e<d.length;e+=1)if(d[e])try{_.push(await g[e])}catch(t){if(t instanceof u)return{type:`redirect`,location:t.location};if(a&&ht.has(a))return Nt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=He(t),c;if(t instanceof l)c=t.body;else{if(await F.updated.check())return await et(),await I(n);c=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await Ft(e,_,o);return d?Dt({url:n,params:r,branch:_.slice(0,d.idx).concat(d.node),errors:o,status:s,error:c,route:i}):await Ht(n,{id:i.id},c,s)}else _.push(void 0);return Dt({url:n,params:r,branch:_,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function Ft(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function It({status:e,error:t,url:n,route:r}){let i={};try{return Dt({url:n,params:i,branch:[await Ot({loader:nt,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:jt(null)}),{node:await L(),loader:L,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(t){if(t instanceof u){await Ct(new URL(t.location,location.href),{},0);return}let a=await z.get_error_template(),o=await $(t,{url:n,params:i,route:r}),s=a({status:e,message:String(o?.message??``).replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`)}),c=new DOMParser().parseFromString(s,`text/html`);throw document.documentElement.replaceChild(document.adoptNode(c.head),document.head),document.documentElement.replaceChild(document.adoptNode(c.body),document.body),t}}async function Lt(e){let t=e.href;if(st.has(t))return st.get(t);let n;try{let r=(async()=>{let t=await z.hooks.reroute({url:new URL(e),fetch:async(t,n)=>kt(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);z.hash?n.hash=t:n.pathname=t,t=n}return t})();st.set(t,r),n=await r}catch{st.delete(t);return}return n}async function Rt(e,t){if(e&&!O(e,x,z.hash)){let n=await Lt(e);if(!n)return;let r=zt(n);for(let n of tt){let i=n.exec(r);if(i)return{id:Bt(e),invalidating:t,route:n,params:ee(i),url:e}}}}function zt(e){return p(z.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(x.length))||`/`}function Bt(e){return(z.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Vt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=Zt(W,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return K||ct.forEach(e=>e(c)),o?null:s}async function Z({type:t,url:n,popped:r,keepfocus:i,noscroll:o,replace_state:s,state:c={},redirect_count:l=0,nav_token:u={},accept:f=h,block:p=h,event:ee}){let m=X;X=u;let g=await Rt(n,!1),_=t===`enter`?Zt(W,g,n,t):Vt({url:n,type:t,delta:r?.delta,intent:g,scroll:r?.scroll,event:ee});if(!_){p(),X===u&&(X=m);return}let te=J,v=Y;f(),K=!0,G&&_.navigation.type!==`enter`&&F.navigating.set(j.current=_.navigation);let y=g&&await Pt(g);if(!y){if(O(n,x,z.hash))return await I(n,s);y=await Ht(n,{id:null},await $(new d(404,`Not Found`,`Not found: ${n.pathname}`),{url:n,params:{},route:{id:null}}),404,s)}if(n=g?.url||n,X!==u){_.reject(Error(`navigation aborted`));return}if(!y)return;if(y.type===`redirect`){if(l<20){await Z({type:t,url:new URL(y.location,n),popped:r,keepfocus:i,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:u}),_.fulfil(void 0);return}if(y=await It({status:500,error:await $(Error(`Redirect loop`),{url:n,params:{},route:{id:null}}),url:n,route:{id:null}}),!y)return}else if(y.props.page.status>=400&&await F.updated.check())return await et(),await I(n,s);if(yt(),Qe(te),bt(v),y.props.page.url.pathname!==n.pathname&&(n.pathname=y.props.page.url.pathname),c=r?r.state:c,!r){let e=+!s,t={[S]:J+=e,[C]:Y+=e,[_e]:c};(s?history.replaceState:history.pushState).call(history,t,``,n),s||$e(J,Y)}let ne=g&&H?.id===g.id?H.fork:null;H?.fork&&!ne?ot():(H=null,Q={element:void 0,href:void 0}),y.props.page.state=c;let b;if(G){let t=(await Promise.all(Array.from(lt,e=>e(_.navigation)))).filter(e=>typeof e==`function`);if(t.length>0){function e(){t.forEach(e=>{U.delete(e)})}t.push(e),t.forEach(e=>{U.add(e)})}let r=_.navigation.to;W={...y.state,nav:{params:r.params,route:r.route,url:r.url}},y.props.page&&(y.props.page.url=n),!i&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();let a=ne&&await ne;a?b=a.commit():(M=null,mt.$set(y.props),M&&Object.assign(y.props.page,M),qe(y.props.page),b=e?.()),ft=!0}else await Et(y,rt,!1);let{activeElement:re}=document;if(await b,await a(),await a(),X!==u){_.reject(Error(`navigation aborted`));return}y.props.page&&M&&Object.assign(y.props.page,M);let ie=null;if(dt){let e=r?r.scroll:o?T():null;e?scrollTo(e.x,e.y):(ie=n.hash&&document.getElementById(en(n)))?ie.scrollIntoView():scrollTo(0,0)}let ae=document.activeElement!==re&&document.activeElement!==document.body;!i&&!ae&&Xt(n,!ie),dt=!0,K=!1,_.fulfil(void 0),_.navigation.to&&(_.navigation.to.scroll=T()),U.forEach(e=>e(_.navigation)),t===`popstate`&&xt(Y),F.navigating.set(j.current=null)}async function Ht(e,t,n,r,i){return e.origin===ye&&e.pathname===location.pathname&&!ut?await It({status:r,error:n,url:e,route:t}):await I(e,i)}var Q={element:void 0,href:void 0};function Ut(){let e,t;R.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{i(n,w.hover)},20)});function n(e){e.defaultPrevented||i(e.composedPath()[0],w.tap)}R.addEventListener(`mousedown`,n),R.addEventListener(`touchstart`,n,{passive:!0});let r=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(Tt(new URL(t.target.href)),r.unobserve(t.target))},{threshold:0});async function i(e,n){let r=Ce(e,R),i=r===Q.element&&r?.href===Q.href&&n>=t;if(!r||i)return;let{url:a,external:o,download:s}=we(r,x,z.hash);if(o||s)return;let c=D(r),l=a&&Bt(W.url)===Bt(a);if(!(c.reload||l)){if(n<=c.preload_data){Q={element:r,href:r.href},t=w.tap;let e=await Rt(a,!1);if(!e)return;wt(e)}else n<=c.preload_code&&(Q={element:r,href:r.href},t=n,Tt(a))}}function a(){r.disconnect();for(let e of R.querySelectorAll(`a`)){let{url:t,external:n,download:i}=we(e,x,z.hash);if(n||i)continue;let a=D(e);a.reload||(a.preload_code===w.viewport&&r.observe(e),a.preload_code===w.eager&&Tt(t))}}U.add(a),a()}function $(e,t){if(e instanceof l)return e.body;let n=He(e),r=Ue(e);return z.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Wt(e){if(typeof e==`function`)B.push(e);else{let{href:t}=new URL(e,location.href);B.push(e=>e.href===t)}}function Gt(e,t){let n={[S]:J,[C]:Y,[ve]:A.url.href,[_e]:t};history.replaceState(n,``,be(e)),A.state=t,mt.$set({page:Xe(()=>Qt(A))})}function Kt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(St(),!K){let e=Zt(W,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};ct.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&St()}),navigator.connection?.saveData||Ut(),R.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=Ce(t.composedPath()[0],R);if(!n)return;let{url:r,external:i,target:a,download:o}=we(n,x,z.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=D(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&r.protocol!==`https:`&&r.protocol!==`http:`||o)return;let[c,l]=(z.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){Vt({url:r,type:`link`,event:t})?K=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=W.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(q=!0,Qe(J),e(r),!s.replace_state)return;q=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Z({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),R.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(O(r,x,!1))return;let i=e.target,a=D(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Z({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!Yt){if(t.state?.[`sveltekit:history`]){let n=t.state[S];if(X={},n===J)return;let r=N[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[C],s=W.url?m(location)===m(W.url):!1;if(o===Y&&(ft||s)){i!==A.state&&(A.state=i),e(a),N[J]=T(),r&&scrollTo(r.x,r.y),J=n;return}let c=n-J;await Z({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{J=n,Y=o},block:()=>{history.go(-c)},nav_token:X,event:t})}else q||(e(new URL(location.href)),z.hash&&location.reload())}}),addEventListener(`hashchange`,()=>{q&&(q=!1,history.replaceState({...history.state,[S]:++J,[C]:Y},``,location.href))});for(let e of document.querySelectorAll(`link`))Ze.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&F.navigating.set(j.current=null)});function e(e){W.url=A.url=e,F.page.set(Qt(A)),F.page.notify()}}async function qt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){ut=!0;let l=new URL(location.href),d;({params:i={},route:a={id:null}}=await Rt(l,!1)||{}),d=tt.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=Jt(r.uses)),Ot({loader:z.nodes[t],url:l,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:jt(r)})}),o=await Promise.all(e);if(d){let e=d.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await Dt({url:l,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof u)return await I(new URL(t.location,location.href));f=await It({status:He(t),error:await $(t,{url:l,params:i,route:a}),url:l,route:a}),e.textContent=``,p=!1}f&&(f.props.page&&(f.props.page.state={}),await Et(f,e,p))}function Jt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var Yt=!1;function Xt(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=en(e);if(n&&document.getElementById(n)){let{x:r,y:i}=T();setTimeout(()=>{let a=history.state;Yt=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Yt=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function Zt(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(h),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:T()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function Qt(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function $t(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function en(e){let t;if(z.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{Oe as a,A as i,vt as n,j as r,Gt as t};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,n as t}from"../chunks/CsscK9Dm.js";export{e as load_css,t as start};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{L as e,N as t,P as n,Q as r,R as i,S as a,V as o,_ as s,c,h as l,w as u}from"../chunks/ZAD2y5xJ.js";import"../chunks/xihTtKlq.js";var d=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='107'%20height='128'%20viewBox='0%200%20107%20128'%3e%3ctitle%3esvelte-logo%3c/title%3e%3cpath%20d='M94.157%2022.819c-10.4-14.885-30.94-19.297-45.792-9.835L22.282%2029.608A29.92%2029.92%200%200%200%208.764%2049.65a31.5%2031.5%200%200%200%203.108%2020.231%2030%2030%200%200%200-4.477%2011.183%2031.9%2031.9%200%200%200%205.448%2024.116c10.402%2014.887%2030.942%2019.297%2045.791%209.835l26.083-16.624A29.92%2029.92%200%200%200%2098.235%2078.35a31.53%2031.53%200%200%200-3.105-20.232%2030%2030%200%200%200%204.474-11.182%2031.88%2031.88%200%200%200-5.447-24.116'%20style='fill:%23ff3e00'/%3e%3cpath%20d='M45.817%20106.582a20.72%2020.72%200%200%201-22.237-8.243%2019.17%2019.17%200%200%201-3.277-14.503%2018%2018%200%200%201%20.624-2.435l.49-1.498%201.337.981a33.6%2033.6%200%200%200%2010.203%205.098l.97.294-.09.968a5.85%205.85%200%200%200%201.052%203.878%206.24%206.24%200%200%200%206.695%202.485%205.8%205.8%200%200%200%201.603-.704L69.27%2076.28a5.43%205.43%200%200%200%202.45-3.631%205.8%205.8%200%200%200-.987-4.371%206.24%206.24%200%200%200-6.698-2.487%205.7%205.7%200%200%200-1.6.704l-9.953%206.345a19%2019%200%200%201-5.296%202.326%2020.72%2020.72%200%200%201-22.237-8.243%2019.17%2019.17%200%200%201-3.277-14.502%2017.99%2017.99%200%200%201%208.13-12.052l26.081-16.623a19%2019%200%200%201%205.3-2.329%2020.72%2020.72%200%200%201%2022.237%208.243%2019.17%2019.17%200%200%201%203.277%2014.503%2018%2018%200%200%201-.624%202.435l-.49%201.498-1.337-.98a33.6%2033.6%200%200%200-10.203-5.1l-.97-.294.09-.968a5.86%205.86%200%200%200-1.052-3.878%206.24%206.24%200%200%200-6.696-2.485%205.8%205.8%200%200%200-1.602.704L37.73%2051.72a5.42%205.42%200%200%200-2.449%203.63%205.79%205.79%200%200%200%20.986%204.372%206.24%206.24%200%200%200%206.698%202.486%205.8%205.8%200%200%200%201.602-.704l9.952-6.342a19%2019%200%200%201%205.295-2.328%2020.72%2020.72%200%200%201%2022.237%208.242%2019.17%2019.17%200%200%201%203.277%2014.503%2018%2018%200%200%201-8.13%2012.053l-26.081%2016.622a19%2019%200%200%201-5.3%202.328'%20style='fill:%23fff'/%3e%3c/svg%3e`,f=u(`<link rel="icon"/>`),p=u(`<div class="flex h-dvh min-h-[30rem] flex-col overflow-hidden bg-neutral-950 font-sans text-neutral-100 antialiased selection:bg-sky-900/60"><header class="flex-none border-b border-neutral-900 bg-neutral-950/90"><div class="flex w-full items-baseline gap-3 px-3 py-2 sm:px-4"><span class="text-sm font-semibold tracking-tight">watch<span class="text-sky-400">-stream</span></span> <span class="hidden text-xs text-neutral-500 sm:inline">Tail CloudWatch Logs in the browser</span></div></header> <main class="flex min-h-0 w-full flex-1 flex-col gap-3 px-3 py-3 sm:px-4"><!></main></div>`);function m(u,m){var h=p();l(`12qhfyh`,r=>{var i=f();n(()=>c(i,`href`,d)),t(()=>{e.title=`watch-stream`}),a(r,i)});var g=o(i(h),2),_=i(g);s(_,()=>m.children),r(g),r(h),a(u,h)}export{m as component};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import{B as e,C as t,D as n,E as r,F as i,G as a,H as o,J as s,O as c,P as l,Q as u,R as d,S as f,T as p,U as m,V as h,W as g,Y as _,Z as v,a as y,b,c as x,d as S,f as C,i as w,k as T,l as E,m as D,n as O,o as k,p as A,s as j,u as M,v as N,w as P,x as F,y as I,z as ee}from"../chunks/ZAD2y5xJ.js";import{t as te}from"../chunks/CsscK9Dm.js";import"../chunks/xihTtKlq.js";import{t as L}from"../chunks/KFjMNKuK.js";var R=`--:--:--.---`;function z(e,t=2){return String(Math.trunc(Math.abs(e))).padStart(t,`0`)}function ne(e){if(typeof e!=`number`||!Number.isFinite(e))return R;let t=new Date(e);return Number.isNaN(t.getTime())?R:`${`${z(t.getUTCHours())}:${z(t.getUTCMinutes())}:${z(t.getUTCSeconds())}`}.${z(t.getUTCMilliseconds(),3)}`}function B(e){if(typeof e!=`number`||!Number.isFinite(e))return`—`;let t=new Date(e);return Number.isNaN(t.getTime())?`—`:t.toISOString()}function re(e){let t=e>=100?e.toFixed(0):e.toFixed(1);return t.endsWith(`.0`)?t.slice(0,-2):t}function ie(e){if(typeof e!=`number`||!Number.isFinite(e)||e<0)return`—`;if(e<1024)return`${Math.trunc(e)} B`;let t=[`KiB`,`MiB`,`GiB`,`TiB`],n=e/1024,r=t[0];for(let e=1;e<t.length&&n>=1024;e+=1)n/=1024,r=t[e];return`${re(n)} ${r}`}function V(e){if(typeof e!=`number`||!Number.isFinite(e))return`0`;let t=Math.trunc(e);return(t<0?`-`:``)+String(Math.abs(t)).replace(/\B(?=(\d{3})+(?!\d))/g,`,`)}function ae(e){let t=typeof e==`string`?e.trim():``;if(t===``)return null;let n=t.toLowerCase();return n.includes(`floci`)?`floci`:n.includes(`localstack`)?`localstack`:H(t)===`4566`?`floci`:`local emulator`}function H(e){return U(e)?.port||null}function U(e){try{return new URL(e)}catch{return null}}function oe(e){let t=typeof e==`string`?e.trim():``;if(t===``)return null;let n=ae(t);return n===null?null:(U(t)?.hostname.toLowerCase()??t.toLowerCase()).startsWith(n)?t:`${n} ${t}`}var se=P(`<span data-testid="credentials-hint" class="text-[0.6875rem] text-neutral-500">dev creds</span>`),ce=P(`<span class="inline-flex items-center gap-1.5"><span data-testid="endpoint-badge" class="rounded-full border border-violet-900 bg-violet-950/60 px-2.5 py-1 text-xs font-medium text-violet-300"> </span> <!></span>`);function le(n,r){_(r,!0);let i=w(r,`endpoint`,3,null),o=w(r,`credentials`,3,null),c=a(()=>oe(i())),p=a(()=>o()===`emulator-default`),m=a(()=>T(p)?`Local emulator endpoint - using floci's throwaway credentials (no ambient AWS credentials found)`:`Local emulator endpoint`);var g=t(),v=ee(g),y=t=>{var n=ce(),r=d(n),i=e(r,!0),a=h(r,2),o=e=>{var t=se();f(e,t)};b(a,e=>{T(p)&&e(o)}),u(n),l(()=>{x(n,`title`,T(m)),x(r,`title`,T(m)),F(i,T(c))}),f(t,n)};b(v,e=>{T(c)!==null&&e(y)}),f(n,g),s()}var W={sidebarWidth:`watch-stream:sidebar-width`,prefixWidth:`watch-stream:prefix-width`,wrap:`watch-stream:wrap`,jsonView:`watch-stream:json-view`},G={defaultRem:22,minRem:16,maxVw:44},ue={defaultRem:14,minRem:4,maxRem:40};function K(e,t,n){let r=Math.min(t,n),i=Math.max(t,n);return Number.isNaN(e)?r:Math.min(Math.max(e,r),i)}function de(e,t,n,r){if(typeof e!=`string`||e.trim()===``)return K(t,n,r);let i=Number(e);return K(Number.isFinite(i)?i:t,n,r)}function fe(e){let{startWidth:t,startX:n,currentX:r,min:i,max:a}=e;return K(t+(r-n),i,a)}function q(e){let{width:t,key:n,step:r=16,min:i,max:a}=e;return K(n!==`ArrowLeft`&&n!==`ArrowRight`?t:t+(n===`ArrowLeft`?-r:r),i,a)}function pe(e,t=16){let n=e/t;return`${Number.isInteger(n)?n:Number(n.toFixed(3))}rem`}function J(e,t=16){return e*t}var Y=P(`<div role="separator" aria-orientation="vertical" tabindex="0"></div>`);function me(e,t){_(t,!0);let r=w(t,`class`,3,``),i=w(t,`style`,3,``),a=null;function o(e){a={x:e.clientX,width:t.width},e.currentTarget.setPointerCapture?.(e.pointerId),e.preventDefault()}function u(e){a!==null&&(t.onChange(fe({startWidth:a.width,startX:a.x,currentX:e.clientX,min:t.min,max:t.max})),e.preventDefault())}function d(e){a!==null&&(a=null,e.currentTarget.releasePointerCapture?.(e.pointerId),t.onCommit?.(t.width))}function p(e){let n=q({width:t.width,key:e.key,min:t.min,max:t.max});n!==t.width&&(e.preventDefault(),t.onChange(n),t.onCommit?.(n))}var m=Y();l(e=>{x(m,`aria-label`,t.label),x(m,`aria-valuemin`,t.min),x(m,`aria-valuemax`,t.max),x(m,`aria-valuenow`,e),x(m,`title`,`${t.label??``} (drag or use the arrow keys)`),x(m,`data-testid`,t.testId),A(m,1,`cursor-col-resize touch-none bg-transparent hover:bg-sky-500/30 focus:bg-sky-500/50 focus:outline-none ${r()??``}`),C(m,i())},[()=>Math.round(t.width)]),n(`pointerdown`,m,o),n(`pointermove`,m,u),n(`pointerup`,m,d),c(`pointercancel`,m,d),n(`keydown`,m,p),f(e,m),s()}r([`pointerdown`,`pointermove`,`pointerup`,`keydown`]);var X=[`15m`,`1h`,`3h`,`12h`,`24h`,`5d`],he={"15m":`15 min`,"1h":`1 hour`,"3h":`3 hours`,"12h":`12 hours`,"24h":`24 hours`,"5d":`5 days`};function ge(e){return X.includes(e)}function Z(e){return ge(e)?he[e]:e}function Q(e){return String(e).padStart(2,`0`)}function _e(e){let t=new Date(e);return`${t.getFullYear()}-${Q(t.getMonth()+1)}-${Q(t.getDate())}T${Q(t.getHours())}:${Q(t.getMinutes())}`}function ve(e){if(typeof e!=`string`||e.trim()===``)return null;let t=Date.parse(e);return Number.isNaN(t)?null:t}function $(e,t){let n=new Date(e),r=`${String(n.getHours()).padStart(2,`0`)}:${String(n.getMinutes()).padStart(2,`0`)}`;return new Date(t).toDateString()===n.toDateString()?r:`${n.toLocaleDateString(void 0,{day:`numeric`,month:`short`})} ${r}`}function ye(e,t){if(e===null||e.startTime===void 0)return{mode:`live`,label:`live`,title:`Tailing new events`,clamped:!1};let n=e.clamped===!0;if(e.mode!==`historic`||e.endTime===null||e.endTime===void 0)return{mode:`live`,label:`live`,title:`Live since ${$(e.startTime,t)}`,clamped:n};let r=$(e.startTime,t),i=$(e.endTime,t),a=e.preset===null||e.preset===void 0?null:Z(e.preset);return{mode:`historic`,label:a===null?`${r} → ${i}`:`${a} · ${r} → ${i}`,title:n?`Historic window, clamped to the last 14 days that CloudWatch Logs keeps`:`Historic window`,clamped:n}}var be=P(`<button type="button"> </button>`),xe=P(`<div class="flex flex-wrap items-center gap-1" role="group" aria-label="Historic range"><!> <button type="button" data-testid="preset-custom"> </button></div>`),Se=P(`<span class="text-xs text-amber-300" data-testid="range-loading">loading window…</span>`),Ce=P(`<span class="text-xs text-neutral-500"> </span>`),we=P(`<span class="text-xs text-red-300" role="alert" data-testid="custom-error"> </span>`),Te=P(`<div class="flex flex-wrap items-center gap-2 rounded-lg border border-neutral-800 bg-neutral-900/70 p-2" data-testid="custom-window"><label class="flex items-center gap-1 text-xs text-neutral-400">From <input type="datetime-local" data-testid="custom-from" class="rounded-md border border-neutral-800 bg-neutral-950 px-2 py-1 text-xs text-neutral-100"/></label> <label class="flex items-center gap-1 text-xs text-neutral-400">To <input type="datetime-local" data-testid="custom-to" class="rounded-md border border-neutral-800 bg-neutral-950 px-2 py-1 text-xs text-neutral-100"/></label> <button type="button" data-testid="custom-apply" class="rounded-md border border-sky-800 bg-sky-950/60 px-2 py-1 text-xs font-medium text-sky-200 hover:border-sky-600">Apply</button> <!></div>`),Ee=P(`<div class="flex flex-wrap items-center gap-2" data-testid="range-controls"><div class="flex items-center gap-1 rounded-lg border border-neutral-800 bg-neutral-900 p-0.5" role="group" aria-label="Tail mode"><button type="button" data-testid="mode-live">Live</button> <button type="button" data-testid="mode-historic">Historic</button></div> <!> <!> <!></div>`);function De(t,r){_(r,!0);let o=w(r,`mode`,3,`live`),c=w(r,`range`,3,`15m`),p=w(r,`from`,3,null),v=w(r,`to`,3,null),y=w(r,`disabled`,3,!1),S=w(r,`loading`,3,!1),C=g(!1),E=g(``),D=g(``),O=g(null);i(()=>{let e=p()??(v()??Date.now())-36e5,t=v()??Date.now();m(E,_e(e),!0),m(D,_e(t),!0),m(C,o()===`historic`&&c()===``&&p()!==null&&v()!==null,!0)});function M(e){e!==o()&&r.onApply?.({mode:e,range:e===`live`?``:c()===``?`15m`:c(),from:null,to:null})}function P(e){m(O,null),r.onApply?.({mode:`historic`,range:e,from:null,to:null})}function I(){m(O,null),m(C,!0)}function ee(){let e=ve(T(E)),t=ve(T(D));if(e===null||t===null){m(O,`Pick both a start and an end time.`);return}if(t<=e){m(O,`The end must be after the start.`);return}if(t-e>12096e5){m(O,`CloudWatch Logs only keeps 14 days.`);return}m(O,null),r.onApply?.({mode:`historic`,range:``,from:e,to:t})}let te=a(()=>o()===`historic`&&c()===``&&p()!==null&&v()!==null?`${_e(p()).replace(`T`,` `)} → ${_e(v()).replace(`T`,` `)}`:`Custom…`);var L=Ee(),R=d(L),z=d(R),ne=h(z,2);u(R);var B=h(R,2),re=t=>{var r=xe(),i=d(r);N(i,16,()=>X,e=>e,(t,r)=>{var i=be(),a=e(i,!0);l(()=>{x(i,`aria-pressed`,c()===r),x(i,`data-testid`,`preset-${r??``}`),i.disabled=y(),A(i,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${c()===r?`border-amber-700 bg-amber-950/50 text-amber-200`:`border-neutral-800 bg-neutral-900 text-neutral-300 hover:border-neutral-700`} disabled:opacity-40`),F(a,he[r])}),n(`click`,i,()=>P(r)),f(t,i)});var a=h(i,2),o=e(a,!0);u(r),l(()=>{x(a,`aria-pressed`,c()===``),a.disabled=y(),A(a,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${c()===``?`border-amber-700 bg-amber-950/50 text-amber-200`:`border-neutral-800 bg-neutral-900 text-neutral-300 hover:border-neutral-700`}`),F(o,T(te))}),n(`click`,a,I),f(t,r)};b(B,e=>{o()===`historic`&&e(re)});var ie=h(B,2),V=e=>{var t=Se();f(e,t)},ae=t=>{var n=Ce(),r=e(n);l(e=>F(r,`last ${e??``}`),[()=>Z(c())]),f(t,n)};b(ie,e=>{S()?e(V):o()===`historic`&&c()!==``&&e(ae,1)});var H=h(ie,2),U=t=>{var r=Te(),i=d(r),a=h(d(i));j(a),u(i);var o=h(i,2),s=h(d(o));j(s),u(o);var c=h(o,2),p=h(c,2),g=t=>{var n=we(),r=e(n,!0);l(()=>F(r,T(O))),f(t,n)};b(p,e=>{T(O)!==null&&e(g)}),u(r),k(a,()=>T(E),e=>m(E,e)),k(s,()=>T(D),e=>m(D,e)),n(`click`,c,ee),f(t,r)};b(H,e=>{T(C)&&o()===`historic`&&e(U)}),u(L),l(()=>{x(z,`aria-pressed`,o()===`live`),A(z,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${o()===`live`?`border-sky-700 bg-sky-950/60 text-sky-300`:`border-transparent text-neutral-400 hover:text-neutral-200`}`),x(ne,`aria-pressed`,o()===`historic`),A(ne,1,`rounded-md border px-2 py-1 text-xs font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${o()===`historic`?`border-amber-700 bg-amber-950/50 text-amber-300`:`border-transparent text-neutral-400 hover:text-neutral-200`}`)}),n(`click`,z,()=>M(`live`)),n(`click`,ne,()=>M(`historic`)),f(t,L),s()}r([`click`]);var Oe=`us-east-1.us-east-2.us-west-1.us-west-2.ca-central-1.ca-west-1.mx-central-1.sa-east-1.eu-west-1.eu-west-2.eu-west-3.eu-central-1.eu-central-2.eu-north-1.eu-south-1.eu-south-2.af-south-1.me-south-1.me-central-1.il-central-1.ap-east-1.ap-south-1.ap-south-2.ap-southeast-1.ap-southeast-2.ap-southeast-3.ap-southeast-4.ap-southeast-5.ap-southeast-6.ap-southeast-7.ap-northeast-1.ap-northeast-2.ap-northeast-3`.split(`.`),ke=class extends Error{status;code;details;constructor(e,t={}){super(e,{cause:t.cause}),this.name=`ApiError`,this.status=t.status??0,this.code=t.code,this.details=t.details}};function Ae(e,t){if(typeof e!=`object`||!e)return;let n=e[t];return typeof n==`string`?n:void 0}function je(e,t=`Unexpected API error`){return Ae(e,`error`)??t}function Me(e){let t=new URLSearchParams;e.region&&t.set(`region`,e.region),e.prefix&&t.set(`prefix`,e.prefix),typeof e.limit==`number`&&Number.isFinite(e.limit)&&t.set(`limit`,String(e.limit));let n=t.toString();return n===``?`/api/log-groups`:`/api/log-groups?${n}`}function Ne(e){return e instanceof Error&&e.name===`AbortError`}async function Pe(e,t){let n=t.fetchImpl??fetch,r;try{r=await n(e,{headers:{accept:`application/json`},signal:t.signal})}catch(t){throw Ne(t)?t:new ke(`Could not reach ${e}.`,{cause:t})}let i=await r.text(),a=null;if(i.trim()!==``)try{a=JSON.parse(i)}catch{a=null}if(!r.ok)throw new ke(je(a,`Request to ${e} failed with ${r.status}.`),{status:r.status,code:Ae(a,`code`),details:Ae(a,`details`)});return a}function Fe(e={}){return Pe(`/api/regions`,e)}function Ie(e={}){return Pe(`/api/health`,e)}function Le(e){return Pe(Me(e),e)}function Re(e){return`No log groups found in ${e}. Start floci and run \`pnpm seed\` to create sample groups.`}function ze(e){return e.trim().replace(/\.+$/,``)}function Be(e,t){if(t instanceof ke){let n=t.details?` ${t.details}`:``;return`Could not list log groups in ${e}: ${ze(t.message)}.${n}`}return`Could not reach the watch-stream API for ${e}. ${t instanceof Error&&t.message!==``?t.message:String(t)}`}function Ve(e,t,n){return`${n} (${t===null||t===``?e:`${t} in ${e}`})`}var He=P(`<p role="alert" data-testid="group-error" class="rounded-md border border-red-900 bg-red-950/50 px-3 py-2 text-xs leading-5 text-red-300"> </p>`),Ue=P(`<div class="h-5 animate-pulse rounded bg-neutral-800/80"></div>`),We=P(`<div class="flex flex-col gap-2" data-testid="group-loading" aria-busy="true"><!> <p class="text-xs text-neutral-500">Loading log groups…</p></div>`),Ge=P(`<p data-testid="group-empty" class="rounded-md border border-neutral-800 bg-neutral-900/60 px-3 py-2 text-xs leading-5 text-neutral-400"> </p>`),Ke=P(`<p data-testid="group-no-match" class="px-1 py-2 text-xs text-neutral-500"> </p>`),qe=P(`<span class="shrink-0 text-[0.6875rem] text-neutral-500"> </span>`),Je=P(`<li><button type="button" data-testid="group-row"><span class="truncate font-mono"> </span> <!></button></li>`),Ye=P(`<p class="text-[0.6875rem] text-neutral-500" data-testid="group-truncated"> </p>`),Xe=P(`<ul class="flex min-h-0 flex-1 flex-col gap-1 overflow-y-auto pr-1"></ul> <!>`,1),Ze=P(`<section class="flex min-h-0 flex-1 flex-col gap-3"><div class="flex items-center justify-between gap-2"><div class="flex items-baseline gap-2"><h2 class="text-sm font-semibold text-neutral-200">Log groups</h2> <span class="text-xs text-neutral-500" data-testid="group-count"> </span></div> <button type="button" class="rounded-md border border-neutral-800 bg-neutral-900 px-2 py-1 text-xs font-medium text-neutral-300 transition-colors hover:border-neutral-700 hover:text-neutral-100 disabled:cursor-not-allowed disabled:opacity-50"> </button></div> <div class="flex flex-col gap-1.5"><label class="sr-only" for="group-search">Search log groups</label> <input id="group-search" type="search" placeholder="Search log groups" class="w-full rounded-md border border-neutral-800 bg-neutral-900 px-2.5 py-1.5 text-sm text-neutral-100 outline-none transition-colors placeholder:text-neutral-600 hover:border-neutral-700 focus:border-sky-600"/></div> <!></section>`);function Qe(t,r){_(r,!0);let i=w(r,`groups`,19,()=>[]),o=w(r,`region`,3,``),c=w(r,`selected`,3,null),p=w(r,`loading`,3,!1),y=w(r,`error`,3,null),S=w(r,`maxRows`,3,500),C=g(``),D=a(()=>i().filter(e=>e.name.toLowerCase().includes(T(C).trim().toLowerCase()))),O=a(()=>T(D).slice(0,S())),k=a(()=>T(D).length>T(O).length),M=a(()=>T(C).trim());function P(e){return e===c()?`border-sky-800 bg-sky-950/50 text-sky-200`:`border-transparent bg-neutral-900/60 text-neutral-300 hover:border-neutral-800 hover:text-neutral-100`}var te=Ze(),L=d(te),R=d(L),z=h(d(R),2),ne=e(z);u(R);var B=h(R,2),re=e(B,!0);u(L);var ae=h(L,2),H=h(d(ae),2);j(H),u(ae);var U=h(ae,2),oe=t=>{var n=He(),r=e(n,!0);l(()=>F(r,y())),f(t,n)},se=e=>{var t=We(),n=d(t);N(n,16,()=>Array.from({length:5}),I,(e,t)=>{var n=Ue();f(e,n)}),v(2),u(t),f(e,t)},ce=t=>{var n=Ge(),r=e(n,!0);l(e=>F(r,e),[()=>Re(o())]),f(t,n)},le=t=>{var n=Ke(),r=e(n);l(()=>F(r,`No log groups match “${T(M)??``}”.`)),f(t,n)},W=t=>{var i=Xe(),a=ee(i);N(a,21,()=>T(O),e=>e.arn??e.name,(t,i)=>{var a=Je(),o=d(a),s=d(o),p=e(s,!0),m=h(s,2),g=t=>{var n=qe(),r=e(n,!0);l(e=>F(r,e),[()=>ie(T(i).storedBytes)]),f(t,n)};b(m,e=>{T(i).storedBytes!==void 0&&e(g)}),u(o),u(a),l(e=>{x(o,`aria-current`,T(i).name===c()?`true`:void 0),A(o,1,`flex w-full items-center justify-between gap-2 rounded-md border px-2.5 py-1.5 text-left text-xs transition-colors ${e??``}`),F(p,T(i).name)},[()=>P(T(i).name)]),n(`click`,o,()=>r.onSelect?.(T(i).name)),f(t,a)}),u(a);var o=h(a,2),s=t=>{var n=Ye(),r=e(n);l((e,t)=>F(r,`Showing first ${e??``} of ${t??``} groups.`),[()=>V(S()),()=>V(T(D).length)]),f(t,n)};b(o,e=>{T(k)&&e(s)}),f(t,i)};b(U,e=>{y()!==null&&y()!==``?e(oe):p()&&i().length===0?e(se,1):i().length===0?e(ce,2):T(O).length===0?e(le,3):e(W,-1)}),u(te),l((e,t)=>{F(ne,`${e??``} of ${t??``}`),B.disabled=p(),F(re,p()?`Refreshing…`:`Refresh`),E(H,T(C))},[()=>V(T(D).length),()=>V(i().length)]),n(`click`,B,()=>r.onRefresh?.()),n(`input`,H,e=>m(C,e.currentTarget.value,!0)),f(t,te),s()}r([`click`,`input`]);var $e=P(`<span data-testid="status-badge"><span aria-hidden="true"></span> </span>`);function et(e,t){let n={idle:`idle`,connecting:`connecting`,live:`live`,reconnecting:`reconnecting`,error:`error`,ended:`ended`},r={idle:`border-neutral-700 bg-neutral-800/60 text-neutral-400`,connecting:`border-sky-900 bg-sky-950/70 text-sky-300`,live:`border-emerald-900 bg-emerald-950/70 text-emerald-300`,reconnecting:`border-amber-900 bg-amber-950/70 text-amber-300`,error:`border-red-900 bg-red-950/70 text-red-300`,ended:`border-neutral-700 bg-neutral-800/60 text-neutral-400`},i={idle:`bg-neutral-500`,connecting:`bg-sky-400 animate-pulse`,live:`bg-emerald-400`,reconnecting:`bg-amber-400 animate-pulse`,error:`bg-red-400`,ended:`bg-neutral-500`},o=a(()=>r[t.status]),s=a(()=>i[t.status]),c=a(()=>n[t.status]);var p=$e(),m=d(p),g=h(m);u(p),l(()=>{x(p,`data-status`,t.status),A(p,1,`inline-flex items-center gap-1.5 rounded-full border px-2.5 py-1 text-xs font-medium ${T(o)??``}`),A(m,1,`size-1.5 rounded-full ${T(s)??``}`),F(g,` ${T(c)??``}`)}),f(e,p)}var tt=5e3,nt=/\b(ERROR|FATAL|CRITICAL|CRIT|PANIC|EXCEPTION|TRACEBACK|SEVERE|FAILED|FAILURE)\b/,rt=/\b(WARN|WARNING)\b/,it=/\b(DEBUG|TRACE|VERBOSE)\b/;function at(e){let t=(e??``).toUpperCase();return nt.test(t)?`error`:rt.test(t)?`warn`:it.test(t)?`debug`:`info`}function ot(e){switch(e){case`error`:return`text-red-400`;case`warn`:return`text-amber-300`;case`debug`:return`text-neutral-500`;default:return`text-neutral-200`}}function st(e,t){return`${e.id??`no-id`}:${e.timestamp}:${t}`}function ct(e,t){let n=(t??``).trim().toLowerCase();return n===``||`${e.message??``} ${e.streamName??``}`.toLowerCase().includes(n)}function lt(e,t){return(t??``).trim()===``?e.slice():e.filter(e=>ct(e,t))}function ut(e){return Array.from({length:e})}var dt=class{capacity;#e;#t=0;#n=0;#r=0;constructor(e=tt){if(!Number.isInteger(e)||e<=0)throw RangeError(`capacity must be a positive integer, received ${e}`);this.capacity=e,this.#e=ut(e)}get size(){return this.#n}get dropped(){return this.#r}get full(){return this.#n===this.capacity}push(e){this.#n===this.capacity&&(this.#r+=1,this.#t=(this.#t+1)%this.capacity,--this.#n);let t=(this.#t+this.#n)%this.capacity;this.#e[t]=e,this.#n+=1}pushMany(e){for(let t of e)this.push(t)}toArray(){let e=ut(this.#n);for(let t=0;t<this.#n;t+=1)e[t]=this.#e[(this.#t+t)%this.capacity];return e}first(){return this.#n===0?void 0:this.#e[this.#t]}last(){return this.#n===0?void 0:this.#e[(this.#t+this.#n-1)%this.capacity]}clear(){this.#e=ut(this.capacity),this.#t=0,this.#n=0,this.#r=0}},ft=class{buffer;#e;#t=!1;constructor(e=tt){this.buffer=new dt(e),this.#e=new dt(e)}get paused(){return this.#t}get size(){return this.buffer.size}get pendingCount(){return this.#e.size}get droppedCount(){return this.buffer.dropped}push(e){if(this.#t){this.#e.pushMany(e);return}this.buffer.pushMany(e)}setPaused(e){return e===this.#t?[]:(this.#t=e,e?[]:this.flush())}pause(){this.#t=!0}resume(){return this.#t=!1,this.flush()}flush(){let e=this.#e.toArray();return this.#e.clear(),this.buffer.pushMany(e),e}toArray(){return this.buffer.toArray()}clear(){this.buffer.clear(),this.#e.clear()}};function pt(e){if(typeof e!=`string`)return null;let t=e.trim();if(t.length===0)return null;let n=t[0];if(n!==`{`&&n!==`[`)return null;try{let e=JSON.parse(t);return typeof e!=`object`||!e?null:e}catch{return null}}function mt(e,t={}){let{prettyJson:n=!0}=t,r=pt(e);return r===null||!n?{text:e,isJson:r!==null,value:r}:{text:JSON.stringify(r,null,2),isJson:!0,value:r}}var ht=/^-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function gt(e){let t=[],n=0,r=(e,n)=>{n.length>0&&t.push({type:e,text:n})};for(;n<e.length;){let t=e[n];if(t===` `||t===`
|
|
2
|
-
`||t===` `||t===`\r`){let t=n;for(;t<e.length&&`
|
|
3
|
-
\r`.includes(e[t]);)t+=1;r(`whitespace`,e.slice(n,t)),n=t;continue}if(t===`"`){let t=n+1;for(;t<e.length;){if(e[t]===`\\`){t+=2;continue}if(e[t]===`"`)break;t+=1}let i=e.slice(n,Math.min(t+1,e.length)),a=n+i.length;for(;a<e.length&&`
|
|
4
|
-
\r`.includes(e[a]);)a+=1;r(e[a]===`:`?`key`:`string`,i),n+=i.length;continue}if(t===`{`||t===`}`||t===`[`||t===`]`||t===`,`||t===`:`){r(`punctuation`,t),n+=1;continue}if(e.startsWith(`true`,n)||e.startsWith(`false`,n)){let t=e.startsWith(`true`,n)?`true`:`false`;r(`boolean`,t),n+=t.length;continue}if(e.startsWith(`null`,n)){r(`null`,`null`),n+=4;continue}let i=n;for(;i<e.length&&!`{}[],:"
|
|
5
|
-
\r`.includes(e[i]);)i+=1;let a=e.slice(n,Math.max(i,n+1));r(ht.test(a)?`number`:`other`,a),n+=a.length}return t}var _t=P(`<span class="text-xs text-amber-300" data-testid="pending-count"> </span>`),vt=P(`<span class="text-xs text-amber-300/80" data-testid="dropped-count"> </span>`),yt=P(`<span class="text-[0.6875rem] text-amber-400/80" data-testid="window-clamped">14-day limit</span>`),bt=P(`<span class="text-[0.6875rem] text-emerald-400/80" data-testid="window-complete">window complete</span>`),xt=P(`<p role="alert" data-testid="stream-error" class="border-b border-red-900 bg-red-950/50 px-3 py-2 text-xs leading-5 text-red-300"> </p>`),St=P(`<p class="px-3 py-6 text-sm text-neutral-500" data-testid="viewer-idle">Select a log group to start tailing.</p>`),Ct=P(`<p class="px-3 py-6 text-sm text-neutral-500" data-testid="viewer-empty"> </p>`),wt=P(`<span> </span>`),Tt=P(`<li data-testid="log-line"><span class="w-[7.5rem] shrink-0 text-neutral-500"> </span> <span class="shrink-0 truncate text-sky-400/80" data-testid="log-stream"> </span> <span data-testid="log-message"><!></span></li>`),Et=P(`<div data-testid="log-canvas"><ol class="font-mono text-xs leading-5" data-testid="log-lines"></ol> <!></div>`),Dt=P(`<section class="flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden rounded-lg border border-neutral-800 bg-neutral-950"><div class="flex flex-wrap items-center gap-x-3 gap-y-2 border-b border-neutral-800 bg-neutral-900/40 px-3 py-2"><!> <span class="text-xs text-neutral-400" data-testid="visible-count"> </span> <span class="text-xs text-neutral-500" data-testid="received-count"> </span> <!> <!> <span data-testid="window-chip"> </span> <!> <!> <div class="ml-auto flex flex-wrap items-center gap-2"><input type="search" aria-label="Filter log lines" placeholder="Filter lines" class="w-40 rounded-md border border-neutral-800 bg-neutral-900 px-2 py-1 text-xs text-neutral-100 outline-none transition-colors placeholder:text-neutral-600 hover:border-neutral-700 focus:border-sky-600"/> <button type="button" title="Wrap long lines instead of scrolling sideways" data-testid="wrap-toggle">Wrap</button> <button type="button" title="Pretty-print JSON log entries" data-testid="json-toggle">JSON</button> <button type="button" class="rounded-md border border-neutral-800 bg-neutral-900 px-2 py-1 text-xs font-medium text-neutral-300 transition-colors hover:border-neutral-700 hover:text-neutral-100"> </button> <button type="button" class="rounded-md border border-neutral-800 bg-neutral-900 px-2 py-1 text-xs font-medium text-neutral-300 transition-colors hover:border-neutral-700 hover:text-neutral-100">Clear</button> <button type="button">Auto-scroll</button></div></div> <!> <div class="min-h-0 min-w-0 flex-1 overflow-auto bg-neutral-950" data-testid="log-scroller"><!></div></section>`);function Ot(r,c){_(c,!0);let v=w(c,`lines`,19,()=>[]),S=w(c,`status`,3,`idle`),k=w(c,`error`,3,null),M=w(c,`region`,3,``),P=w(c,`group`,3,null),I=w(c,`filter`,3,``),te=w(c,`paused`,3,!1),L=w(c,`autoScroll`,3,!0),R=w(c,`pendingCount`,3,0),z=w(c,`droppedCount`,3,0),re=w(c,`receivedCount`,3,0),ie=w(c,`mode`,3,`live`),ae=w(c,`ready`,3,null),H=w(c,`endReason`,3,null),U=J(7.5),oe=J(.75),se=J(.5),ce=J(ue.minRem),le=J(ue.maxRem),G=J(ue.defaultRem);function K(e){try{return typeof localStorage>`u`?null:localStorage.getItem(e)}catch{return null}}function fe(e,t){try{if(typeof localStorage>`u`)return;localStorage.setItem(e,t)}catch{}}let q=g(!1),Y=g(!0),X=g(o(G));O(()=>{m(q,K(W.wrap)===`true`),m(Y,K(W.jsonView)!==`false`),m(X,de(K(W.prefixWidth),G,ce,le),!0)});let he=a(()=>lt(v(),I())),ge=a(()=>T(he).map((e,t)=>{let n=at(e.message),r=mt(e.message,{prettyJson:T(Y)});return{key:st(e,t),time:ne(e.timestamp),timestamp:B(e.timestamp),streamName:e.streamName,message:r.text,tokens:T(Y)&&r.isJson?gt(r.text):null,level:n,levelClass:ot(n)}})),Z=g(null);i(()=>{let e=T(ge).length;L()&&T(Z)!==null&&e!==0&&(T(Z).scrollTop=T(Z).scrollHeight)});let Q=a(()=>k()===null?null:Ve(M(),P(),k().message)),_e=a(()=>P()===null||P()===``?`Select a log group to start tailing.`:I().trim()===``?`Waiting for events from ${P()}\u2026`:`No lines match the filter.`),ve=a(()=>L()?`text-sky-300`:`text-neutral-400`),$=a(()=>ye(ae(),Date.now())),be=a(()=>ie()===`historic`&&H()===`window-complete`),xe=a(()=>T(q)?`text-sky-300`:`text-neutral-400`),Se=a(()=>T(Y)?`text-sky-300`:`text-neutral-400`),Ce=a(()=>T(q)?`w-full`:`w-max min-w-full`),we=a(()=>T(q)?`whitespace-pre-wrap break-words`:`whitespace-pre`),Te=a(()=>oe+U+se+T(X)),Ee=a(()=>`max-width: ${pe(T(X))}`);function De(e){switch(e){case`key`:return`text-sky-300`;case`string`:return`text-emerald-300`;case`number`:return`text-amber-300`;case`boolean`:return`text-fuchsia-300`;case`null`:return`text-neutral-500`;case`punctuation`:return`text-neutral-600`;default:return``}}function Oe(){fe(W.prefixWidth,String(Math.round(T(X))))}function ke(){m(q,!T(q)),fe(W.wrap,String(T(q)))}function Ae(){m(Y,!T(Y)),fe(W.jsonView,String(T(Y)))}var je=Dt(),Me=d(je),Ne=d(Me);et(Ne,{get status(){return S()}});var Pe=h(Ne,2),Fe=e(Pe),Ie=h(Pe,2),Le=e(Ie),Re=h(Ie,2),ze=t=>{var n=_t(),r=e(n);l(e=>F(r,`${e??``} buffered`),[()=>V(R())]),f(t,n)};b(Re,e=>{R()>0&&e(ze)});var Be=h(Re,2),He=t=>{var n=vt(),r=e(n);l(e=>F(r,`${e??``} dropped`),[()=>V(z())]),f(t,n)};b(Be,e=>{z()>0&&e(He)});var Ue=h(Be,2),We=e(Ue,!0),Ge=h(Ue,2),Ke=e=>{var t=yt();f(e,t)};b(Ge,e=>{T($).clamped&&e(Ke)});var qe=h(Ge,2),Je=e=>{var t=bt();f(e,t)};b(qe,e=>{T(be)&&e(Je)});var Ye=h(qe,2),Xe=d(Ye);j(Xe);var Ze=h(Xe,2),Qe=h(Ze,2),$e=h(Qe,2),tt=e($e,!0),nt=h($e,2),rt=h(nt,2);u(Ye),u(Me);var it=h(Me,2),ct=t=>{var n=xt(),r=e(n,!0);l(()=>F(r,T(Q))),f(t,n)};b(it,e=>{T(Q)!==null&&e(ct)});var ut=h(it,2),dt=d(ut),ft=e=>{var t=St();f(e,t)},pt=t=>{var n=Ct(),r=e(n,!0);l(()=>F(r,T(_e))),f(t,n)},ht=n=>{var r=Et(),i=d(r);N(i,21,()=>T(ge),e=>e.key,(n,r)=>{var i=Tt(),a=d(i),o=e(a,!0),s=h(a,2),c=e(s,!0),m=h(s,2),g=d(m),_=n=>{var i=t(),a=ee(i);N(a,19,()=>T(r).tokens,(e,t)=>`${T(r).key}-${t}`,(t,n)=>{var r=wt(),i=e(r,!0);l(e=>{A(r,1,e),F(i,T(n).text)},[()=>D(De(T(n).type))]),f(t,r)}),f(n,i)},v=e=>{var t=p();l(()=>F(t,T(r).message)),f(e,t)};b(g,e=>{T(r).tokens===null?e(v,-1):e(_)}),u(m),u(i),l(()=>{A(i,1,`flex items-baseline gap-2 px-3 py-0.5 hover:bg-neutral-900/60 ${T(Ce)??``}`),x(i,`data-level`,T(r).level),x(a,`title`,T(r).timestamp),F(o,T(r).time),C(s,T(Ee)),x(s,`title`,T(r).streamName??``),F(c,T(r).streamName??``),A(m,1,`${T(we)??``} ${T(r).levelClass??``}`)}),f(n,i)}),u(i);var o=h(i,2);{let e=a(()=>T(Te)-4);me(o,{label:`Resize prefix column`,get width(){return T(X)},get min(){return ce},get max(){return le},testId:`prefix-resizer`,onChange:e=>m(X,e,!0),onCommit:()=>Oe(),class:`absolute inset-y-0 w-2`,get style(){return`left: ${T(e)??``}px`}})}u(r),l(()=>A(r,1,`relative min-h-full ${T(Ce)??``}`)),f(n,r)};b(dt,e=>{P()===null||P()===``?e(ft):T(ge).length===0?e(pt,1):e(ht,-1)}),u(ut),y(ut,e=>m(Z,e),()=>T(Z)),u(je),l((e,t)=>{F(Fe,`${e??``} shown`),F(Le,`${t??``} received`),A(Ue,1,`rounded-full border px-2 py-0.5 text-[0.6875rem] font-medium ${T($).mode===`historic`?`border-amber-900 bg-amber-950/40 text-amber-300`:`border-neutral-800 bg-neutral-900 text-neutral-400`}`),x(Ue,`title`,T($).title),F(We,T($).label),E(Xe,I()),x(Ze,`aria-pressed`,T(q)),A(Ze,1,`rounded-md border border-neutral-800 bg-neutral-900 px-2 py-1 text-xs font-medium transition-colors hover:border-neutral-700 ${T(xe)??``}`),x(Qe,`aria-pressed`,T(Y)),A(Qe,1,`rounded-md border border-neutral-800 bg-neutral-900 px-2 py-1 text-xs font-medium transition-colors hover:border-neutral-700 ${T(Se)??``}`),x($e,`aria-pressed`,te()),F(tt,te()?`Resume`:`Pause`),x(rt,`aria-pressed`,L()),A(rt,1,`rounded-md border border-neutral-800 bg-neutral-900 px-2 py-1 text-xs font-medium transition-colors hover:border-neutral-700 ${T(ve)??``}`)},[()=>V(T(he).length),()=>V(re())]),n(`input`,Xe,e=>c.onFilterChange?.(e.currentTarget.value)),n(`click`,Ze,ke),n(`click`,Qe,Ae),n(`click`,$e,()=>c.onPauseToggle?.()),n(`click`,nt,()=>c.onClear?.()),n(`click`,rt,()=>c.onAutoScrollToggle?.()),f(r,je),s()}r([`input`,`click`]);var kt=P(`<option> </option>`),At=P(`<div class="flex flex-col gap-1.5"><label class="text-[0.6875rem] font-semibold uppercase tracking-wider text-neutral-500"> </label> <select class="w-full rounded-md border border-neutral-800 bg-neutral-900 px-2.5 py-1.5 text-sm text-neutral-100 outline-none transition-colors hover:border-neutral-700 focus:border-sky-600 disabled:cursor-not-allowed disabled:opacity-50"></select></div>`);function jt(t,r){_(r,!0);let i=w(r,`regions`,3,Oe),o=w(r,`value`,3,``),c=w(r,`disabled`,3,!1),p=w(r,`label`,3,`Region`),m=w(r,`id`,3,`region-select`),g=a(()=>o()!==``&&!i().includes(o())?[o(),...i()]:[...i()]);var v=At(),y=d(v),b=e(y,!0),C=h(y,2);N(C,20,()=>T(g),e=>e,(t,n)=>{var r=kt(),i=e(r,!0),a={};l(()=>{F(i,n),a!==(a=n)&&(r.value=(r.__value=a)??``)}),f(t,r)}),u(C);var E;M(C),u(v),l(()=>{x(y,`for`,m()),F(b,p()),x(C,`id`,m()),C.disabled=c(),E!==(E=o())&&(C.value=(C.__value=E)??``,S(C,E))}),n(`change`,C,e=>r.onchange?.(e.currentTarget.value)),f(t,v),s()}r([`change`]);function Mt(e){return new EventSource(e)}function Nt(e,t=``){let n=new URLSearchParams;return n.set(`region`,e.region),n.set(`group`,e.group),e.filterPattern&&n.set(`filterPattern`,e.filterPattern),e.mode===`historic`?(n.set(`mode`,`historic`),e.range&&n.set(`range`,e.range),e.from!==void 0&&e.from!==``&&n.set(`from`,String(e.from)),e.to!==void 0&&e.to!==``&&n.set(`to`,String(e.to))):e.mode===`live`&&n.set(`mode`,`live`),e.startTime!==void 0&&e.startTime!==``&&n.set(`startTime`,String(e.startTime)),e.lookback&&n.set(`lookback`,e.lookback),typeof e.poll==`number`&&Number.isFinite(e.poll)&&n.set(`poll`,String(e.poll)),`${t}/api/stream?${n.toString()}`}function Pt(e){try{return JSON.parse(e)}catch{return null}}var Ft=class{#e=g(`idle`);get status(){return T(this.#e)}set status(e){m(this.#e,e,!0)}#t=g(null);get lastError(){return T(this.#t)}set lastError(e){m(this.#t,e,!0)}#n=g(null);get ready(){return T(this.#n)}set ready(e){m(this.#n,e,!0)}#r=g(null);get target(){return T(this.#r)}set target(e){m(this.#r,e,!0)}#i=g([]);get lines(){return T(this.#i)}set lines(e){m(this.#i,e)}#a=g(0);get receivedCount(){return T(this.#a)}set receivedCount(e){m(this.#a,e,!0)}#o=g(0);get droppedCount(){return T(this.#o)}set droppedCount(e){m(this.#o,e,!0)}#s=g(0);get pendingCount(){return T(this.#s)}set pendingCount(e){m(this.#s,e,!0)}#c=g(!1);get paused(){return T(this.#c)}set paused(e){m(this.#c,e,!0)}#l=g(null);get lastEventAt(){return T(this.#l)}set lastEventAt(e){m(this.#l,e,!0)}#u=g(null);get endReason(){return T(this.#u)}set endReason(e){m(this.#u,e,!0)}#d;#f=null;#p=[];#m=null;#h;#g;#_;#v;#y;constructor(e={}){this.#d=new ft(e.capacity??5e3),this.#h=e.createEventSource??Mt,this.#g=e.reconnectDelayMs??1e3,this.#_=e.url??(e=>Nt(e)),this.#v=e.schedule??((e,t)=>setTimeout(e,t)),this.#y=e.cancel??(e=>clearTimeout(e))}start(e){this.#S(),this.#E(),this.clear(),this.status=`connecting`,this.lastError=null,this.ready=null,this.endReason=null,this.target={...e},this.#b(!1)}stop(){this.#E(),this.#S(),this.target=null,this.status=`idle`}pause(){this.#d.pause(),this.paused=!0}resume(){this.#d.resume(),this.paused=!1,this.#O()}togglePause(){this.paused?this.resume():this.pause()}clear(){this.#d.clear(),this.paused=!1,this.lines=[],this.receivedCount=0,this.droppedCount=0,this.pendingCount=0}get size(){return this.#d.size}#b(e){let t=this.target;if(t===null)return;this.#S(),this.status=e?`reconnecting`:`connecting`;let n;try{n=this.#h(this.#_(t))}catch(e){this.status=`error`,this.lastError={message:e instanceof Error?e.message:String(e)};return}this.#f=n,this.#x(n,`open`,()=>{this.status=`live`,this.lastError=null}),this.#x(n,`error`,e=>this.#C(e)),this.#x(n,`ready`,e=>this.#k(e)),this.#x(n,`log`,e=>this.#A(e)),this.#x(n,`ping`,e=>this.#j(e)),this.#x(n,`end`,e=>this.#M(e))}#x(e,t,n){e.addEventListener(t,n),this.#p.push({source:e,type:t,handler:n})}#S(){for(let e of this.#p)e.source.removeEventListener(e.type,e.handler);this.#p=[],this.#f?.close(),this.#f=null}#C(e){let t=typeof e.data==`string`?e.data.trim():``;if(t===``){this.#w();return}this.lastError=Pt(t)??{message:t},this.status=`error`}#w(){let e=this.#f;e!==null&&(this.status=`reconnecting`,e.readyState===2&&this.#T())}#T(){this.#m===null&&(this.#m=this.#v(()=>{this.#m=null,this.target!==null&&this.#b(!0)},this.#g))}#E(){this.#m!==null&&(this.#y(this.#m),this.#m=null)}#D(){this.lastEventAt=Date.now(),this.status!==`ended`&&(this.status=`live`)}#O(){this.lines=this.#d.toArray(),this.pendingCount=this.#d.pendingCount,this.droppedCount=this.#d.droppedCount}#k(e){let t=Pt(e.data);t!==null&&(this.ready=t),this.#D()}#A(e){let t=Pt(e.data),n=t!==null&&Array.isArray(t.events)?t.events:[];n.length!==0&&(this.#d.push(n),this.#O(),this.receivedCount+=n.length,this.#D())}#j(e){let t=Pt(e.data);this.lastEventAt=t?.at??Date.now(),this.status!==`ended`&&(this.status=`live`)}#M(e){let t=Pt(e.data);this.endReason=t?.reason??null,this.status=`ended`,this.#E(),this.#S()}},It=P(`<span class="text-xs text-emerald-400/80">API ok</span>`),Lt=P(`<p role="alert" data-testid="boot-error" class="rounded-md border border-red-900 bg-red-950/50 px-3 py-2 text-xs leading-5 text-red-300"> </p>`),Rt=P(`<div class="flex flex-wrap items-center gap-x-3 gap-y-2"><span class="text-[0.6875rem] font-semibold uppercase tracking-wider text-neutral-500">Watching</span> <span class="max-w-[22rem] truncate rounded-md border border-neutral-800 bg-neutral-900 px-2 py-1 font-mono text-xs text-neutral-200"> </span> <span class="text-xs text-neutral-500">in</span> <span class="font-mono text-xs text-neutral-300"> </span> <!> <!></div> <!> <!> <div class="flex min-h-0 min-w-0 flex-1 flex-col gap-3 lg:flex-row"><div class="flex min-h-0 w-full flex-col gap-3 rounded-lg border border-neutral-800 bg-neutral-950/60 p-3 lg:shrink-0" data-testid="sidebar"><!> <!></div> <!> <div class="flex min-h-0 min-w-0 flex-1 flex-col"><!></div></div>`,1);function zt(t,n){_(n,!0);let r=new Ft,c=g(o(L.url.searchParams.get(`region`)??``)),p=g(o(L.url.searchParams.get(`mode`)===`historic`?`historic`:`live`)),v=g(o(L.url.searchParams.get(`range`)??`15m`)),y=g(o(oe(L.url.searchParams.get(`from`)))),x=g(o(oe(L.url.searchParams.get(`to`)))),S=g(!1),w=g(o([...Oe])),E=g(o([])),D=g(!1),k=g(null),A=g(null),j=g(null),M=g(null),N=g(``),P=g(!0),I=a(()=>r.target?.group??null),R=g(0),z=g(o(J(G.defaultRem))),ne=a(()=>T(R)===0?J(G.defaultRem):Math.max(J(G.minRem),T(R)*G.maxVw/100)),B=J(G.minRem),re=a(()=>`width: min(${T(z)}px, ${G.maxVw}vw)`);function ie(e){try{return typeof localStorage>`u`?null:localStorage.getItem(e)}catch{return null}}function V(){try{if(typeof localStorage>`u`)return;localStorage.setItem(W.sidebarWidth,String(Math.round(T(z))))}catch{}}O(()=>{ae();let e=()=>{m(R,window.innerWidth,!0)};return e(),m(z,K(de(ie(W.sidebarWidth),J(G.defaultRem),J(G.minRem),window.innerWidth*G.maxVw/100),J(G.minRem),Math.max(J(G.minRem),window.innerWidth*G.maxVw/100)),!0),window.addEventListener(`resize`,e),()=>{r.stop(),window.removeEventListener(`resize`,e)}});async function ae(){let e=L.url.searchParams.get(`group`);await H(),await U(T(c)),e!==null&&e!==``?(m(S,T(p)===`historic`),ce(e)):pe(T(c),null)}async function H(){try{let[e,t]=await Promise.all([Fe(),Ie()]);e.regions.length>0&&m(w,e.regions,!0),T(c)===``&&m(c,e.defaultRegion||T(w)[0]||Oe[0],!0),m(A,t,!0),m(j,t.endpoint,!0)}catch(e){m(M,`Could not reach the watch-stream API. ${Y(e)}`),T(c)===``&&m(c,Oe[0],!0)}}async function U(e){m(D,!0),m(k,null);try{let t=await Le({region:e});if(e!==T(c))return;t.endpoint!==null&&m(j,t.endpoint,!0),m(E,t.groups,!0)}catch(t){if(e!==T(c))return;m(E,[],!0),m(k,Be(e,t),!0)}finally{e===T(c)&&m(D,!1)}}function oe(e){if(e===null||e.trim()===``)return null;let t=Number(e);return Number.isFinite(t)?t:null}function se(){return T(p)===`live`?{mode:`live`}:T(v)===``&&T(y)!==null&&T(x)!==null?{mode:`historic`,from:T(y),to:T(x)}:{mode:`historic`,range:T(v)===``?`15m`:T(v)}}function ce(e){T(c)!==``&&e!==``&&(r.start({region:T(c),group:e,...se()}),pe(T(c),e))}function ue(e){m(p,e.mode,!0),m(v,e.range,!0),m(y,e.from,!0),m(x,e.to,!0),pe(T(c),T(I)),T(I)!==null&&(m(S,e.mode===`historic`),r.start({region:T(c),group:T(I),...se()}))}function fe(e){e!==``&&e!==T(c)&&(m(c,e,!0),r.stop(),m(E,[],!0),pe(e,null),U(e))}function q(){U(T(c))}function pe(e,t){let n=new URL(L.url);e===``?n.searchParams.delete(`region`):n.searchParams.set(`region`,e),t===null||t===``?n.searchParams.delete(`group`):n.searchParams.set(`group`,t),T(p)===`live`?(n.searchParams.delete(`mode`),n.searchParams.delete(`range`),n.searchParams.delete(`from`),n.searchParams.delete(`to`)):(n.searchParams.set(`mode`,`historic`),n.searchParams.delete(`from`),n.searchParams.delete(`to`),n.searchParams.delete(`range`),T(v)===``&&T(y)!==null&&T(x)!==null?(n.searchParams.set(`from`,String(T(y))),n.searchParams.set(`to`,String(T(x)))):n.searchParams.set(`range`,T(v)===``?`15m`:T(v))),n.href!==L.url.href&&te(n,{})}i(()=>{(r.ready!==null||r.status===`error`)&&m(S,!1)});function Y(e){return e instanceof Error&&e.message!==``?e.message:String(e)}var X=Rt(),he=ee(X),ge=h(d(he),2),Z=e(ge,!0),Q=h(ge,4),_e=e(Q,!0),ve=h(Q,2);{let e=a(()=>T(A)?.credentials??null);le(ve,{get endpoint(){return T(j)},get credentials(){return T(e)}})}var $=h(ve,2),ye=e=>{var t=It();f(e,t)};b($,e=>{T(A)!==null&&T(A).ok&&e(ye)}),u(he);var be=h(he,2),xe=t=>{var n=Lt(),r=e(n,!0);l(()=>F(r,T(M))),f(t,n)};b(be,e=>{T(M)!==null&&e(xe)});var Se=h(be,2);{let e=a(()=>T(I)===null);De(Se,{get mode(){return T(p)},get range(){return T(v)},get from(){return T(y)},get to(){return T(x)},get loading(){return T(S)},get disabled(){return T(e)},onApply:ue})}var Ce=h(Se,2),we=d(Ce),Te=d(we);jt(Te,{get regions(){return T(w)},get value(){return T(c)},onchange:fe}),Qe(h(Te,2),{get groups(){return T(E)},get region(){return T(c)},get selected(){return T(I)},get loading(){return T(D)},get error(){return T(k)},onSelect:ce,onRefresh:q}),u(we);var Ee=h(we,2);me(Ee,{label:`Resize group list`,get width(){return T(z)},get min(){return B},get max(){return T(ne)},testId:`sidebar-resizer`,onChange:e=>m(z,e,!0),onCommit:()=>V(),class:`hidden lg:block lg:w-2`});var ke=h(Ee,2);Ot(d(ke),{get lines(){return r.lines},get status(){return r.status},get error(){return r.lastError},get mode(){return T(p)},get ready(){return r.ready},get endReason(){return r.endReason},get region(){return T(c)},get group(){return T(I)},get filter(){return T(N)},get paused(){return r.paused},get autoScroll(){return T(P)},get pendingCount(){return r.pendingCount},get droppedCount(){return r.droppedCount},get receivedCount(){return r.receivedCount},onFilterChange:e=>m(N,e,!0),onPauseToggle:()=>r.togglePause(),onClear:()=>r.clear(),onAutoScrollToggle:()=>m(P,!T(P))}),u(ke),u(Ce),l(()=>{F(Z,T(I)??`no group selected`),F(_e,T(c)===``?`resolving region…`:T(c)),C(we,T(re))}),f(t,X),s()}export{zt as component};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"env2.js-D7xrfc37.js","sources":["../../../../.svelte-kit/output/server/chunks/env2.js"],"sourcesContent":["import { t as private_env } from \"./shared-server.js\";\nimport { json } from \"@sveltejs/kit\";\nimport { CloudWatchLogsClient } from \"@aws-sdk/client-cloudwatch-logs\";\nimport { existsSync } from \"node:fs\";\nimport { join } from \"node:path\";\n//#region src/lib/server/api.ts\n/**\n* Builds a JSON error response that never leaks stack traces.\n*\n* Use 400 for bad input, 502 for upstream CloudWatch Logs failures and 499\n* when the client aborted the request.\n*/\nfunction apiError(status, message, code, details) {\n\tconst body = { error: message };\n\tif (code !== void 0) body.code = code;\n\tif (details !== void 0 && details.length > 0) body.details = details;\n\treturn json(body, { status });\n}\n//#endregion\n//#region src/lib/server/aws.ts\n/**\n* Throwaway credentials for local emulators only.\n*\n* floci and LocalStack verify the request signature but accept any non-empty\n* key pair, so these keys make a local endpoint work out of the box.\n*/\nvar EMULATOR_CREDENTIALS = {\n\taccessKeyId: \"test\",\n\tsecretAccessKey: \"test\"\n};\n/** Environment variables that indicate that ambient credentials are configured. */\nvar CREDENTIAL_ENV_KEYS = [\n\t\"AWS_ACCESS_KEY_ID\",\n\t\"AWS_PROFILE\",\n\t\"AWS_SHARED_CREDENTIALS_FILE\",\n\t\"AWS_CONFIG_FILE\",\n\t\"AWS_WEB_IDENTITY_TOKEN_FILE\",\n\t\"AWS_CONTAINER_CREDENTIALS_RELATIVE_URI\",\n\t\"AWS_CONTAINER_CREDENTIALS_FULL_URI\",\n\t\"AWS_ROLE_ARN\"\n];\n/**\n* Display-only region used when nothing else can be resolved. It is never sent\n* to the SDK.\n*/\nvar FALLBACK_REGION = \"us-east-1\";\n/** User-facing hint for a malformed `region` query parameter. */\nvar REGION_PARAM_HINT = \"Invalid region: expected a region code such as us-east-1 or us-west-2-lax-1a\";\n/** Region codes and local-zone codes only: lowercase letters, digits and dashes. */\nvar REGION_PATTERN = /^[a-z0-9-]{1,64}$/;\n/** Hosts that are always considered local, including the IPv6 loopback form. */\nvar LOCAL_HOSTS = /* @__PURE__ */ new Set([\n\t\"localhost\",\n\t\"127.0.0.1\",\n\t\"0.0.0.0\",\n\t\"::1\",\n\t\"[::1]\"\n]);\n/** Substrings that identify a known local AWS emulator. */\nvar LOCAL_HINTS = [\"floci\", \"localstack\"];\nvar MAX_DETAIL_LENGTH = 300;\n/** Trims a value and treats blank strings as absent. */\nfunction normalize(value) {\n\tif (typeof value !== \"string\") return null;\n\tconst trimmed = value.trim();\n\treturn trimmed.length > 0 ? trimmed : null;\n}\n/** Extracts a lowercase host from an endpoint, tolerating missing schemes. */\nfunction hostOf(endpoint) {\n\ttry {\n\t\treturn new URL(endpoint).hostname.toLowerCase();\n\t} catch {\n\t\treturn (/^[a-z][a-z0-9+.-]*:\\/\\/([^/?#]+)/i.exec(endpoint)?.[1] ?? endpoint).toLowerCase();\n\t}\n}\n/** True when the endpoint targets a local emulator such as floci or LocalStack. */\nfunction isLocalEndpoint(endpoint) {\n\tconst host = hostOf(endpoint);\n\tif (LOCAL_HOSTS.has(host)) return true;\n\treturn LOCAL_HINTS.some((hint) => host.includes(hint));\n}\n/** True when any ambient credential source is configured (non-blank) in the environment. */\nfunction hasAmbientCredentials(env) {\n\treturn CREDENTIAL_ENV_KEYS.some((key) => normalize(env[key]) !== null);\n}\n/**\n* Resolves the region, endpoint, local flag and credential source for CloudWatch Logs.\n*\n* Region precedence: an explicit region parameter, then `AWS_REGION`, then\n* `AWS_DEFAULT_REGION`. When none of them is set the result is `null`, which\n* lets the SDK resolve the region from the ambient AWS configuration (profile,\n* SSO, instance metadata) instead of this app inventing one.\n*\n* Credentials stay `ambient` unless the endpoint is local and no ambient\n* credential source is configured at all, in which case the emulator's\n* throwaway keys are used.\n*/\nfunction resolveAwsConfig(env, regionParam) {\n\tconst endpoint = normalize(env.AWS_ENDPOINT_URL_LOGS) ?? normalize(env.AWS_ENDPOINT_URL);\n\tconst region = normalize(regionParam) ?? normalize(env.AWS_REGION) ?? normalize(env.AWS_DEFAULT_REGION);\n\tconst local = endpoint !== null && isLocalEndpoint(endpoint);\n\treturn {\n\t\tregion,\n\t\tendpoint,\n\t\tlocal,\n\t\tcredentials: local && !hasAmbientCredentials(env) ? \"emulator-default\" : \"ambient\"\n\t};\n}\n/**\n* Validates the optional `region` query parameter.\n*\n* A blank value means \"not supplied\" and is accepted as `null`. Any other\n* value must look like a region code or a local-zone code.\n*/\nfunction parseRegionParam(value) {\n\tconst trimmed = typeof value === \"string\" ? value.trim() : \"\";\n\tif (trimmed.length === 0) return {\n\t\tok: true,\n\t\tregion: null\n\t};\n\tif (!REGION_PATTERN.test(trimmed)) return {\n\t\tok: false,\n\t\tregion: null\n\t};\n\treturn {\n\t\tok: true,\n\t\tregion: trimmed\n\t};\n}\n/**\n* Creates a CloudWatch Logs client.\n*\n* Credentials stay ambient unless {@link AwsConfig.credentials} asks for the\n* emulator defaults: this never reads key material from the environment and\n* never sets `credentials` for a real AWS endpoint, so the SDK default provider\n* chain is used unchanged. The region is only set when the caller asked for\n* one, so the SDK can otherwise resolve it from `AWS_REGION`, the shared\n* profile or SSO.\n*/\nfunction createLogsClient(config) {\n\tconst options = { maxAttempts: 3 };\n\tif (config.region !== null) options.region = config.region;\n\tif (config.endpoint !== null) options.endpoint = config.endpoint;\n\tif (config.credentials === \"emulator-default\") options.credentials = EMULATOR_CREDENTIALS;\n\treturn new CloudWatchLogsClient(options);\n}\n/**\n* Resolves the region to show in responses.\n*\n* Returns the requested region when there is one, otherwise asks the client,\n* whose region provider reads `AWS_REGION`, the profile region and finally the\n* `[default]` profile. The provider call is local (no network request) and it\n* throws when nothing can be found, so any failure falls back to\n* {@link FALLBACK_REGION}: this value is informational and must never break a\n* response.\n*/\nasync function resolveEffectiveRegion(client, config) {\n\tif (config.region !== null) return config.region;\n\ttry {\n\t\tconst region = await client.config.region();\n\t\treturn typeof region === \"string\" && region.trim().length > 0 ? region.trim() : FALLBACK_REGION;\n\t} catch {\n\t\treturn FALLBACK_REGION;\n\t}\n}\nvar ERROR_MESSAGES = {\n\taborted: \"The CloudWatch Logs request was aborted\",\n\t\"missing-credentials\": \"AWS credentials are missing or expired\",\n\t\"missing-region\": \"No AWS region is configured. Set AWS_REGION or add a region to your AWS profile.\",\n\t\"access-denied\": \"Access denied by CloudWatch Logs\",\n\t\"not-found\": \"The CloudWatch Logs resource was not found\",\n\tunreachable: \"The CloudWatch Logs endpoint is unreachable\",\n\tthrottled: \"CloudWatch Logs is throttling requests\",\n\tunknown: \"CloudWatch Logs request failed\"\n};\n/** Codes whose message is user guidance and must not be amended with SDK text. */\nvar FIXED_MESSAGE_CODES = /* @__PURE__ */ new Set([\"missing-region\"]);\n/** Collects name, message, status and a lowercase search haystack from an error chain. */\nfunction readErrorFacts(error) {\n\tconst parts = [];\n\tlet name = \"\";\n\tlet message = \"\";\n\tlet code = \"\";\n\tlet status = null;\n\tlet current = error;\n\tfor (let depth = 0; depth < 4 && current !== null && current !== void 0; depth += 1) {\n\t\tif (current instanceof Error) {\n\t\t\tif (name === \"\") name = current.name;\n\t\t\tif (message === \"\") message = current.message;\n\t\t\tparts.push(current.name, current.message);\n\t\t} else if (typeof current === \"string\") {\n\t\t\tif (message === \"\") message = current;\n\t\t\tparts.push(current);\n\t\t} else if (typeof current === \"object\") {\n\t\t\tconst like = current;\n\t\t\tif (name === \"\" && typeof like.name === \"string\") name = like.name;\n\t\t\tif (message === \"\" && typeof like.message === \"string\") message = like.message;\n\t\t\tif (code === \"\" && typeof like.code === \"string\") code = like.code;\n\t\t\tif (status === null && typeof like.$metadata?.httpStatusCode === \"number\") status = like.$metadata.httpStatusCode;\n\t\t\tif (typeof like.name === \"string\") parts.push(like.name);\n\t\t\tif (typeof like.message === \"string\") parts.push(like.message);\n\t\t\tif (typeof like.code === \"string\") parts.push(like.code);\n\t\t\tcurrent = like.cause;\n\t\t\tcontinue;\n\t\t}\n\t\tbreak;\n\t}\n\treturn {\n\t\tname,\n\t\tmessage: message.trim(),\n\t\tcode,\n\t\tstatus,\n\t\thaystack: parts.join(\" \").toLowerCase()\n\t};\n}\n/** True when the error says that no AWS region could be resolved. */\nfunction isRegionFailure(loweredName, haystack) {\n\treturn loweredName.includes(\"regionprovider\") || loweredName.includes(\"regionnotset\") || loweredName.includes(\"missingregion\") || haystack.includes(\"region is missing\") || haystack.includes(\"region is not configured\") || haystack.includes(\"region is required\") || haystack.includes(\"missing region\") || haystack.includes(\"no region is configured\") || haystack.includes(\"region not set\") || haystack.includes(\"region must be specified\") || haystack.includes(\"region not accepted\") || haystack.includes(\"is not a valid hostname component\");\n}\n/** Maps a thrown value to a machine-readable error code. */\nfunction classify(facts) {\n\tconst { name, code, status, haystack } = facts;\n\tconst loweredName = name.toLowerCase();\n\tif (loweredName === \"aborterror\" || code === \"ABORT_ERR\" || code === \"ERR_CANCELED\") return \"aborted\";\n\tif (loweredName.includes(\"credentialsprovider\") || loweredName.includes(\"expiredtoken\") || haystack.includes(\"could not load credentials\") || haystack.includes(\"credential is expired\") || haystack.includes(\"token has expired\") || haystack.includes(\"resolve credentials\")) return \"missing-credentials\";\n\tif (isRegionFailure(loweredName, haystack)) return \"missing-region\";\n\tif (loweredName.includes(\"accessdenied\") || loweredName.includes(\"invalidclienttokenid\") || loweredName.includes(\"invalidsignature\") || loweredName.includes(\"unrecognizedclient\") || loweredName.includes(\"unauthorized\") || loweredName.includes(\"signaturedoesnotmatch\") || status === 401 || status === 403) return \"access-denied\";\n\tif (loweredName.includes(\"resourcenotfound\") || loweredName.includes(\"loggroupnotfound\") || haystack.includes(\"does not exist\") || status === 404) return \"not-found\";\n\tif (loweredName.includes(\"throttl\") || loweredName.includes(\"toomanyrequests\") || loweredName.includes(\"requestlimitexceeded\") || status === 429) return \"throttled\";\n\tif ([\n\t\t\"econnrefused\",\n\t\t\"econnreset\",\n\t\t\"enotfound\",\n\t\t\"eaiagain\",\n\t\t\"etimedout\",\n\t\t\"ehostunreach\",\n\t\t\"enetunreach\"\n\t].some((token) => haystack.includes(token)) || haystack.includes(\"connection refused\") || haystack.includes(\"socket hang up\") || haystack.includes(\"fetch failed\") || haystack.includes(\"getaddrinfo\") || haystack.includes(\"network error\") || haystack.includes(\"timeout\") || haystack.includes(\"unreachable\")) return \"unreachable\";\n\treturn \"unknown\";\n}\n/**\n* Turns a thrown SDK or network error into a short human message plus a\n* machine-readable code such as `missing-credentials`, `missing-region` or\n* `unreachable`.\n*/\nfunction describeAwsError(error) {\n\tconst facts = readErrorFacts(error);\n\tconst code = classify(facts);\n\tconst base = ERROR_MESSAGES[code] ?? ERROR_MESSAGES.unknown;\n\tif (FIXED_MESSAGE_CODES.has(code)) return {\n\t\tmessage: base,\n\t\tcode\n\t};\n\tconst detail = facts.message.length > MAX_DETAIL_LENGTH ? `${facts.message.slice(0, MAX_DETAIL_LENGTH)}...` : facts.message;\n\treturn {\n\t\tmessage: detail.length > 0 && !base.toLowerCase().includes(detail.toLowerCase()) ? `${base}: ${detail}` : base,\n\t\tcode\n\t};\n}\n//#endregion\n//#region src/lib/server/env.ts\n/** Name of the git-ignored file that holds local (floci) connection settings. */\nvar LOCAL_ENV_FILE = \".env.local\";\nvar localEnvChecked = false;\n/** Reads `process.env` through `globalThis`, so this file needs no `@types/node`. */\nfunction processEnv() {\n\treturn globalThis.process?.env ?? {};\n}\n/**\n* Loads a dotenv file into `process.env`.\n*\n* Existing environment variables win, matching `node --env-file` semantics.\n* Returns true only when a file was found and parsed.\n*/\nfunction loadEnvFile(path) {\n\tconst runtime = globalThis;\n\tconst loader = runtime.process?.loadEnvFile;\n\tif (typeof loader !== \"function\" || !existsSync(path)) return false;\n\ttry {\n\t\tloader.call(runtime.process, path);\n\t\treturn true;\n\t} catch {\n\t\treturn false;\n\t}\n}\n/**\n* Loads `<cwd>/.env.local` once.\n*\n* SvelteKit exposes `.env` values through `$env/dynamic/private`, but the AWS\n* SDK's credential and region providers read `process.env` directly, so the\n* file has to be applied to the process too. Run `pnpm floci:up` to create it.\n*/\nfunction ensureLocalEnv(cwd) {\n\tif (localEnvChecked) return false;\n\tlocalEnvChecked = true;\n\tconst base = cwd ?? globalThis.process?.cwd?.();\n\tif (base === void 0) return false;\n\treturn loadEnvFile(join(base, LOCAL_ENV_FILE));\n}\n/**\n* Reads the effective server environment.\n*\n* `$env/dynamic/private` does resolve under vitest, but it is a snapshot taken\n* when the module is first evaluated, so the live `process.env` map is merged\n* last and wins.\n*/\nfunction readEnv() {\n\tensureLocalEnv();\n\treturn {\n\t\t...private_env,\n\t\t...processEnv()\n\t};\n}\n//#endregion\nexport { describeAwsError as a, resolveEffectiveRegion as c, createLogsClient as i, apiError as l, FALLBACK_REGION as n, parseRegionParam as o, REGION_PARAM_HINT as r, resolveAwsConfig as s, readEnv as t };\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts.js-aiNZfkco.js","sources":["../../../../../../../.svelte-kit/output/server/entries/endpoints/api/health/_server.ts.js"],"sourcesContent":["import { a as describeAwsError, c as resolveEffectiveRegion, i as createLogsClient, l as apiError, o as parseRegionParam, r as REGION_PARAM_HINT, s as resolveAwsConfig, t as readEnv } from \"../../../../chunks/env2.js\";\nimport { json } from \"@sveltejs/kit\";\n//#region src/routes/api/health/+server.ts\n/**\n* `GET /api/health?region=` - reports the effective CloudWatch Logs region and endpoint.\n*\n* The region is optional: when it is not supplied anywhere the SDK resolves it\n* from the ambient AWS configuration.\n*/\nvar GET = async ({ url }) => {\n\tconst parsed = parseRegionParam(url.searchParams.get(\"region\"));\n\tif (!parsed.ok) return apiError(400, REGION_PARAM_HINT, \"invalid-region\");\n\tconst config = resolveAwsConfig(readEnv(), parsed.region);\n\tlet client;\n\ttry {\n\t\tclient = createLogsClient(config);\n\t\tconst body = {\n\t\t\tok: true,\n\t\t\tregion: await resolveEffectiveRegion(client, config),\n\t\t\tendpoint: config.endpoint,\n\t\t\tlocal: config.local,\n\t\t\tcredentials: config.credentials\n\t\t};\n\t\treturn json(body);\n\t} catch (error) {\n\t\tconst described = describeAwsError(error);\n\t\treturn apiError(502, described.message, described.code);\n\t} finally {\n\t\tclient?.destroy();\n\t}\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,GAAG,GAAG,OAAO,EAAE,GAAG,EAAE,KAAK;AAC7B,CAAC,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAChE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,QAAQ,CAAC,GAAG,EAAE,iBAAiB,EAAE,gBAAgB,CAAC;AAC1E,CAAC,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC;AAC1D,CAAC,IAAI,MAAM;AACX,CAAC,IAAI;AACL,EAAE,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC;AACnC,EAAE,MAAM,IAAI,GAAG;AACf,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,MAAM,EAAE,MAAM,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC;AACvD,GAAG,QAAQ,EAAE,MAAM,CAAC,QAAQ;AAC5B,GAAG,KAAK,EAAE,MAAM,CAAC,KAAK;AACtB,GAAG,WAAW,EAAE,MAAM,CAAC;AACvB,GAAG;AACH,EAAE,OAAO,IAAI,CAAC,IAAI,CAAC;AACnB,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;AACjB,EAAE,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC;AAC3C,EAAE,OAAO,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC;AACzD,CAAC,CAAC,SAAS;AACX,EAAE,MAAM,EAAE,OAAO,EAAE;AACnB,CAAC;AACD;;"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { af as head, ag as attr } from '../../chunks/server.js-ByNB8uti.js';
|
|
2
|
-
import '../../chunks/uneval.js-DaakSYFQ.js';
|
|
3
|
-
|
|
4
|
-
//#region src/lib/assets/favicon.svg
|
|
5
|
-
var favicon_default = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='107'%20height='128'%20viewBox='0%200%20107%20128'%3e%3ctitle%3esvelte-logo%3c/title%3e%3cpath%20d='M94.157%2022.819c-10.4-14.885-30.94-19.297-45.792-9.835L22.282%2029.608A29.92%2029.92%200%200%200%208.764%2049.65a31.5%2031.5%200%200%200%203.108%2020.231%2030%2030%200%200%200-4.477%2011.183%2031.9%2031.9%200%200%200%205.448%2024.116c10.402%2014.887%2030.942%2019.297%2045.791%209.835l26.083-16.624A29.92%2029.92%200%200%200%2098.235%2078.35a31.53%2031.53%200%200%200-3.105-20.232%2030%2030%200%200%200%204.474-11.182%2031.88%2031.88%200%200%200-5.447-24.116'%20style='fill:%23ff3e00'/%3e%3cpath%20d='M45.817%20106.582a20.72%2020.72%200%200%201-22.237-8.243%2019.17%2019.17%200%200%201-3.277-14.503%2018%2018%200%200%201%20.624-2.435l.49-1.498%201.337.981a33.6%2033.6%200%200%200%2010.203%205.098l.97.294-.09.968a5.85%205.85%200%200%200%201.052%203.878%206.24%206.24%200%200%200%206.695%202.485%205.8%205.8%200%200%200%201.603-.704L69.27%2076.28a5.43%205.43%200%200%200%202.45-3.631%205.8%205.8%200%200%200-.987-4.371%206.24%206.24%200%200%200-6.698-2.487%205.7%205.7%200%200%200-1.6.704l-9.953%206.345a19%2019%200%200%201-5.296%202.326%2020.72%2020.72%200%200%201-22.237-8.243%2019.17%2019.17%200%200%201-3.277-14.502%2017.99%2017.99%200%200%201%208.13-12.052l26.081-16.623a19%2019%200%200%201%205.3-2.329%2020.72%2020.72%200%200%201%2022.237%208.243%2019.17%2019.17%200%200%201%203.277%2014.503%2018%2018%200%200%201-.624%202.435l-.49%201.498-1.337-.98a33.6%2033.6%200%200%200-10.203-5.1l-.97-.294.09-.968a5.86%205.86%200%200%200-1.052-3.878%206.24%206.24%200%200%200-6.696-2.485%205.8%205.8%200%200%200-1.602.704L37.73%2051.72a5.42%205.42%200%200%200-2.449%203.63%205.79%205.79%200%200%200%20.986%204.372%206.24%206.24%200%200%200%206.698%202.486%205.8%205.8%200%200%200%201.602-.704l9.952-6.342a19%2019%200%200%201%205.295-2.328%2020.72%2020.72%200%200%201%2022.237%208.242%2019.17%2019.17%200%200%201%203.277%2014.503%2018%2018%200%200%201-8.13%2012.053l-26.081%2016.622a19%2019%200%200%201-5.3%202.328'%20style='fill:%23fff'/%3e%3c/svg%3e";
|
|
6
|
-
//#endregion
|
|
7
|
-
//#region src/routes/+layout.svelte
|
|
8
|
-
function _layout($$renderer, $$props) {
|
|
9
|
-
let { children } = $$props;
|
|
10
|
-
head("12qhfyh", $$renderer, ($$renderer) => {
|
|
11
|
-
$$renderer.title(($$renderer) => {
|
|
12
|
-
$$renderer.push(`<title>watch-stream</title>`);
|
|
13
|
-
});
|
|
14
|
-
$$renderer.push(`<link rel="icon"${attr("href", favicon_default)}/>`);
|
|
15
|
-
});
|
|
16
|
-
$$renderer.push(`<div class="flex h-dvh min-h-[30rem] flex-col overflow-hidden bg-neutral-950 font-sans text-neutral-100 antialiased selection:bg-sky-900/60"><header class="flex-none border-b border-neutral-900 bg-neutral-950/90"><div class="flex w-full items-baseline gap-3 px-3 py-2 sm:px-4"><span class="text-sm font-semibold tracking-tight">watch<span class="text-sky-400">-stream</span></span> <span class="hidden text-xs text-neutral-500 sm:inline">Tail CloudWatch Logs in the browser</span></div></header> <main class="flex min-h-0 w-full flex-1 flex-col gap-3 px-3 py-3 sm:px-4">`);
|
|
17
|
-
children($$renderer);
|
|
18
|
-
$$renderer.push(`<!----></main></div>`);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export { _layout as default };
|
|
22
|
-
//# sourceMappingURL=_layout.svelte.js-Bx7lXkAi.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_layout.svelte.js-Bx7lXkAi.js","sources":["../../../../../.svelte-kit/output/server/entries/pages/_layout.svelte.js"],"sourcesContent":["import { a as head, y as attr } from \"../../chunks/server.js\";\n//#region src/lib/assets/favicon.svg\nvar favicon_default = \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='107'%20height='128'%20viewBox='0%200%20107%20128'%3e%3ctitle%3esvelte-logo%3c/title%3e%3cpath%20d='M94.157%2022.819c-10.4-14.885-30.94-19.297-45.792-9.835L22.282%2029.608A29.92%2029.92%200%200%200%208.764%2049.65a31.5%2031.5%200%200%200%203.108%2020.231%2030%2030%200%200%200-4.477%2011.183%2031.9%2031.9%200%200%200%205.448%2024.116c10.402%2014.887%2030.942%2019.297%2045.791%209.835l26.083-16.624A29.92%2029.92%200%200%200%2098.235%2078.35a31.53%2031.53%200%200%200-3.105-20.232%2030%2030%200%200%200%204.474-11.182%2031.88%2031.88%200%200%200-5.447-24.116'%20style='fill:%23ff3e00'/%3e%3cpath%20d='M45.817%20106.582a20.72%2020.72%200%200%201-22.237-8.243%2019.17%2019.17%200%200%201-3.277-14.503%2018%2018%200%200%201%20.624-2.435l.49-1.498%201.337.981a33.6%2033.6%200%200%200%2010.203%205.098l.97.294-.09.968a5.85%205.85%200%200%200%201.052%203.878%206.24%206.24%200%200%200%206.695%202.485%205.8%205.8%200%200%200%201.603-.704L69.27%2076.28a5.43%205.43%200%200%200%202.45-3.631%205.8%205.8%200%200%200-.987-4.371%206.24%206.24%200%200%200-6.698-2.487%205.7%205.7%200%200%200-1.6.704l-9.953%206.345a19%2019%200%200%201-5.296%202.326%2020.72%2020.72%200%200%201-22.237-8.243%2019.17%2019.17%200%200%201-3.277-14.502%2017.99%2017.99%200%200%201%208.13-12.052l26.081-16.623a19%2019%200%200%201%205.3-2.329%2020.72%2020.72%200%200%201%2022.237%208.243%2019.17%2019.17%200%200%201%203.277%2014.503%2018%2018%200%200%201-.624%202.435l-.49%201.498-1.337-.98a33.6%2033.6%200%200%200-10.203-5.1l-.97-.294.09-.968a5.86%205.86%200%200%200-1.052-3.878%206.24%206.24%200%200%200-6.696-2.485%205.8%205.8%200%200%200-1.602.704L37.73%2051.72a5.42%205.42%200%200%200-2.449%203.63%205.79%205.79%200%200%200%20.986%204.372%206.24%206.24%200%200%200%206.698%202.486%205.8%205.8%200%200%200%201.602-.704l9.952-6.342a19%2019%200%200%201%205.295-2.328%2020.72%2020.72%200%200%201%2022.237%208.242%2019.17%2019.17%200%200%201%203.277%2014.503%2018%2018%200%200%201-8.13%2012.053l-26.081%2016.622a19%2019%200%200%201-5.3%202.328'%20style='fill:%23fff'/%3e%3c/svg%3e\";\n//#endregion\n//#region src/routes/+layout.svelte\nfunction _layout($$renderer, $$props) {\n\tlet { children } = $$props;\n\thead(\"12qhfyh\", $$renderer, ($$renderer) => {\n\t\t$$renderer.title(($$renderer) => {\n\t\t\t$$renderer.push(`<title>watch-stream</title>`);\n\t\t});\n\t\t$$renderer.push(`<link rel=\"icon\"${attr(\"href\", favicon_default)}/>`);\n\t});\n\t$$renderer.push(`<div class=\"flex h-dvh min-h-[30rem] flex-col overflow-hidden bg-neutral-950 font-sans text-neutral-100 antialiased selection:bg-sky-900/60\"><header class=\"flex-none border-b border-neutral-900 bg-neutral-950/90\"><div class=\"flex w-full items-baseline gap-3 px-3 py-2 sm:px-4\"><span class=\"text-sm font-semibold tracking-tight\">watch<span class=\"text-sky-400\">-stream</span></span> <span class=\"hidden text-xs text-neutral-500 sm:inline\">Tail CloudWatch Logs in the browser</span></div></header> <main class=\"flex min-h-0 w-full flex-1 flex-col gap-3 px-3 py-3 sm:px-4\">`);\n\tchildren($$renderer);\n\t$$renderer.push(`<!----></main></div>`);\n}\n//#endregion\nexport { _layout as default };\n"],"names":[],"mappings":";;;AACA;AACA,IAAI,eAAe,GAAG,skEAAskE;AAC5lE;AACA;AACA,SAAS,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE;AACtC,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO;AAC3B,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,UAAU,KAAK;AAC7C,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,UAAU,KAAK;AACnC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,2BAA2B,CAAC,CAAC;AACjD,EAAE,CAAC,CAAC;AACJ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC;AACvE,CAAC,CAAC,CAAC;AACH,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,0jBAA0jB,CAAC,CAAC;AAC9kB,CAAC,QAAQ,CAAC,UAAU,CAAC;AACrB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC;AACxC;;"}
|