docs: 仓库链接指向本镜像仓库
Dev Build / cleanup (push) Waiting to run
Dev Build / typecheck (push) Waiting to run

This commit is contained in:
TanTan committed 2026-11-13 09:27:07 +08:00
1 parent fa9c73363d
commit 2a69b23b47
18210 files changed
+5101211 -16

No files matched your search

@@ -0,0 +1,3 @@
import { NavigateOptions } from './link.cjs';
import { RegisteredRouter } from './router.cjs';
export type UseNavigateResult<TDefaultFrom extends string> = <TRouter extends RegisteredRouter, TTo extends string | undefined, TFrom extends string = TDefaultFrom, TMaskFrom extends string = TFrom, TMaskTo extends string = ''>({ from, ...rest }: NavigateOptions<TRouter, TFrom, TTo, TMaskFrom, TMaskTo>) => Promise<void>;
@@ -0,0 +1,124 @@
import { expect, expectTypeOf, test } from "vitest";
import * as z from "zod/v4";
test("z.stringbool", () => {
const a = z.stringbool();
type a = z.infer<typeof a>;
expectTypeOf<a>().toEqualTypeOf<boolean>();
type a_in = z.input<typeof a>;
expectTypeOf<a_in>().toEqualTypeOf<string>();
expect(z.parse(a, "true")).toEqual(true);
expect(z.parse(a, "yes")).toEqual(true);
expect(z.parse(a, "1")).toEqual(true);
expect(z.parse(a, "on")).toEqual(true);
expect(z.parse(a, "y")).toEqual(true);
expect(z.parse(a, "enabled")).toEqual(true);
expect(z.parse(a, "TRUE")).toEqual(true);
expect(z.parse(a, "false")).toEqual(false);
expect(z.parse(a, "no")).toEqual(false);
expect(z.parse(a, "0")).toEqual(false);
expect(z.parse(a, "off")).toEqual(false);
expect(z.parse(a, "n")).toEqual(false);
expect(z.parse(a, "disabled")).toEqual(false);
expect(z.parse(a, "FALSE")).toEqual(false);
expect(z.safeParse(a, "other")).toMatchObject({ success: false });
expect(z.safeParse(a, "")).toMatchObject({ success: false });
expect(z.safeParse(a, undefined)).toMatchObject({ success: false });
expect(z.safeParse(a, {})).toMatchObject({ success: false });
expect(z.safeParse(a, true)).toMatchObject({ success: false });
expect(z.safeParse(a, false)).toMatchObject({ success: false });
});
test("custom values", () => {
const b = z.stringbool({
truthy: ["y"],
falsy: ["N"],
});
expect(z.parse(b, "y")).toEqual(true);
expect(z.parse(b, "Y")).toEqual(true);
expect(z.parse(b, "n")).toEqual(false);
expect(z.parse(b, "N")).toEqual(false);
expect(z.safeParse(b, "true")).toMatchObject({ success: false });
expect(z.safeParse(b, "false")).toMatchObject({ success: false });
});
test("custom values - case sensitive", () => {
const c = z.stringbool({
truthy: ["y"],
falsy: ["N"],
case: "sensitive",
});
expect(z.parse(c, "y")).toEqual(true);
expect(z.safeParse(c, "Y")).toMatchObject({ success: false });
expect(z.parse(c, "N")).toEqual(false);
expect(z.safeParse(c, "n")).toMatchObject({ success: false });
expect(z.safeParse(c, "TRUE")).toMatchObject({ success: false });
});
// test custom error messages
test("z.stringbool with custom error messages", () => {
const a = z.stringbool("wrong!");
expect(() => a.parse("")).toThrowError("wrong!");
});
test("z.stringbool codec encoding", () => {
const schema = z.stringbool();
// Test encoding with default values
expect(z.encode(schema, true)).toEqual("true");
expect(z.encode(schema, false)).toEqual("false");
});
test("z.stringbool codec encoding with custom values", () => {
const schema = z.stringbool({
truthy: ["yes", "on", "1"],
falsy: ["no", "off", "0"],
});
// Should return first element of custom arrays
expect(z.encode(schema, true)).toEqual("yes");
expect(z.encode(schema, false)).toEqual("no");
});
test("z.stringbool codec round trip", () => {
const schema = z.stringbool({
truthy: ["enabled", "active"],
falsy: ["disabled", "inactive"],
});
// Test round trip: string -> boolean -> string
const decoded = z.decode(schema, "enabled");
expect(decoded).toEqual(true);
const encoded = z.encode(schema, decoded);
expect(encoded).toEqual("enabled"); // First element of truthy array
// Test with falsy value
const decodedFalse = z.decode(schema, "inactive");
expect(decodedFalse).toEqual(false);
const encodedFalse = z.encode(schema, decodedFalse);
expect(encodedFalse).toEqual("disabled"); // First element of falsy array
});
test("z.stringbool exposes truthy/falsy/case via _zod.bag", () => {
const a = z.stringbool();
expect(a._zod.bag.truthy).toEqual(["true", "1", "yes", "on", "y", "enabled"]);
expect(a._zod.bag.falsy).toEqual(["false", "0", "no", "off", "n", "disabled"]);
expect(a._zod.bag.case).toEqual("insensitive");
// values are normalized when case-insensitive
const b = z.stringbool({ truthy: ["Y", "yes"], falsy: ["N"] });
expect(b._zod.bag.truthy).toEqual(["y", "yes"]);
expect(b._zod.bag.falsy).toEqual(["n"]);
expect(b._zod.bag.case).toEqual("insensitive");
const c = z.stringbool({ truthy: ["Y"], falsy: ["N"], case: "sensitive" });
expect(c._zod.bag.truthy).toEqual(["Y"]);
expect(c._zod.bag.falsy).toEqual(["N"]);
expect(c._zod.bag.case).toEqual("sensitive");
});
@@ -0,0 +1,54 @@
import { JSONRPCMessageSchema } from '../types.js';
const SUBPROTOCOL = 'mcp';
/**
* Client transport for WebSocket: this will connect to a server over the WebSocket protocol.
*/
export class WebSocketClientTransport {
constructor(url) {
this._url = url;
}
start() {
if (this._socket) {
throw new Error('WebSocketClientTransport already started! If using Client class, note that connect() calls start() automatically.');
}
return new Promise((resolve, reject) => {
this._socket = new WebSocket(this._url, SUBPROTOCOL);
this._socket.onerror = event => {
const error = 'error' in event ? event.error : new Error(`WebSocket error: ${JSON.stringify(event)}`);
reject(error);
this.onerror?.(error);
};
this._socket.onopen = () => {
resolve();
};
this._socket.onclose = () => {
this.onclose?.();
};
this._socket.onmessage = (event) => {
let message;
try {
message = JSONRPCMessageSchema.parse(JSON.parse(event.data));
}
catch (error) {
this.onerror?.(error);
return;
}
this.onmessage?.(message);
};
});
}
async close() {
this._socket?.close();
}
send(message) {
return new Promise((resolve, reject) => {
if (!this._socket) {
reject(new Error('Not connected'));
return;
}
this._socket?.send(JSON.stringify(message));
resolve();
});
}
}
//# sourceMappingURL=websocket.js.map
@@ -0,0 +1,18 @@
var $t=Object.defineProperty;var Tt=(e,r)=>{for(var t in r)$t(e,t,{get:r[t],enumerable:!0})};import*as ce from"module";import{pathToFileURL as Xr}from"url";var pe={};Tt(pe,{DEBUG:()=>fe});var fe=Et(process.env.DEBUG);function Et(e){if(typeof e=="boolean")return e;if(e===void 0)return!1;if(e==="true"||e==="1")return!0;if(e==="false"||e==="0")return!1;if(e==="*")return!0;let r=e.split(",").map(t=>t.split(":")[0]);return r.includes("-tailwindcss")?!1:!!r.includes("tailwindcss")}import F from"enhanced-resolve";import{createJiti as zr}from"jiti";import Re from"fs";import wt from"fs/promises";import se from"path";import{pathToFileURL as gt}from"url";import{__unstable__loadDesignSystem as Kr,compile as Mr,compileAst as Fr,Features as nu,Polyfills as ou}from"tailwindcss";import de from"fs/promises";import j from"path";var Nt=[/import[\s\S]*?['"](.{3,}?)['"]/gi,/import[\s\S]*from[\s\S]*?['"](.{3,}?)['"]/gi,/export[\s\S]*from[\s\S]*?['"](.{3,}?)['"]/gi,/require\(['"`](.+)['"`]\)/gi],Vt=[".js",".cjs",".mjs"],Rt=["",".js",".cjs",".mjs",".ts",".cts",".mts",".jsx",".tsx"],Ot=["",".ts",".cts",".mts",".tsx",".js",".cjs",".mjs",".jsx"];async function Pt(e,r){for(let t of r){let i=`${e}${t}`;if((await de.stat(i).catch(()=>null))?.isFile())return i}for(let t of r){let i=`${e}/index${t}`;if(await de.access(i).then(()=>!0,()=>!1))return i}return null}async function Pe(e,r,t,i){let o=Vt.includes(i)?Rt:Ot,l=await Pt(j.resolve(t,r),o);if(l===null||e.has(l))return;e.add(l),t=j.dirname(l),i=j.extname(l);let n=await de.readFile(l,"utf-8"),s=[];for(let a of Nt)for(let u of n.matchAll(a))u[1].startsWith(".")&&s.push(Pe(e,u[1],t,i));await Promise.all(s)}async function _e(e){let r=new Set;return await Pe(r,e,j.dirname(e),j.extname(e)),Array.from(r)}import*as Ee from"path";function M(e){return{kind:"word",value:e}}function _t(e,r){return{kind:"function",value:e,nodes:r}}function It(e){return{kind:"separator",value:e}}function S(e){let r="";for(let t of e)switch(t.kind){case"word":case"separator":{r+=t.value;break}case"function":r+=t.value+"("+S(t.nodes)+")"}return r}var Ie=92,Dt=41,De=58,Ue=44,Ut=34,Le=61,ze=62,Ke=60,Me=10,Lt=40,zt=39,Kt=47,Fe=32,je=9;function A(e){e=e.replaceAll(`\r
`,`
`);let r=[],t=[],i=null,o="",l;for(let n=0;n<e.length;n++){let s=e.charCodeAt(n);switch(s){case Ie:{o+=e[n]+e[n+1],n++;break}case Kt:{if(o.length>0){let u=M(o);i?i.nodes.push(u):r.push(u),o=""}let a=M(e[n]);i?i.nodes.push(a):r.push(a);break}case De:case Ue:case Le:case ze:case Ke:case Me:case Fe:case je:{if(o.length>0){let c=M(o);i?i.nodes.push(c):r.push(c),o=""}let a=n,u=n+1;for(;u<e.length&&(l=e.charCodeAt(u),!(l!==De&&l!==Ue&&l!==Le&&l!==ze&&l!==Ke&&l!==Me&&l!==Fe&&l!==je));u++);n=u-1;let p=It(e.slice(a,u));i?i.nodes.push(p):r.push(p);break}case zt:case Ut:{let a=n;for(let u=n+1;u<e.length;u++)if(l=e.charCodeAt(u),l===Ie)u+=1;else if(l===s){n=u;break}o+=e.slice(a,n+1);break}case Lt:{let a=_t(o,[]);o="",i?i.nodes.push(a):r.push(a),t.push(a),i=a;break}case Dt:{let a=t.pop();if(o.length>0){let u=M(o);a?.nodes.push(u),o=""}t.length>0?i=t[t.length-1]:i=null;break}default:o+=String.fromCharCode(s)}}return o.length>0&&r.push(M(o)),r}var g=class extends Map{constructor(t){super();this.factory=t}get(t){let i=super.get(t);return i===void 0&&(i=this.factory(t,this),this.set(t,i)),i}};var ui=new Uint8Array(256);var te=new Uint8Array(256);function w(e,r){let t=0,i=[],o=0,l=e.length,n=r.charCodeAt(0);for(let s=0;s<l;s++){let a=e.charCodeAt(s);if(t===0&&a===n){i.push(e.slice(o,s)),o=s+1;continue}switch(a){case 92:s+=1;break;case 39:case 34:for(;++s<l;){let u=e.charCodeAt(s);if(u===92){s+=1;continue}if(u===a)break}break;case 40:te[t]=41,t++;break;case 91:te[t]=93,t++;break;case 123:te[t]=125,t++;break;case 93:case 125:case 41:t>0&&a===te[t-1]&&t--;break}}return i.push(e.slice(o)),i}var me=(n=>(n[n.Continue=0]="Continue",n[n.Skip=1]="Skip",n[n.Stop=2]="Stop",n[n.Replace=3]="Replace",n[n.ReplaceSkip=4]="ReplaceSkip",n[n.ReplaceStop=5]="ReplaceStop",n))(me||{}),k={Continue:{kind:0},Skip:{kind:1},Stop:{kind:2},Replace:e=>({kind:3,nodes:Array.isArray(e)?e:[e]}),ReplaceSkip:e=>({kind:4,nodes:Array.isArray(e)?e:[e]}),ReplaceStop:e=>({kind:5,nodes:Array.isArray(e)?e:[e]})};function v(e,r){typeof r=="function"?We(e,r):We(e,r.enter,r.exit)}function We(e,r=()=>k.Continue,t=()=>k.Continue){let i={value:[e,0,null],prev:null},o={parent:null,depth:0,path(){let l=[],n=i;for(;n;){let s=n.value[2];s&&l.push(s),n=n.prev}return l.reverse(),l}};for(;i!==null;){let l=i.value,n=l[0],s=l[1],a=l[2];if(s>=n.length){i=i.prev,o.depth-=1;continue}if(o.parent=a,s>=0){let f=n[s],d=r(f,o)??k.Continue;switch(d.kind){case 0:{f.nodes&&f.nodes.length>0&&(o.depth+=1,i={value:[f.nodes,0,f],prev:i}),l[1]=~s;continue}case 2:return;case 1:{l[1]=~s;continue}case 3:{n.splice(s,1,...d.nodes);continue}case 5:{n.splice(s,1,...d.nodes);return}case 4:{n.splice(s,1,...d.nodes),l[1]+=d.nodes.length;continue}default:throw new Error(`Invalid \`WalkAction.${me[d.kind]??`Unknown(${d.kind})`}\` in enter.`)}}let u=~s,p=n[u],c=t(p,o)??k.Continue;switch(c.kind){case 0:l[1]=u+1;continue;case 2:return;case 3:{n.splice(u,1,...c.nodes),l[1]=u+c.nodes.length;continue}case 5:{n.splice(u,1,...c.nodes);return}case 4:{n.splice(u,1,...c.nodes),l[1]=u+c.nodes.length;continue}default:throw new Error(`Invalid \`WalkAction.${me[c.kind]??`Unknown(${c.kind})`}\` in exit.`)}}}var yi=new g(e=>{let r=A(e),t=new Set;return v(r,(i,o)=>{let l=o.parent===null?r:o.parent.nodes??[];if(i.kind==="word"&&(i.value==="+"||i.value==="-"||i.value==="*"||i.value==="/")){let n=l.indexOf(i)??-1;if(n===-1)return;let s=l[n-1];if(s?.kind!=="separator"||s.value!==" ")return;let a=l[n+1];if(a?.kind!=="separator"||a.value!==" ")return;t.add(s),t.add(a)}else i.kind==="separator"&&i.value.length>0&&i.value.trim()===""?(l[0]===i||l[l.length-1]===i)&&t.add(i):i.kind==="separator"&&i.value.trim()===","&&(i.value=",")}),t.size>0&&v(r,i=>{if(t.has(i))return t.delete(i),k.ReplaceSkip([])}),ge(r),S(r)});var bi=new g(e=>{let r=A(e);return r.length===3&&r[0].kind==="word"&&r[0].value==="&"&&r[1].kind==="separator"&&r[1].value===":"&&r[2].kind==="function"&&r[2].value==="is"?S(r[2].nodes):e});function ge(e){for(let r of e)switch(r.kind){case"function":{if(r.value==="url"||r.value.endsWith("_url")){r.value=W(r.value);break}if(r.value==="var"||r.value.endsWith("_var")||r.value==="theme"||r.value.endsWith("_theme")){r.value=W(r.value);for(let t=0;t<r.nodes.length;t++)ge([r.nodes[t]]);break}r.value=W(r.value),ge(r.nodes);break}case"separator":r.value=W(r.value);break;case"word":{(r.value[0]!=="-"||r.value[1]!=="-")&&(r.value=W(r.value));break}default:Mt(r)}}var xi=new g(e=>{let r=A(e);return r.length===1&&r[0].kind==="function"&&r[0].value==="var"});function Mt(e){throw new Error(`Unexpected value: ${e}`)}function W(e){return e.replaceAll("_",String.raw`\_`).replaceAll(" ","_")}var Ft=process.env.FEATURES_ENV!=="stable";var O=/[+-]?\d*\.?\d+(?:[eE][+-]?\d+)?/,Pi=new RegExp(`^${O.source}$`);var _i=new RegExp(`^${O.source}%$`);var Ii=new RegExp(`^${O.source}\\s*/\\s*${O.source}$`);var jt=["cm","mm","Q","in","pc","pt","px","em","ex","ch","rem","lh","rlh","vw","vh","vmin","vmax","vb","vi","svw","svh","lvw","lvh","dvw","dvh","cqw","cqh"Line truncated
`,r){t+=u.length;let p=t;t+=n.property.length,t+=2,t+=n.value?.length??0,n.important&&(t+=11);let c=t;t+=2,n.dst=[i,p,c]}}else if(n.kind==="rule"){if(a+=`${u}${n.selector} {
`,r){t+=u.length;let p=t;t+=n.selector.length,t+=1;let c=t;n.dst=[i,p,c],t+=2}for(let p of n.nodes)a+=o(p,s+1);a+=`${u}}
`,r&&(t+=u.length,t+=2)}else if(n.kind==="at-rule"){if(n.nodes.length===0){let p=`${u}${n.name} ${n.params};
`;if(r){t+=u.length;let c=t;t+=n.name.length,t+=1,t+=n.params.length;let f=t;t+=2,n.dst=[i,c,f]}return p}if(a+=`${u}${n.name}${n.params?` ${n.params} `:" "}{
`,r){t+=u.length;let p=t;t+=n.name.length,n.params&&(t+=1,t+=n.params.length),t+=1;let c=t;n.dst=[i,p,c],t+=2}for(let p of n.nodes)a+=o(p,s+1);a+=`${u}}
`,r&&(t+=u.length,t+=2)}else if(n.kind==="comment"){if(a+=`${u}/*${n.value}*/
`,r){t+=u.length;let p=t;t+=2+n.value.length+2;let c=t;n.dst=[i,p,c],t+=1}}else if(n.kind==="context"||n.kind==="at-root")return"";return a}let l="";for(let n of e)l+=o(n,0);return i.code=l,l}function Cr(e,r){if(typeof e!="string")throw new TypeError("expected path to be a string");if(e==="\\"||e==="/")return"/";var t=e.length;if(t<=1)return e;var i="";if(t>4&&e[3]==="\\"){var o=e[2];(o==="?"||o===".")&&e.slice(0,2)==="\\\\"&&(e=e.slice(2),i="//")}var l=e.split(/[/\\]+/);return r!==!1&&l[l.length-1]===""&&l.pop(),i+l.join("/")}function Te(e){let r=Cr(e);return e.startsWith("\\\\")&&r.startsWith("/")&&!r.startsWith("//")?`/${r}`:r}var Ne=/(?<!@import\s+)(?<=^|[^\w\-\u0080-\uffff])url\((\s*('[^']+'|"[^"]+")\s*|[^'")]+)\)/,ct=/(?<=image-set\()((?:[\w-]{1,256}\([^)]*\)|[^)])*)(?=\))/,Sr=/(?:gradient|element|cross-fade|image)\(/,$r=/^\s*data:/i,Tr=/^([a-z]+:)?\/\//,Er=/^[A-Z_][.\w-]*\(/i,Nr=/(?:^|\s)(?<url>[\w-]+\([^)]*\)|"[^"]*"|'[^']*'|[^,]\S*[^,])\s*(?:\s(?<descriptor>\w[^,]+))?(?:,|$)/g,Vr=/(?<!\\)"/g,Rr=/(?: |\\t|\\n|\\f|\\r)+/g,Or=e=>$r.test(e),Pr=e=>Tr.test(e);async function ft({css:e,base:r,root:t}){if(!e.includes("url(")&&!e.includes("image-set("))return e;let i=J(e),o=[];function l(n){if(n[0]==="/")return n;let s=Ee.posix.join(Te(r),n),a=Ee.posix.relative(Te(t),s);return a.startsWith(".")||(a="./"+a),a}return v(i,n=>{if(n.kind!=="declaration"||!n.value)return;let s=Ne.test(n.value),a=ct.test(n.value);if(s||a){let u=a?_r:pt;o.push(u(n.value,l).then(p=>{n.value=p}))}}),o.length&&await Promise.all(o),L(i)}function pt(e,r){return mt(e,Ne,async t=>{let[i,o]=t;return await dt(o.trim(),i,r)})}async function _r(e,r){return await mt(e,ct,async t=>{let[,i]=t;return await Dr(i,async({url:l})=>Ne.test(l)?await pt(l,r):Sr.test(l)?l:await dt(l,l,r))})}async function dt(e,r,t,i="url"){let o="",l=e[0];if((l==='"'||l==="'")&&(o=l,e=e.slice(1,-1)),Ir(e))return r;let n=await t(e);return o===""&&n!==encodeURI(n)&&(o='"'),o==="'"&&n.includes("'")&&(o='"'),o==='"'&&n.includes('"')&&(n=n.replace(Vr,'\\"')),`${i}(${o}${n}${o})`}function Ir(e,r){return Pr(e)||Or(e)||!e[0].match(/[.a-zA-Z0-9_]/)||Er.test(e)}function Dr(e,r){return Promise.all(Ur(e).map(async({url:t,descriptor:i})=>({url:await r({url:t,descriptor:i}),descriptor:i}))).then(Lr)}function Ur(e){let r=e.trim().replace(Rr," ").replace(/\r?\n/,"").replace(/,\s+/,", ").replaceAll(/\s+/g," ").matchAll(Nr);return Array.from(r,({groups:t})=>({url:t?.url?.trim()??"",descriptor:t?.descriptor?.trim()??""})).filter(({url:t})=>!!t)}function Lr(e){return e.map(({url:r,descriptor:t})=>r+(t?` ${t}`:"")).join(", ")}async function mt(e,r,t){let i,o=e,l="";for(;i=r.exec(o);)l+=o.slice(0,i.index),l+=await t(i),o=o.slice(i.index+i[0].length);return l+=o,l}function yt({base:e,from:r,polyfills:t,onDependency:i,shouldRewriteUrls:o,customCssResolver:l,customJsResolver:n}){return{base:e,polyfills:t,from:r,async loadModule(s,a){return xt(s,a,i,n)},async loadStylesheet(s,a){let u=await At(s,a,i,l);return o&&(u.content=await ft({css:u.content,root:e,base:u.base})),u}}}async function bt(e){if(e.root&&e.root!=="none"){let r=/[*{]/,t=[];for(let o of e.root.pattern.split("/")){if(r.test(o))break;t.push(o)}if(!await wt.stat(se.resolve(e.root.base,t.join("/"))).then(o=>o.isDirectory()).catch(()=>!1))throw new Error(`The \`source(${e.root.pattern})\` does not exist or is not a directory.`)}}async function su(e,r){let t=await Fr(e,yt(r));return await bt(t),t}async function uu(e,r){let t=await Mr(e,yt(r));return await bt(t),t}async function cu(e,{base:r}){return Kr(e,{base:r,async loadModule(t,i){return xt(t,i,()=>{})},async loadStylesheet(t,i){return At(t,i,()=>{})}})}async function xt(e,r,t,i){if(e[0]!=="."){let s=await kt(e,r,i);if(!s)throw new Error(`Could not resolve '${e}' from '${r}'`);let a=await vt(gt(s).href);return{path:s,base:se.dirname(s),module:a.default??a}}let o=await kt(e,r,i);if(!o)throw new Error(`Could not resolve '${e}' from '${r}'`);let[l,n]=await Promise.all([vt(gt(o).href+"?id="+Date.now()),_e(o)]);for(let s of n)t(s);return{path:o,base:se.dirname(o),module:l.default??l}}async function At(e,r,t,i){let o=await Wr(e,r,i);if(!o)throw new Error(`Could not resolve '${e}' from '${r}'`);t(o);let l=await wt.readFile(o,"utf-8");return{path:o,base:se.dirname(o),content:l}}var ht=null;async function vt(e){if(typeof globalThis.__tw_load=="function"){let r=await globalThis.__tw_load(e);if(r)return r}try{return await import(e)}catch{return ht??=zr(import.meta.url,{moduleCache:!1,fsCache:!1}),await ht.import(e)}}var Oe=["node_modules",...process.env.NODE_PATH?[process.env.NODE_PATH]:[]],jr=F.ResolverFactory.createResolver({fileSystem:new F.CachedInputFileSystem(Re,4e3),useSyncFileSystemCalls:!0,extensions:[".css"],mainFields:["style"],conditionNames:["style"],modules:Oe});async function Wr(e,r,t){if(typeof globalThis.__tw_resolve=="function"){let i=globalThis.__tw_resolve(e,r);if(i)return Promise.resolve(i)}if(t){let i=await t(e,r);if(i)return i}return Ve(jr,e,r)}var Br=F.ResolverFactory.creaLine truncated
`)){this.defaultFlush=r}#r=new g(()=>({value:0}));#t=new g(()=>({value:0n}));#e=[];hit(r){this.#r.get(r).value++}start(r){let t=this.#e.map(o=>o.label).join("//"),i=`${t}${t.length===0?"":"//"}${r}`;this.#r.get(i).value++,this.#t.get(i),this.#e.push({id:i,label:r,namespace:t,value:process.hrtime.bigint()})}end(r){let t=process.hrtime.bigint();if(this.#e[this.#e.length-1].label!==r)throw new Error(`Mismatched timer label: \`${r}\`, expected \`${this.#e[this.#e.length-1].label}\``);let i=this.#e.pop(),o=t-i.value;this.#t.get(i.id).value+=o}reset(){this.#r.clear(),this.#t.clear(),this.#e.splice(0)}report(r=this.defaultFlush){let t=[],i=!1;for(let n=this.#e.length-1;n>=0;n--)this.end(this.#e[n].label);for(let[n,{value:s}]of this.#r.entries()){if(this.#t.has(n))continue;t.length===0&&(i=!0,t.push("Hits:"));let a=n.split("//").length;t.push(`${" ".repeat(a)}${n} ${ue(St(`\xD7 ${s}`))}`)}this.#t.size>0&&i&&t.push(`
Timers:`);let o=-1/0,l=new Map;for(let[n,{value:s}]of this.#t){let a=`${(Number(s)/1e6).toFixed(2)}ms`;l.set(n,a),o=Math.max(o,a.length)}for(let n of this.#t.keys()){let s=n.split("//").length;t.push(`${ue(`[${l.get(n).padStart(o," ")}]`)}${" ".repeat(s-1)}${s===1?" ":ue(" \u21B3 ")}${n.split("//").pop()} ${this.#r.get(n).value===1?"":ue(St(`\xD7 ${this.#r.get(n).value}`))}`.trimEnd())}r(`
${t.join(`
`)}
`),this.reset()}[Symbol.dispose](){fe&&this.report()}};function ue(e){return`\x1B[2m${e}\x1B[22m`}function St(e){return`\x1B[34m${e}\x1B[39m`}import Gr from"@jridgewell/remapping";import{Features as X,transform as Hr}from"lightningcss";import qr from"magic-string";function vu(e,{file:r="input.css",minify:t=!1,map:i}={}){function o(a,u){return Hr({filename:r,code:a,minify:t,sourceMap:typeof u<"u",inputSourceMap:u,drafts:{customMedia:!0},nonStandard:{deepSelectorCombinator:!0},include:X.Nesting|X.MediaQueries,exclude:X.LogicalProperties|X.DirSelector|X.LightDark,targets:{safari:16<<16|1024,ios_saf:16<<16|1024,firefox:8388608,chrome:7274496},errorRecovery:!0})}let l=o(Buffer.from(e),i);if(i=l.map?.toString(),l.warnings=l.warnings.filter(a=>!/'(deep|slotted|global)' is not recognized as a valid pseudo-/.test(a.message)),l.warnings.length>0){let a=e.split(`
`),u=[`Found ${l.warnings.length} ${l.warnings.length===1?"warning":"warnings"} while optimizing generated CSS:`];for(let[p,c]of l.warnings.entries()){u.push(""),l.warnings.length>1&&u.push(`Issue #${p+1}:`);let f=2,d=Math.max(0,c.loc.line-f-1),m=Math.min(a.length,c.loc.line+f),x=a.slice(d,m).map((h,I)=>d+I+1===c.loc.line?`${ee("\u2502")} ${h}`:ee(`\u2502 ${h}`));x.splice(c.loc.line-d,0,`${ee("\u2506")}${" ".repeat(c.loc.column-1)} ${Zr(`${ee("^--")} ${c.message}`)}`,`${ee("\u2506")}`),u.push(...x)}u.push(""),console.warn(u.join(`
`))}l=o(l.code,i),i=l.map?.toString();let n=l.code.toString(),s=new qr(n);if(s.replaceAll("@media not (","@media not all and ("),i!==void 0&&s.hasChanged()){let a=s.generateMap({source:"original",hires:"boundary"}).toString();i=Gr([a,i],()=>null).toString()}return n=s.toString(),{code:n,map:i}}function ee(e){return`\x1B[2m${e}\x1B[22m`}function Zr(e){return`\x1B[33m${e}\x1B[39m`}import{SourceMapGenerator as Qr}from"source-map-js";function Jr(e){let r=new Qr,t=1,i=new g(o=>({url:o?.url??`<unknown ${t++}>`,content:o?.content??"<none>"}));for(let o of e.mappings){let l=i.get(o.originalPosition?.source??null);r.addMapping({generated:o.generatedPosition,original:o.originalPosition,source:l.url,name:o.name}),r.setSourceContent(l.url,l.content)}return r.toString()}function bu(e){let r=typeof e=="string"?e:Jr(e);function t(i){return`/*# sourceMappingURL=${i} */
`}return{raw:r,get inline(){let i=Buffer.from(r,"utf-8").toString("base64");return t(`data:application/json;base64,${i}`)},comment:t}}if(!process.versions.bun){let e=ce.createRequire(import.meta.url);ce.register?.(Xr(e.resolve("@tailwindcss/node/esm-cache-loader")))}export{nu as Features,Ct as Instrumentation,ou as Polyfills,cu as __unstable__loadDesignSystem,uu as compile,su as compileAst,pe as env,xt as loadModule,Te as normalizePath,vu as optimize,bu as toSourceMap};
@@ -0,0 +1,200 @@
declare module "path/posix" {
import path = require("path");
export = path;
}
declare module "path/win32" {
import path = require("path");
export = path;
}
/**
* The `node:path` module provides utilities for working with file and directory
* paths. It can be accessed using:
*
* ```js
* import path from 'node:path';
* ```
* @see [source](https://github.com/nodejs/node/blob/v24.x/lib/path.js)
*/
declare module "path" {
namespace path {
/**
* A parsed path object generated by path.parse() or consumed by path.format().
*/
interface ParsedPath {
/**
* The root of the path such as '/' or 'c:\'
*/
root: string;
/**
* The full directory path such as '/home/user/dir' or 'c:\path\dir'
*/
dir: string;
/**
* The file name including extension (if any) such as 'index.html'
*/
base: string;
/**
* The file extension (if any) such as '.html'
*/
ext: string;
/**
* The file name without extension (if any) such as 'index'
*/
name: string;
}
interface FormatInputPathObject {
/**
* The root of the path such as '/' or 'c:\'
*/
root?: string | undefined;
/**
* The full directory path such as '/home/user/dir' or 'c:\path\dir'
*/
dir?: string | undefined;
/**
* The file name including extension (if any) such as 'index.html'
*/
base?: string | undefined;
/**
* The file extension (if any) such as '.html'
*/
ext?: string | undefined;
/**
* The file name without extension (if any) such as 'index'
*/
name?: string | undefined;
}
interface PlatformPath {
/**
* Normalize a string path, reducing '..' and '.' parts.
* When multiple slashes are found, they're replaced by a single one; when the path contains a trailing slash, it is preserved. On Windows backslashes are used. If the path is a zero-length string, '.' is returned, representing the current working directory.
*
* @param path string path to normalize.
* @throws {TypeError} if `path` is not a string.
*/
normalize(path: string): string;
/**
* Join all arguments together and normalize the resulting path.
*
* @param paths paths to join.
* @throws {TypeError} if any of the path segments is not a string.
*/
join(...paths: string[]): string;
/**
* The right-most parameter is considered {to}. Other parameters are considered an array of {from}.
*
* Starting from leftmost {from} parameter, resolves {to} to an absolute path.
*
* If {to} isn't already absolute, {from} arguments are prepended in right to left order,
* until an absolute path is found. If after using all {from} paths still no absolute path is found,
* the current working directory is used as well. The resulting path is normalized,
* and trailing slashes are removed unless the path gets resolved to the root directory.
*
* @param paths A sequence of paths or path segments.
* @throws {TypeError} if any of the arguments is not a string.
*/
resolve(...paths: string[]): string;
/**
* The `path.matchesGlob()` method determines if `path` matches the `pattern`.
* @param path The path to glob-match against.
* @param pattern The glob to check the path against.
* @returns Whether or not the `path` matched the `pattern`.
* @throws {TypeError} if `path` or `pattern` are not strings.
* @since v22.5.0
*/
matchesGlob(path: string, pattern: string): boolean;
/**
* Determines whether {path} is an absolute path. An absolute path will always resolve to the same location, regardless of the working directory.
*
* If the given {path} is a zero-length string, `false` will be returned.
*
* @param path path to test.
* @throws {TypeError} if `path` is not a string.
*/
isAbsolute(path: string): boolean;
/**
* Solve the relative path from {from} to {to} based on the current working directory.
* At times we have two absolute paths, and we need to derive the relative path from one to the other. This is actually the reverse transform of path.resolve.
*
* @throws {TypeError} if either `from` or `to` is not a string.
*/
relative(from: string, to: string): string;
/**
* Return the directory name of a path. Similar to the Unix dirname command.
*
* @param path the path to evaluate.
* @throws {TypeError} if `path` is not a string.
*/
dirname(path: string): string;
/**
* Return the last portion of a path. Similar to the Unix basename command.
* Often used to extract the file name from a fully qualified path.
*
* @param path the path to evaluate.
* @param suffix optionally, an extension to remove from the result.
* @throws {TypeError} if `path` is not a string or if `ext` is given and is not a string.
*/
basename(path: string, suffix?: string): string;
/**
* Return the extension of the path, from the last '.' to end of string in the last portion of the path.
* If there is no '.' in the last portion of the path or the first character of it is '.', then it returns an empty string.
*
* @param path the path to evaluate.
* @throws {TypeError} if `path` is not a string.
*/
extname(path: string): string;
/**
* The platform-specific file separator. '\\' or '/'.
*/
readonly sep: "\\" | "/";
/**
* The platform-specific file delimiter. ';' or ':'.
*/
readonly delimiter: ";" | ":";
/**
* Returns an object from a path string - the opposite of format().
*
* @param path path to evaluate.
* @throws {TypeError} if `path` is not a string.
*/
parse(path: string): ParsedPath;
/**
* Returns a path string from an object - the opposite of parse().
*
* @param pathObject path to evaluate.
*/
format(pathObject: FormatInputPathObject): string;
/**
* On Windows systems only, returns an equivalent namespace-prefixed path for the given path.
* If path is not a string, path will be returned without modifications.
* This method is meaningful only on Windows system.
* On POSIX systems, the method is non-operational and always returns path without modifications.
*/
toNamespacedPath(path: string): string;
/**
* Posix specific pathing.
* Same as parent object on posix.
*/
readonly posix: PlatformPath;
/**
* Windows specific pathing.
* Same as parent object on windows
*/
readonly win32: PlatformPath;
}
}
const path: path.PlatformPath;
export = path;
}
declare module "node:path" {
import path = require("path");
export = path;
}
declare module "node:path/posix" {
import path = require("path/posix");
export = path;
}
declare module "node:path/win32" {
import path = require("path/win32");
export = path;
}
@@ -0,0 +1 @@
{"version":3,"file":"between-horizontal-end.js","sources":["../../../src/icons/between-horizontal-end.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name BetweenHorizontalEnd\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB3aWR0aD0iMTMiIGhlaWdodD0iNyIgeD0iMyIgeT0iMyIgcng9IjEiIC8+CiAgPHBhdGggZD0ibTIyIDE1LTMtMyAzLTMiIC8+CiAgPHJlY3Qgd2lkdGg9IjEzIiBoZWlnaHQ9IjciIHg9IjMiIHk9IjE0IiByeD0iMSIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/between-horizontal-end\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst BetweenHorizontalEnd = createLucideIcon('BetweenHorizontalEnd', [\n ['rect', { width: '13', height: '7', x: '3', y: '3', rx: '1', key: '11xb64' }],\n ['path', { d: 'm22 15-3-3 3-3', key: '26chmm' }],\n ['rect', { width: '13', height: '7', x: '3', y: '14', rx: '1', key: 'k6ky7n' }],\n]);\n\nexport default BetweenHorizontalEnd;\n"],"names":[],"mappings":";;;;;;;;;AAaM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAuB,iBAAiB,sBAAwB,CAAA,CAAA,CAAA;AAAA,CAAA,CACpE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,MAAM,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,GAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC7E,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC/C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,MAAM,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,GAAG,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA;AAChF,CAAC,CAAA,CAAA;;"}
@@ -0,0 +1,84 @@
import { ErrorHandler, FallbackRender } from "../components.js";
import { RefObject, createRef, forwardRef, startTransition, startViewTransition, use, useCallback, useDebugValue, useDeferredValue, useEffect, useId, useImperativeHandle, useInsertionEffect, useLayoutEffect, useMemo, useReducer, useRef, useState, useSyncExternalStore, useTransition, useViewTransition } from "../hooks/index.js";
import { AnimationEvent, CSSProperties, ClipboardEvent, ComponentClass, DragEvent, Event, FocusEvent, InputEvent, KeyboardEvent, MouseEvent, PointerEvent, PropsWithChildren, ReactElement, ReactNode, TouchEvent, TransitionEvent, WheelEvent } from "../types.js";
import { Children } from "../children.js";
import { useActionState, useFormStatus, useOptimistic } from "./hooks/index.js";
import { Context, useContext } from "../context.js";
import { Child, DOMAttributes, FC, JSX, JSXNode, Props, isValidElement, reactAPICompatVersion } from "../base.js";
import { ErrorBoundary, Suspense } from "./components.js";
import { createContext } from "./context.js";
import { Fragment } from "./jsx-dev-runtime.js";
import { createPortal, flushSync, render } from "./render.js";
//#region src/jsx/dom/index.d.ts
declare const createElement: (tag: string | ((props: Props) => JSXNode), props: Props | null, ...children: Child[]) => JSXNode;
declare const cloneElement: <T extends JSXNode | JSX.Element>(element: T, props: Props, ...children: Child[]) => T;
declare const memo: <T>(component: FC<T>, propsAreEqual?: (prevProps: Readonly<T>, nextProps: Readonly<T>) => boolean) => FC<T>;
declare const _default: {
version: string;
useState: {
<T>(initialState: T | (() => T)): [T, (newState: T | ((currentState: T) => T)) => void];
<T = undefined>(): [T | undefined, (newState: T | ((currentState: T | undefined) => T | undefined) | undefined) => void];
};
useEffect: (effect: () => void | (() => void), deps?: readonly unknown[]) => void;
useRef: typeof useRef;
useCallback: <T extends Function>(callback: T, deps: readonly unknown[]) => T;
use: <T>(promise: Promise<T>) => T;
startTransition: (callback: () => void) => void;
useTransition: () => [boolean, (callback: () => void | Promise<void>) => void];
useDeferredValue: <T>(value: T, initialValue?: T) => T;
startViewTransition: (callback: () => void) => void;
useViewTransition: () => [boolean, (callback: () => void) => void];
useMemo: <T>(factory: () => T, deps: readonly unknown[]) => T;
useLayoutEffect: (effect: () => void | (() => void), deps?: readonly unknown[]) => void;
useInsertionEffect: (effect: () => void | (() => void), deps?: readonly unknown[]) => void;
useReducer: <T, A>(reducer: (state: T, action: A) => T, initialArg: T, init?: (initialState: T) => T) => [T, (action: A) => void];
useId: () => string;
useDebugValue: (_value: unknown, _formatter?: (value: unknown) => string) => void;
createRef: <T>() => RefObject<T | null>;
forwardRef: <T, P = {}>(Component: (props: P, ref?: RefObject<T | null>) => JSX.Element) => ((props: P & {
ref?: RefObject<T | null>;
}) => JSX.Element);
useImperativeHandle: <T>(ref: RefObject<T | null>, createHandle: () => T, deps: readonly unknown[]) => void;
useSyncExternalStore: <T>(subscribe: (callback: () => void) => () => void, getSnapshot: () => T, getServerSnapshot?: () => T) => T;
useFormStatus: () => {
pending: false;
data: null;
method: null;
action: null;
} | {
pending: true;
data: FormData;
method: "get" | "post";
action: string | ((formData: FormData) => void | Promise<void>);
};
useActionState: <T>(fn: Function, initialState: T, permalink?: string) => [T, Function];
useOptimistic: <T, N>(state: T, updateState: (currentState: T, action: N) => T) => [T, (action: N) => void];
Suspense: FC<PropsWithChildren<{
fallback: any;
}>>;
ErrorBoundary: FC<PropsWithChildren<{
fallback?: Child;
fallbackRender?: FallbackRender;
onError?: ErrorHandler;
}>>;
createContext: <T>(defaultValue: T) => Context<T>;
useContext: <T>(context: Context<T>) => T;
memo: <T>(component: FC<T>, propsAreEqual?: (prevProps: Readonly<T>, nextProps: Readonly<T>) => boolean) => FC<T>;
isValidElement: (element: unknown) => element is JSXNode;
createElement: (tag: string | ((props: Props) => JSXNode), props: Props | null, ...children: Child[]) => JSXNode;
cloneElement: <T extends JSXNode | JSX.Element>(element: T, props: Props, ...children: Child[]) => T;
Children: {
map: (children: Child[], fn: (child: Child, index: number) => Child) => Child[];
forEach: (children: Child[], fn: (child: Child, index: number) => void) => void;
count: (children: Child[]) => number;
only: (_children: Child[]) => Child;
toArray: (children: Child) => Child[];
};
Fragment: (props: Record<string, unknown>) => JSXNode;
StrictMode: (props: Record<string, unknown>) => JSXNode;
flushSync: (callback: () => void) => void;
createPortal: (children: Child, container: HTMLElement, key?: string) => Child;
};
//#endregion
export { type AnimationEvent, type CSSProperties, type Child, Children, type ClipboardEvent, type ComponentClass, type Context, type DOMAttributes, type DragEvent, ErrorBoundary, type Event, type FC, type FocusEvent, Fragment, Fragment as StrictMode, type InputEvent, type JSXNode, type KeyboardEvent, type MouseEvent, type PointerEvent, type PropsWithChildren, type ReactElement, type ReactNode, type RefObject, Suspense, type TouchEvent, type TransitionEvent, type WheelEvent, cloneElement, createContext, createElement, createElement as jsx, createPortal, createRef, _default as default, flushSync, forwardRef, isValidElement, memo, render, startTransition, startViewTransition, use, useActionState, useCallback, useContext, useDebugValue, useDeferredValue, useEffect, useFormStatus, useId, useImperativeHandle, useInsertionEffect, useLayoutEffect, useMemo, useOptimistic, useReducer, useRef, useState, useSyncExternalStore, useTransition, useViewTransition, reactAPICompatVersion as version };
export {};
@@ -0,0 +1,875 @@
export default `flf2a$ 8 7 19 -1 20
Jacky font by Meph.'99
======================
-> Defined: ASCII code 32-126
-> Uppercase characters only.
O=============================================O
,,,,,,,, I __ __ ___ ___ _ _ _,,,_ I
.,,, __ \\_ I |M \\/ M| |E__| |P_ \\ | || | ASCII / o o \\ I
( ( o) \\_ I | |\\/| | | _| | _/ | HH | & more > P < I
\`\\ o)I |_| |_| |E__| |_P |_||_| ~~~~~~ \\_\\_/_/ I
\\ \\____/ I I
\\ ____/ I ASCII-, ANSI-, HTML-art, programs, ... I
) ) O=============================================O
\\__/ \\ Index page:
\\\\_ ) http://studenten.freepage.de/meph/ascii/ascii.htm
\\___ __ / English "fast-link" page:
_// \\\\_ http://studenten.freepage.de/meph/ascii/eng/eng.htm
$@
$@
$@
$@
$@
$@
$@
$@@
_______ @
\\ / @
\\ / @
) ( @
\\_/ @
_ @
(_) @
@@
_ _ @
(( (( @
)) )) @
@
@
@
@
@@
_ _ @
_| |_| |_ @
(_ _ _) @
| | | | @
_| |_| |_ @
(_ _ _) @
|_| |_| @
@@
_ @
_| |____ @
/ | |___/ @
(_(| |___ @
___| |_) ) @
/___| |__/ @
|_| @
@@
__ _ @
(__) / ) @
/ / @
/ / @
/ / @
/ / __ @
(_/ (__) @
@@
___ @
/ _ \\ @
( (_) ) @
\\/ / @
/ _/\\ @
( (_)_\\__ @
\\_______) @
\\_\\ @@
__ @
( ) @
\\/ @
@
@
@
@
@@
___ @
/ _( @
/ / @
( ( @
( ( @
\\ \\__ @
\\__( @
@@
___ @
)_ \\ @
\\ \\ @
) ) @
) ) @
__/ / @
)__/ @
@@
@
(\\/\\/) @
<(())> @
(/\\/\\) @
@
@
@
@@
_ @
| | @
___| |___ @
(___ ___) @
| | @
|_| @
@
@@
@
@
@
@
@
__ @
( ) @
/_/ @@
@
@
________ @
(________) @
@
@
@
@@
@
@
@
@
@
__ @
(__) @
@@
_ @
/ ) @
/ / @
/ / @
/ / @
/ / @
(_/ @
@@
____ @
/ __ \\ @
( ( ) ) @
( ( ) ) @
( ( ) ) @
( (__) ) @
\\____/ @
@@
____ @
/ / @
/ /) ) @
/_/( ( @
) ) @
( ( @
/__\\ @
@@
______ @
(____ \\ @
) / @
__ / / @
/ \\/ / __ @
( () \\__/ / @
\\__\\____( @
@@
_____ @
)__ \\ @
__) / @
(__ ( @
\\ \\ @
___/ ) @
)____/ @
@@
_ _ @
/ / / \\ @
( (__) (___ @
\\___ __( @
) ( @
) ( @
/___\\ @
@@
______ @
| ___( @
| |__ @
|___ \\ @
\\ \\ @
_____) ) @
)_____/ @
@@
______ @
/ ____( @
/ / @
( (_____ @
( ___ \\ @
\\ (___) )@
\\_____/ @
@@
_________ @
)____ / @
___) / @
)__ ( @
) ) @
( ( @
/__\\ @
@@
_____ @
/ _ \\ @
( (_) ) @
\\ _ / @
/ / \\ \\ @
( (___) ) @
\\_____/ @
@@
_____ @
/ __ \\ @
( (__) \\ @
\\_____ ) @
) ) @
____/ / @
)_____/ @
@@
@
__ @
(__) @
@
@
__ @
(__) @
@@
@
__ @
(__) @
@
@
__ @
) ) @
/_/ @@
_ @
/ ) @
/ / @
/ / @
\\ \\ @
\\ \\ @
\\_) @
@@
@
_______ @
(_______) @
_______ @
(_______) @
@
@
@@
_ @
( \\ @
\\ \\ @
\\ \\ @
/ / @
/ / @
(_/ @
@@
______ @
(_____ \\ @
___) ) @
( __/ @
)_) @
__ @
(__) @
@@
_______ @
// _\\\\ @
// ___)|\\\\ @
( / _ | )) @
\\\\( (_) |// @
\\\\\\___/\\/ @
\\____ @
@@
____ @
( ) @
/ /\\ \\ @
( (__) ) @
) ( @
/ /\\ \\ @
/__( )__\\ @
@@
______ @
(_ _ \\ @
) (_) ) @
\\ _/ @
/ _ \\ @
_) (_) ) @
(______/ @
@@
____ @
/ ___) @
/ / @
( ( @
( ( @
\\ \\___ @
\\____) @
@@
______ @
(_ __ \\ @
) ) \\ \\ @
( ( ) ) @
) ) ) ) @
/ /__/ / @
(______/ @
@@
_____ @
/ ___/ @
( (__ @
) __) @
( ( @
\\ \\___ @
\\____\\ @
@@
_________ @
(_ _____) @
) (___ @
( ___) @
) ( @
( ) @
\\_/ @
@@
_____ @
/ ___ \\ @
/ / \\_) @
( ( ____ @
( ( (__ ) @
\\ \\__/ / @
\\____/ @
@@
__ __ @
( \\ / ) @
\\ (__) / @
) __ ( @
( ( ) ) @
) )( ( @
/_/ \\_\\ @
@@
_____ @
(_ _) @
| | @
| | @
| | @
_| |__ @
/_____( @
@@
________ @
(___ ___) @
) ) @
( ( @
__ ) ) @
( (_/ / @
\\___/ @
@@
__ ___ @
() ) / __) @
( (_/ / @
() ( @
() /\\ \\ @
( ( \\ \\ @
()_) \\_\\ @
@@
_____ @
(_ _) @
| | @
| | @
| | __ @
__| |___) ) @
\\________/ @
@@
__ __ @
\\ \\ / / @
() \\/ () @
/ _ _ \\ @
/ / \\/ \\ \\ @
/_/ \\_\\ @
(/ \\) @
@@
__ _ @
/ \\ / ) @
/ /\\ \\ / / @
) ) ) ) ) ) @
( ( ( ( ( ( @
/ / \\ \\/ / @
(_/ \\__/ @
@@
____ @
/ __ \\ @
/ / \\ \\ @
( () () ) @
( () () ) @
\\ \\__/ / @
\\____/ @
@@
_____ @
( __ \\ @
) )_) ) @
( ___/ @
) ) @
( ( @
/__\\ @
@@
____ @
/ __ \\ @
/ / \\ \\ @
( ( ) ) @
( ( /\\) ) @
\\ \\_\\ \\/ @
\\___\\ \\_ @
\\__) @@
______ @
( __ \\ @
) (__) ) @
( __/ @
) \\ \\ _ @
( ( \\ \\_)) @
)_) \\__/ @
@@
_____ @
/ ____\\ @
( (___ @
\\___ \\ @
) ) @
___/ / @
/____/ @
@@
________ @
(___ ___) @
) ) @
( ( @
) ) @
( ( @
/__\\ @
@@
__ __ @
) ) ( ( @
( ( ) ) @
) ) ( ( @
( ( ) ) @
) \\__/ ( @
\\______/ @
@@
__ __ @
) ) ( ( @
( ( ) ) @
\\ \\ / / @
\\ \\/ / @
\\ / @
\\/ @
@@
___ ___ @
( ( ) ) @
\\ \\ _ / / @
\\ \\/ \\/ / @
) _ ( @
\\ ( ) / @
\\_/ \\_/ @
@@
__ __ @
(_ \\ / _) @
\\ \\_/ / @
\\ / @
/ _ \\ @
_/ / \\ \\_ @
(__/ \\__) @
@@
__ __ @
) \\ / ( @
\\ \\ / / @
\\ \\/ / @
\\ / @
)( @
/__\\ @
@@
______ @
(____ ) @
/ / @
___/ /_ @
/__ ___) @
/ /____ @
(_______) @
@@
_______ @
( ____( @
( ( @
( ( @
( ( @
( (____ @
(______( @
@@
_ @
( \\ @
\\ \\ @
\\ \\ @
\\ \\ @
\\ \\ @
\\_) @
@@
_______ @
)____ ) @
) ) @
) ) @
) ) @
_____) ) @
)______) @
@@
@
/\\ @
/ \\ @
/_/\\_\\ @
@
@
@
@@
@
@
@
@
@
___________ @
|___________| @
@@
_ @
\\\\ @
\\) @
@
@
@
@
@@
____ @
( ) @
/ /\\ \\ @
( (__) ) @
) ( @
/ /\\ \\ @
/__( )__\\ @
@@
______ @
(_ _ \\ @
) (_) ) @
\\ _/ @
/ _ \\ @
_) (_) ) @
(______/ @
@@
____ @
/ ___) @
/ / @
( ( @
( ( @
\\ \\___ @
\\____) @
@@
______ @
(_ __ \\ @
) ) \\ \\ @
( ( ) ) @
) ) ) ) @
/ /__/ / @
(______/ @
@@
_____ @
/ ___/ @
( (__ @
) __) @
( ( @
\\ \\___ @
\\____\\ @
@@
_________ @
(_ _____) @
) (___ @
( ___) @
) ( @
( ) @
\\_/ @
@@
_____ @
/ ___ \\ @
/ / \\_) @
( ( ____ @
( ( (__ ) @
\\ \\__/ / @
\\____/ @
@@
__ __ @
( \\ / ) @
\\ (__) / @
) __ ( @
( ( ) ) @
) )( ( @
/_/ \\_\\ @
@@
_____ @
(_ _) @
| | @
| | @
| | @
_| |__ @
/_____( @
@@
________ @
(___ ___) @
) ) @
( ( @
__ ) ) @
( (_/ / @
\\___/ @
@@
__ ___ @
() ) / __) @
( (_/ / @
() ( @
() /\\ \\ @
( ( \\ \\ @
()_) \\_\\ @
@@
_____ @
(_ _) @
| | @
| | @
| | __ @
__| |___) ) @
\\________/ @
@@
__ __ @
\\ \\ / / @
() \\/ () @
/ _ _ \\ @
/ / \\/ \\ \\ @
/_/ \\_\\ @
(/ \\) @
@@
__ _ @
/ \\ / ) @
/ /\\ \\ / / @
) ) ) ) ) ) @
( ( ( ( ( ( @
/ / \\ \\/ / @
(_/ \\__/ @
@@
____ @
/ __ \\ @
/ / \\ \\ @
( () () ) @
( () () ) @
\\ \\__/ / @
\\____/ @
@@
_____ @
( __ \\ @
) )_) ) @
( ___/ @
) ) @
( ( @
/__\\ @
@@
____ @
/ __ \\ @
/ / \\ \\ @
( ( ) ) @
( ( /\\) ) @
\\ \\_\\ \\/ @
\\___\\ \\_ @
\\__) @@
______ @
( __ \\ @
) (__) ) @
( __/ @
) \\ \\ _ @
( ( \\ \\_)) @
)_) \\__/ @
@@
_____ @
/ ____\\ @
( (___ @
\\___ \\ @
) ) @
___/ / @
/____/ @
@@
________ @
(___ ___) @
) ) @
( ( @
) ) @
( ( @
/__\\ @
@@
__ __ @
) ) ( ( @
( ( ) ) @
) ) ( ( @
( ( ) ) @
) \\__/ ( @
\\______/ @
@@
__ __ @
) ) ( ( @
( ( ) ) @
\\ \\ / / @
\\ \\/ / @
\\ / @
\\/ @
@@
___ ___ @
( ( ) ) @
\\ \\ _ / / @
\\ \\/ \\/ / @
) _ ( @
\\ ( ) / @
\\_/ \\_/ @
@@
__ __ @
(_ \\ / _) @
\\ \\_/ / @
\\ / @
/ _ \\ @
_/ / \\ \\_ @
(__/ \\__) @
@@
__ __ @
) \\ / ( @
\\ \\ / / @
\\ \\/ / @
\\ / @
)( @
/__\\ @
@@
______ @
(____ ) @
/ / @
___/ /_ @
/__ ___) @
/ /____ @
(_______) @
@@
_____ @
/ ___( @
) ) @
/ / @
\\ \\ @
) )___ @
(_____( @
@@
_ @
( ) @
( ) @
( ) @
( ) @
( ) @
(_) @
@@
______ @
)____ \\ @
( ( @
\\ \\ @
/ / @
____( ( @
)______) @
@@
@
___ _ @
/ _ \\_/ ) @
(_/ \\___/ @
@
@
@
@@
O __ O @
/ \\ @
/ /\\ \\ @
( (__) ) @
) ( @
/ /\\ \\ @
/__( )__\\ @
@@
O ____ O @
/ __ \\ @
/ / \\ \\ @
( () () ) @
( () () ) @
\\ \\__/ / @
\\____/ @
@@
O O @
__ __ @
( ( ) ) @
) ) ( ( @
( ( ) ) @
) \\__/ ( @
\\______/ @
@@
O __ O @
/ \\ @
/ /\\ \\ @
( (__) ) @
) ( @
/ /\\ \\ @
/__( )__\\ @
@@
O ____ O @
/ __ \\ @
/ / \\ \\ @
( () () ) @
( () () ) @
\\ \\__/ / @
\\____/ @
@@
O O @
__ __ @
( ( ) ) @
) ) ( ( @
( ( ) ) @
) \\__/ ( @
\\______/ @
@@
_____ @
/ ___ \\ @
( ( ) ) @
) ) / / @
( ( \\ \\ @
) ) /__) @
( ( @
)_) @@
167 Meph.
_ _ @
/\\/\\ |_ |_)|_| @
/ \\|_ | | |.@
-==============-@
(\\o---o/) @
\\ J / @
_/\\_-_/\\_ @
@@
178 :-)
______ @
/ ____ \\ @
/ / \\ \\ @
/ / O O \\ \\ @
( ( () ) ) @
\\ \\ \\__/ / / @
\\ \\____/ / @
\\______/ @@
179 :-(
______ @
/ ____ \\ @
/ / \\ \\ @
/ / O O \\ \\ @
( ( () ) ) @
\\ \\ __ / / @
\\ \\/__\\/ / @
\\______/ @@
180 BTS
BTS 1999 @
/\\ @
____/__\\____ @
\\__/ \\__/ @
/\\____/\\ @
/ __/\\__ \\ @
/_/ \\_\\ @
@@
`
@@ -0,0 +1,8 @@
import type { TSESTree } from '@typescript-eslint/types';
import type { ScopeManager } from '../ScopeManager';
import type { Scope } from './Scope';
import { ScopeBase } from './ScopeBase';
import { ScopeType } from './ScopeType';
export declare class BlockScope extends ScopeBase<ScopeType.block, TSESTree.BlockStatement, Scope> {
constructor(scopeManager: ScopeManager, upperScope: BlockScope['upper'], block: BlockScope['block']);
}
@@ -0,0 +1,240 @@
Overview [![Build Status](https://travis-ci.org/lydell/js-tokens.svg?branch=master)](https://travis-ci.org/lydell/js-tokens)
========
A regex that tokenizes JavaScript.
```js
var jsTokens = require("js-tokens").default
var jsString = "var foo=opts.foo;\n..."
jsString.match(jsTokens)
// ["var", " ", "foo", "=", "opts", ".", "foo", ";", "\n", ...]
```
Installation
============
`npm install js-tokens`
```js
import jsTokens from "js-tokens"
// or:
var jsTokens = require("js-tokens").default
```
Usage
=====
### `jsTokens` ###
A regex with the `g` flag that matches JavaScript tokens.
The regex _always_ matches, even invalid JavaScript and the empty string.
The next match is always directly after the previous.
### `var token = matchToToken(match)` ###
```js
import {matchToToken} from "js-tokens"
// or:
var matchToToken = require("js-tokens").matchToToken
```
Takes a `match` returned by `jsTokens.exec(string)`, and returns a `{type:
String, value: String}` object. The following types are available:
- string
- comment
- regex
- number
- name
- punctuator
- whitespace
- invalid
Multi-line comments and strings also have a `closed` property indicating if the
token was closed or not (see below).
Comments and strings both come in several flavors. To distinguish them, check if
the token starts with `//`, `/*`, `'`, `"` or `` ` ``.
Names are ECMAScript IdentifierNames, that is, including both identifiers and
keywords. You may use [is-keyword-js] to tell them apart.
Whitespace includes both line terminators and other whitespace.
[is-keyword-js]: https://github.com/crissdev/is-keyword-js
ECMAScript support
==================
The intention is to always support the latest ECMAScript version whose feature
set has been finalized.
If adding support for a newer version requires changes, a new version with a
major verion bump will be released.
Currently, ECMAScript 2018 is supported.
Invalid code handling
=====================
Unterminated strings are still matched as strings. JavaScript strings cannot
contain (unescaped) newlines, so unterminated strings simply end at the end of
the line. Unterminated template strings can contain unescaped newlines, though,
so they go on to the end of input.
Unterminated multi-line comments are also still matched as comments. They
simply go on to the end of the input.
Unterminated regex literals are likely matched as division and whatever is
inside the regex.
Invalid ASCII characters have their own capturing group.
Invalid non-ASCII characters are treated as names, to simplify the matching of
names (except unicode spaces which are treated as whitespace). Note: See also
the [ES2018](#es2018) section.
Regex literals may contain invalid regex syntax. They are still matched as
regex literals. They may also contain repeated regex flags, to keep the regex
simple.
Strings may contain invalid escape sequences.
Limitations
===========
Tokenizing JavaScript using regexes—in fact, _one single regex_—won’t be
perfect. But that’s not the point either.
You may compare jsTokens with [esprima] by using `esprima-compare.js`.
See `npm run esprima-compare`!
[esprima]: http://esprima.org/
### Template string interpolation ###
Template strings are matched as single tokens, from the starting `` ` `` to the
ending `` ` ``, including interpolations (whose tokens are not matched
individually).
Matching template string interpolations requires recursive balancing of `{` and
`}`—something that JavaScript regexes cannot do. Only one level of nesting is
supported.
### Division and regex literals collision ###
Consider this example:
```js
var g = 9.82
var number = bar / 2/g
var regex = / 2/g
```
A human can easily understand that in the `number` line we’re dealing with
division, and in the `regex` line we’re dealing with a regex literal. How come?
Because humans can look at the whole code to put the `/` characters in context.
A JavaScript regex cannot. It only sees forwards. (Well, ES2018 regexes can also
look backwards. See the [ES2018](#es2018) section).
When the `jsTokens` regex scans throught the above, it will see the following
at the end of both the `number` and `regex` rows:
```js
/ 2/g
```
It is then impossible to know if that is a regex literal, or part of an
expression dealing with division.
Here is a similar case:
```js
foo /= 2/g
foo(/= 2/g)
```
The first line divides the `foo` variable with `2/g`. The second line calls the
`foo` function with the regex literal `/= 2/g`. Again, since `jsTokens` only
sees forwards, it cannot tell the two cases apart.
There are some cases where we _can_ tell division and regex literals apart,
though.
First off, we have the simple cases where there’s only one slash in the line:
```js
var foo = 2/g
foo /= 2
```
Regex literals cannot contain newlines, so the above cases are correctly
identified as division. Things are only problematic when there are more than
one non-comment slash in a single line.
Secondly, not every character is a valid regex flag.
```js
var number = bar / 2/e
```
The above example is also correctly identified as division, because `e` is not a
valid regex flag. I initially wanted to future-proof by allowing `[a-zA-Z]*`
(any letter) as flags, but it is not worth it since it increases the amount of
ambigous cases. So only the standard `g`, `m`, `i`, `y` and `u` flags are
allowed. This means that the above example will be identified as division as
long as you don’t rename the `e` variable to some permutation of `gmiyus` 1 to 6
characters long.
Lastly, we can look _forward_ for information.
- If the token following what looks like a regex literal is not valid after a
regex literal, but is valid in a division expression, then the regex literal
is treated as division instead. For example, a flagless regex cannot be
followed by a string, number or name, but all of those three can be the
denominator of a division.
- Generally, if what looks like a regex literal is followed by an operator, the
regex literal is treated as division instead. This is because regexes are
seldomly used with operators (such as `+`, `*`, `&&` and `==`), but division
could likely be part of such an expression.
Please consult the regex source and the test cases for precise information on
when regex or division is matched (should you need to know). In short, you
could sum it up as:
If the end of a statement looks like a regex literal (even if it isn’t), it
will be treated as one. Otherwise it should work as expected (if you write sane
code).
### ES2018 ###
ES2018 added some nice regex improvements to the language.
- [Unicode property escapes] should allow telling names and invalid non-ASCII
characters apart without blowing up the regex size.
- [Lookbehind assertions] should allow matching telling division and regex
literals apart in more cases.
- [Named capture groups] might simplify some things.
These things would be nice to do, but are not critical. They probably have to
wait until the oldest maintained Node.js LTS release supports those features.
[Unicode property escapes]: http://2ality.com/2017/07/regexp-unicode-property-escapes.html
[Lookbehind assertions]: http://2ality.com/2017/05/regexp-lookbehind-assertions.html
[Named capture groups]: http://2ality.com/2017/05/regexp-named-capture-groups.html
License
=======
[MIT](LICENSE).
@@ -0,0 +1,66 @@
import type { SerovalNode } from 'seroval';
import { createPlugin } from 'seroval';
function createCustomEventOptions(current: CustomEvent): CustomEventInit {
return {
detail: current.detail as unknown,
bubbles: current.bubbles,
cancelable: current.cancelable,
composed: current.composed,
};
}
type CustomEventNode = {
type: SerovalNode;
options: SerovalNode;
};
const CustomEventPlugin = /* @__PURE__ */ createPlugin<
CustomEvent,
CustomEventNode
>({
tag: 'seroval-plugins/web/CustomEvent',
test(value) {
if (typeof CustomEvent === 'undefined') {
return false;
}
return value instanceof CustomEvent;
},
parse: {
sync(value, ctx) {
return {
type: ctx.parse(value.type),
options: ctx.parse(createCustomEventOptions(value)),
};
},
async async(value, ctx) {
return {
type: await ctx.parse(value.type),
options: await ctx.parse(createCustomEventOptions(value)),
};
},
stream(value, ctx) {
return {
type: ctx.parse(value.type),
options: ctx.parse(createCustomEventOptions(value)),
};
},
},
serialize(node, ctx) {
return (
'new CustomEvent(' +
ctx.serialize(node.type) +
',' +
ctx.serialize(node.options) +
')'
);
},
deserialize(node, ctx) {
return new CustomEvent(
ctx.deserialize(node.type) as string,
ctx.deserialize(node.options) as CustomEventInit,
);
},
});
export default CustomEventPlugin;
@@ -0,0 +1,119 @@
declare type CallbackFunction<T = string> = (error: Error | null, result?: T) => void;
declare interface FigletDefaults {
font: FontName;
fontPath: string;
fetchFontIfMissing: boolean;
}
declare class FigletFont {
options: FontMetadata;
comment: string;
numChars: number;
[charCode: number]: string[];
constructor();
}
declare interface FigletModule {
loadFont: (font: FontName, callback?: CallbackFunction<FontMetadata>) => Promise<FontMetadata | null>;
loadFontSync: (font: FontName) => FontMetadata;
fonts: (callback?: CallbackFunction<FontName[]>) => Promise<FontName[]>;
fontsSync: () => FontName[];
parseFont: (font: FontName, data: string, override?: boolean) => FontMetadata;
preloadFonts: (fonts: FontName[], callback?: (error?: Error) => void) => Promise<void>;
loadedFonts: () => string[];
clearLoadedFonts: () => void;
textSync: (text: string, options?: FigletOptions) => string;
text: (text: string, optionsOrFontOrCallback?: FigletOptions | FontName | CallbackFunction<string>, callback?: CallbackFunction<string>) => Promise<string>;
(text: string, optionsOrFontOrCallback?: FigletOptions | FontName | CallbackFunction<string>, callback?: CallbackFunction<string>): Promise<string>;
figFonts: Record<string, FigletFont>;
defaults: (opts?: Partial<FigletDefaults>) => FigletDefaults;
metadata: (fontName: FontName, callback?: (error: Error | null, fontOptions?: FontMetadata, comment?: string) => void) => Promise<[FontMetadata, string] | null>;
}
declare interface FigletOptions {
font?: FontName;
horizontalLayout?: KerningMethods;
verticalLayout?: KerningMethods;
width?: number;
whitespaceBreak?: boolean;
printDirection?: PrintDirection;
showHardBlanks?: boolean;
}
declare interface FittingRules {
hLayout: number;
hRule1: boolean;
hRule2: boolean;
hRule3: boolean;
hRule4: boolean;
hRule5: boolean;
hRule6: boolean;
vLayout: number;
vRule1: boolean;
vRule2: boolean;
vRule3: boolean;
vRule4: boolean;
vRule5: boolean;
}
declare interface FontMetadata {
baseline?: number;
codeTagCount?: number | null;
fittingRules: FittingRules;
fullLayout?: number | null;
hardBlank?: string;
height?: number;
maxLength?: number;
numCommentLines?: number;
oldLayout?: number;
printDirection?: PrintDirection;
}
declare type FontName =
"1Row"
| "3-D"
| "3D Diagonal"
| "3D-ASCII"
| "3x5"
| "4Max"
| "5 Line Oblique"
| "Standard"
| "Ghost"
| "Big"
| "Block"
| "Bubble"
| "Digital"
| "Ivrit"
| "Mini"
| "Script"
| "Shadow"
| "Slant"
| "Small"
| "Speed"
| "Tinker-Toy"
| string;
declare type KerningMethods = "default" | "full" | "fitted" | "controlled smushing" | "universal smushing";
declare type PrintDirection = -1 | 0 | 1;
declare const figlet: FigletModule;
declare namespace figlet {
export type {
CallbackFunction,
FigletDefaults,
FigletOptions,
FontMetadata,
FontName,
KerningMethods,
PrintDirection
};
}
export = figlet;
@@ -0,0 +1,19 @@
/**
* @license lucide-react v0.469.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/
import createLucideIcon from '../createLucideIcon.js';
const Focus = createLucideIcon("Focus", [
["circle", { cx: "12", cy: "12", r: "3", key: "1v7zrd" }],
["path", { d: "M3 7V5a2 2 0 0 1 2-2h2", key: "aa7l1z" }],
["path", { d: "M17 3h2a2 2 0 0 1 2 2v2", key: "4qcy5o" }],
["path", { d: "M21 17v2a2 2 0 0 1-2 2h-2", key: "6vwrx8" }],
["path", { d: "M7 21H5a2 2 0 0 1-2-2v-2", key: "ioqczr" }]
]);
export { Focus as default };
//# sourceMappingURL=focus.js.map
@@ -0,0 +1 @@
{"version":3,"file":"encode.js","sourceRoot":"","sources":["../../src/encode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAExD,MAAM,YAAY,GAAG,sCAAsC,CAAC;AAE5D;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,KAAa;IACpC,OAAO,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AACD;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC5C,OAAO,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAc,EAAE,KAAa;IACnD,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,KAAK,CAAC;IAEV,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC3C,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;QACxB,WAAW,IAAI,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAE9B,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,kDAAkD;YAClD,IAAI,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC3B,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gBAC7C,MAAM,KAAK,GACP,OAAO,IAAI,CAAC,CAAC,KAAK,QAAQ;oBACtB,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,QAAQ;wBACjB,CAAC,CAAC,IAAI,CAAC,CAAC;wBACR,CAAC,CAAC,SAAS;oBACf,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAE/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtB,WAAW,IAAI,KAAK,CAAC;oBACrB,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC;oBAClC,SAAS;gBACb,CAAC;YACL,CAAC;YAED,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,4EAA4E;QAC5E,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACrB,MAAM,EAAE,GAAG,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACtC,WAAW,IAAI,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC;YACxC,4CAA4C;YAC5C,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACJ,WAAW,IAAI,IAAI,CAAC;YACpB,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;QAC1B,CAAC;IACL,CAAC;IAED,OAAO,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACjD,CAAC"}
@@ -0,0 +1,21 @@
/**
* @license React
* react-dom-test-utils.production.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
"use strict";
var React = require("react"),
didWarnAboutUsingAct = !1;
exports.act = function (callback) {
!1 === didWarnAboutUsingAct &&
((didWarnAboutUsingAct = !0),
console.error(
"`ReactDOMTestUtils.act` is deprecated in favor of `React.act`. Import `act` from `react` instead of `react-dom/test-utils`. See https://react.dev/warnings/react-dom-test-utils for more info."
));
return React.act(callback);
};
@@ -0,0 +1,75 @@
{
"name": "@typescript-eslint/project-service",
"version": "8.58.2",
"description": "Standalone TypeScript project service wrapper for linting.",
"files": [
"dist",
"!**/*.tsbuildinfo",
"package.json",
"README.md",
"LICENSE"
],
"type": "commonjs",
"exports": {
".": {
"types": "./dist/index.d.ts",
"default": "./dist/index.js"
},
"./package.json": "./package.json"
},
"types": "./dist/index.d.ts",
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"repository": {
"type": "git",
"url": "https://github.com/typescript-eslint/typescript-eslint.git",
"directory": "packages/project-service"
},
"bugs": {
"url": "https://github.com/typescript-eslint/typescript-eslint/issues"
},
"homepage": "https://typescript-eslint.io",
"license": "MIT",
"keywords": [
"eslint",
"typescript",
"estree"
],
"peerDependencies": {
"typescript": ">=4.8.4 <6.1.0"
},
"dependencies": {
"debug": "^4.4.3",
"@typescript-eslint/tsconfig-utils": "^8.58.2",
"@typescript-eslint/types": "^8.58.2"
},
"devDependencies": {
"@vitest/coverage-v8": "^4.0.18",
"rimraf": "^5.0.10",
"typescript": ">=4.8.4 <6.1.0",
"vitest": "^4.0.18"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"publishConfig": {
"access": "public"
},
"nx": {
"name": "project-service",
"includedScripts": [
"clean"
]
},
"scripts": {
"//": "These package scripts are mostly here for convenience. Task running is handled by Nx at the root level.",
"build": "pnpm exec nx build",
"clean": "rimraf dist/ coverage/",
"format": "pnpm -w run format",
"lint": "pnpm -w exec nx lint",
"test": "pnpm -w exec nx test",
"typecheck": "pnpm -w exec nx typecheck"
}
}
@@ -0,0 +1,18 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = _taggedTemplateLiteral;
function _taggedTemplateLiteral(strings, raw) {
if (!raw) {
raw = strings.slice(0);
}
return Object.freeze(Object.defineProperties(strings, {
raw: {
value: Object.freeze(raw)
}
}));
}
//# sourceMappingURL=taggedTemplateLiteral.js.map
@@ -0,0 +1 @@
{"version":3,"file":"decode-codepoint.d.ts","sourceRoot":"","sources":["../../src/decode-codepoint.ts"],"names":[],"mappings":"AAkCA;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,CAAC,GAAG,UAAU,EAAE,MAAM,EAAE,KAAK,MAgBpD,CAAC;AAEN;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAS1D;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEzD"}
@@ -0,0 +1,35 @@
import * as React from 'react'
import { DefaultGlobalNotFound } from './not-found'
import type { AnyRoute, AnyRouter } from '@tanstack/router-core'
/**
* Renders a not found component for a route when no matching route is found.
*
* @param router - The router instance containing the route configuration
* @param route - The route that triggered the not found state
* @param data - Additional data to pass to the not found component
* @returns The rendered not found component or a default fallback component
*/
export function renderRouteNotFound(
router: AnyRouter,
route: AnyRoute,
data: any,
) {
if (!route.options.notFoundComponent) {
if (router.options.defaultNotFoundComponent) {
return <router.options.defaultNotFoundComponent {...data} />
}
if (process.env.NODE_ENV !== 'production') {
if (!route.options.notFoundComponent) {
console.warn(
`Warning: A notFoundError was encountered on the route with ID "${route.id}", but a notFoundComponent option was not configured, nor was a router level defaultNotFoundComponent configured. Consider configuring at least one of these to avoid TanStack Router's overly generic defaultNotFoundComponent (<p>Not Found</p>)`,
)
}
}
return <DefaultGlobalNotFound />
}
return <route.options.notFoundComponent {...data} />
}
@@ -0,0 +1,32 @@
// @ts-ignore TS6133
import { expect, test } from "vitest";
import * as z from "zod/v3";
const beforeBenchmarkDate = new Date(2022, 10, 4);
const benchmarkDate = new Date(2022, 10, 5);
const afterBenchmarkDate = new Date(2022, 10, 6);
const minCheck = z.date().min(benchmarkDate);
const maxCheck = z.date().max(benchmarkDate);
test("passing validations", () => {
minCheck.parse(benchmarkDate);
minCheck.parse(afterBenchmarkDate);
maxCheck.parse(benchmarkDate);
maxCheck.parse(beforeBenchmarkDate);
});
test("failing validations", () => {
expect(() => minCheck.parse(beforeBenchmarkDate)).toThrow();
expect(() => maxCheck.parse(afterBenchmarkDate)).toThrow();
});
test("min max getters", () => {
expect(minCheck.minDate).toEqual(benchmarkDate);
expect(minCheck.min(afterBenchmarkDate).minDate).toEqual(afterBenchmarkDate);
expect(maxCheck.maxDate).toEqual(benchmarkDate);
expect(maxCheck.max(beforeBenchmarkDate).maxDate).toEqual(beforeBenchmarkDate);
});
@@ -0,0 +1,66 @@
import { getBunServer } from "./server.js";
import { WSContext, createWSMessageEvent, defineWebSocketHelper } from "../../helper/websocket/index.js";
//#region src/adapter/bun/websocket.ts
/**
* @internal
* @deprecated `hono/bun` will be removed in v5. Install `@hono/bun` and import from there instead.
*/
const createWSContext = (ws) => {
return new WSContext({
send: (source, options) => {
ws.send(source, options?.compress);
},
raw: ws,
readyState: ws.readyState,
url: ws.data.url,
protocol: ws.data.protocol,
close(code, reason) {
ws.close(code, reason);
}
});
};
/**
* @deprecated `hono/bun` will be removed in v5. Install `@hono/bun` and import from there instead.
*/
const upgradeWebSocket = defineWebSocketHelper((c, events) => {
const server = getBunServer(c);
if (!server) throw new TypeError("env has to include the 2nd argument of fetch.");
if (server.upgrade(c.req.raw, { data: {
events,
url: new URL(c.req.url),
protocol: c.req.header("sec-websocket-protocol")?.split(",")[0]?.trim() ?? ""
} })) return new Response(null);
});
/**
* @deprecated `hono/bun` will be removed in v5. Install `@hono/bun` and import from there instead.
*/
const websocket = {
open(ws) {
const websocketListeners = ws.data.events;
if (websocketListeners.onOpen) websocketListeners.onOpen(new Event("open"), createWSContext(ws));
},
close(ws, code, reason) {
const websocketListeners = ws.data.events;
if (websocketListeners.onClose) websocketListeners.onClose(new CloseEvent("close", {
code,
reason
}), createWSContext(ws));
},
message(ws, message) {
const websocketListeners = ws.data.events;
if (websocketListeners.onMessage) {
const normalizedReceiveData = typeof message === "string" ? message : message.buffer;
websocketListeners.onMessage(createWSMessageEvent(normalizedReceiveData), createWSContext(ws));
}
}
};
/**
* @deprecated Import `upgradeWebSocket` and `websocket` directly from `hono/bun` instead.
* @returns A function to create a Bun WebSocket handler.
*/
const createBunWebSocket = () => ({
upgradeWebSocket,
websocket
});
//#endregion
export { createBunWebSocket, createWSContext, upgradeWebSocket, websocket };
@@ -0,0 +1,41 @@
export const COMPLETABLE_SYMBOL = Symbol.for('mcp.completable');
/**
* Wraps a Zod type to provide autocompletion capabilities. Useful for, e.g., prompt arguments in MCP.
* Works with both Zod v3 and v4 schemas.
*/
export function completable(schema, complete) {
Object.defineProperty(schema, COMPLETABLE_SYMBOL, {
value: { complete },
enumerable: false,
writable: false,
configurable: false
});
return schema;
}
/**
* Checks if a schema is completable (has completion metadata).
*/
export function isCompletable(schema) {
return !!schema && typeof schema === 'object' && COMPLETABLE_SYMBOL in schema;
}
/**
* Gets the completer callback from a completable schema, if it exists.
*/
export function getCompleter(schema) {
const meta = schema[COMPLETABLE_SYMBOL];
return meta?.complete;
}
/**
* Unwraps a completable schema to get the underlying schema.
* For backward compatibility with code that called `.unwrap()`.
*/
export function unwrapCompletable(schema) {
return schema;
}
// Legacy exports for backward compatibility
// These types are deprecated but kept for existing code
export var McpZodTypeKind;
(function (McpZodTypeKind) {
McpZodTypeKind["Completable"] = "McpCompletable";
})(McpZodTypeKind || (McpZodTypeKind = {}));
//# sourceMappingURL=completable.js.map
@@ -0,0 +1,183 @@
import { createControlledPromise } from "../utils.js";
import { invariant } from "../invariant.js";
import { isNotFound } from "../not-found.js";
import { hydrateSsrMatchId } from "./ssr-match-id.js";
//#region src/ssr/ssr-client.ts
function hydrateMatch(match, deyhydratedMatch) {
match.id = deyhydratedMatch.i;
match.__beforeLoadContext = deyhydratedMatch.b;
match.loaderData = deyhydratedMatch.l;
match.status = deyhydratedMatch.s;
match.ssr = deyhydratedMatch.ssr;
match.updatedAt = deyhydratedMatch.u;
match.error = deyhydratedMatch.e;
if (deyhydratedMatch.g !== void 0) match.globalNotFound = deyhydratedMatch.g;
}
async function hydrate(router) {
if (!window.$_TSR) {
if (process.env.NODE_ENV !== "production") throw new Error("Invariant failed: Expected to find bootstrap data on window.$_TSR, but we did not. Please file an issue!");
invariant();
}
const serializationAdapters = router.options.serializationAdapters;
if (serializationAdapters?.length) {
const fromSerializableMap = /* @__PURE__ */ new Map();
serializationAdapters.forEach((adapter) => {
fromSerializableMap.set(adapter.key, adapter.fromSerializable);
});
window.$_TSR.t = fromSerializableMap;
window.$_TSR.buffer.forEach((script) => script());
}
window.$_TSR.initialized = true;
if (!window.$_TSR.router) {
if (process.env.NODE_ENV !== "production") throw new Error("Invariant failed: Expected to find a dehydrated data on window.$_TSR.router, but we did not. Please file an issue!");
invariant();
}
const dehydratedRouter = window.$_TSR.router;
dehydratedRouter.matches.forEach((dehydratedMatch) => {
dehydratedMatch.i = hydrateSsrMatchId(dehydratedMatch.i);
});
if (dehydratedRouter.lastMatchId) dehydratedRouter.lastMatchId = hydrateSsrMatchId(dehydratedRouter.lastMatchId);
const { manifest, dehydratedData, lastMatchId } = dehydratedRouter;
router.ssr = { manifest };
const nonce = document.querySelector("meta[property=\"csp-nonce\"]")?.content;
router.options.ssr = { nonce };
const matches = router.matchRoutes(router.stores.location.get());
const routeChunkPromise = Promise.all(matches.map((match) => router.loadRouteChunk(router.looseRoutesById[match.routeId])));
function setMatchForcePending(match) {
const pendingMinMs = router.looseRoutesById[match.routeId].options.pendingMinMs ?? router.options.defaultPendingMinMs;
if (pendingMinMs) {
const minPendingPromise = createControlledPromise();
match._nonReactive.minPendingPromise = minPendingPromise;
match._forcePending = true;
setTimeout(() => {
minPendingPromise.resolve();
router.updateMatch(match.id, (prev) => {
prev._nonReactive.minPendingPromise = void 0;
return {
...prev,
_forcePending: void 0
};
});
}, pendingMinMs);
}
}
function setRouteSsr(match) {
const route = router.looseRoutesById[match.routeId];
if (route) route.options.ssr = match.ssr;
}
let firstNonSsrMatchIndex = void 0;
matches.forEach((match) => {
const dehydratedMatch = dehydratedRouter.matches.find((d) => d.i === match.id);
if (!dehydratedMatch) {
match._nonReactive.dehydrated = false;
match.ssr = false;
setRouteSsr(match);
return;
}
hydrateMatch(match, dehydratedMatch);
setRouteSsr(match);
match._nonReactive.dehydrated = match.ssr !== false;
if (match.ssr === "data-only" || match.ssr === false) {
if (firstNonSsrMatchIndex === void 0) {
firstNonSsrMatchIndex = match.index;
setMatchForcePending(match);
}
}
});
router.stores.setMatches(matches);
await router.options.hydrate?.(dehydratedData);
const activeMatches = router.stores.matches.get();
const location = router.stores.location.get();
await Promise.all(activeMatches.map(async (match) => {
try {
const route = router.looseRoutesById[match.routeId];
const parentContext = activeMatches[match.index - 1]?.context ?? router.options.context;
if (route.options.context) {
const contextFnContext = {
deps: match.loaderDeps,
params: match.params,
context: parentContext ?? {},
location,
navigate: (opts) => router.navigate({
...opts,
_fromLocation: location
}),
buildLocation: router.buildLocation,
cause: match.cause,
abortController: match.abortController,
preload: false,
matches,
routeId: route.id
};
match.__routeContext = route.options.context(contextFnContext) ?? void 0;
}
match.context = {
...parentContext,
...match.__routeContext,
...match.__beforeLoadContext
};
const assetContext = {
ssr: router.options.ssr,
matches: activeMatches,
match,
params: match.params,
loaderData: match.loaderData
};
const headFnContent = await route.options.head?.(assetContext);
const scripts = await route.options.scripts?.(assetContext);
match.meta = headFnContent?.meta;
match.links = headFnContent?.links;
match.headScripts = headFnContent?.scripts;
match.styles = headFnContent?.styles;
match.scripts = scripts;
} catch (err) {
if (isNotFound(err)) {
match.error = { isNotFound: true };
console.error(`NotFound error during hydration for routeId: ${match.routeId}`, err);
} else {
match.error = err;
console.error(`Error during hydration for route ${match.routeId}:`, err);
throw err;
}
}
}));
const isSpaMode = matches[matches.length - 1].id !== lastMatchId;
if (!matches.some((m) => m.ssr === false) && !isSpaMode) {
matches.forEach((match) => {
match._nonReactive.dehydrated = void 0;
});
router.stores.resolvedLocation.set(router.stores.location.get());
return routeChunkPromise;
}
const loadPromise = Promise.resolve().then(() => router.load()).catch((err) => {
console.error("Error during router hydration:", err);
});
if (isSpaMode) {
const match = matches[1];
if (!match) {
if (process.env.NODE_ENV !== "production") throw new Error("Invariant failed: Expected to find a match below the root match in SPA mode.");
invariant();
}
setMatchForcePending(match);
match._displayPending = true;
match._nonReactive.displayPendingPromise = loadPromise;
loadPromise.then(() => {
router.batch(() => {
if (router.stores.status.get() === "pending") {
router.stores.status.set("idle");
router.stores.resolvedLocation.set(router.stores.location.get());
}
router.updateMatch(match.id, (prev) => ({
...prev,
_displayPending: void 0,
displayPendingPromise: void 0
}));
});
});
}
return routeChunkPromise;
}
//#endregion
export { hydrate };
//# sourceMappingURL=ssr-client.js.map
@@ -0,0 +1,6 @@
import type { TSESLint } from '@typescript-eslint/utils';
export type MessageIds = 'addUnknownRestTypeAnnotationSuggestion' | 'addUnknownTypeAnnotationSuggestion' | 'useUnknown' | 'useUnknownArrayDestructuringPattern' | 'useUnknownObjectDestructuringPattern' | 'wrongRestTypeAnnotationSuggestion' | 'wrongTypeAnnotationSuggestion';
declare const _default: TSESLint.RuleModule<MessageIds, [], import("../../rules").ESLintPluginDocs, TSESLint.RuleListener> & {
name: string;
};
export default _default;
@@ -0,0 +1,95 @@
/*!
* ee-first
* Copyright(c) 2014 Jonathan Ong
* MIT Licensed
*/
'use strict'
/**
* Module exports.
* @public
*/
module.exports = first
/**
* Get the first event in a set of event emitters and event pairs.
*
* @param {array} stuff
* @param {function} done
* @public
*/
function first(stuff, done) {
if (!Array.isArray(stuff))
throw new TypeError('arg must be an array of [ee, events...] arrays')
var cleanups = []
for (var i = 0; i < stuff.length; i++) {
var arr = stuff[i]
if (!Array.isArray(arr) || arr.length < 2)
throw new TypeError('each array member must be [ee, events...]')
var ee = arr[0]
for (var j = 1; j < arr.length; j++) {
var event = arr[j]
var fn = listener(event, callback)
// listen to the event
ee.on(event, fn)
// push this listener to the list of cleanups
cleanups.push({
ee: ee,
event: event,
fn: fn,
})
}
}
function callback() {
cleanup()
done.apply(null, arguments)
}
function cleanup() {
var x
for (var i = 0; i < cleanups.length; i++) {
x = cleanups[i]
x.ee.removeListener(x.event, x.fn)
}
}
function thunk(fn) {
done = fn
}
thunk.cancel = cleanup
return thunk
}
/**
* Create the event listener.
* @private
*/
function listener(event, done) {
return function onevent(arg1) {
var args = new Array(arguments.length)
var ee = this
var err = event === 'error'
? arg1
: null
// copy args to prevent arguments escaping scope
for (var i = 0; i < args.length; i++) {
args[i] = arguments[i]
}
done(err, ee, event, args)
}
}
@@ -0,0 +1 @@
module.exports={A:{D:{"1":"_TI","2":"_bL","33":"_6I tB"},L:{"1":"I"},B:{"1":"_K","33":"_I"},C:{"1":"_CM","2":"_oL"},M:{"1":"YC"},A:{"2":"_z","33":"B"},F:{"1":"_6G","2":"_HR","33":"_VQ KB"},K:{"1":"H","2":"_D"},E:{"1":"_GT _OE","2":"_BH XD"},G:{"1":"_7B","2":"_XE"},P:{"1":"_F"},I:{"1":"I","2":"_W","33":"_y"}},B:6,C:"CSS ::backdrop pseudo-element",D:undefined};
@@ -0,0 +1 @@
module.exports={A:{A:{"2":"_Z","132":"_A"},B:{"1":"_J"},C:{"1":"_FI","2":"_PK","33":"_vL"},D:{"1":"_1H","2":"_KG","33":"_x _JG"},E:{"1":"_uC","2":"_e","33":"_OG _VJ","257":"_V _5B QD _dN"},F:{"1":"_BM","2":"_T","33":"_2B"},G:{"1":"_7B","33":"_3","257":"_hR _XG"},H:{"2":"1D"},I:{"1":"I","2":"_n","33":"_nJ"},J:{"33":"_B"},K:{"1":"H","2":"_D"},L:{"1":"I"},M:{"1":"YC"},N:{"132":"_A"},O:{"1":"bC"},P:{"1":"_F"},Q:{"1":"JE"},R:{"1":"KE"},S:{"1":"_C"}},B:5,C:"CSS3 3D Transforms",D:true};
@@ -0,0 +1,51 @@
// Copyright 2017 Lovell Fuller and others.
// SPDX-License-Identifier: Apache-2.0
'use strict';
const fs = require('fs');
const LDD_PATH = '/usr/bin/ldd';
const SELF_PATH = '/proc/self/exe';
const MAX_LENGTH = 2048;
/**
* Read the content of a file synchronous
*
* @param {string} path
* @returns {Buffer}
*/
const readFileSync = (path) => {
const fd = fs.openSync(path, 'r');
const buffer = Buffer.alloc(MAX_LENGTH);
const bytesRead = fs.readSync(fd, buffer, 0, MAX_LENGTH, 0);
fs.close(fd, () => {});
return buffer.subarray(0, bytesRead);
};
/**
* Read the content of a file
*
* @param {string} path
* @returns {Promise<Buffer>}
*/
const readFile = (path) => new Promise((resolve, reject) => {
fs.open(path, 'r', (err, fd) => {
if (err) {
reject(err);
} else {
const buffer = Buffer.alloc(MAX_LENGTH);
fs.read(fd, buffer, 0, MAX_LENGTH, 0, (_, bytesRead) => {
resolve(buffer.subarray(0, bytesRead));
fs.close(fd, () => {});
});
}
});
});
module.exports = {
LDD_PATH,
SELF_PATH,
readFileSync,
readFile
};
@@ -0,0 +1,265 @@
'use strict'
const {
Readable,
Duplex,
PassThrough
} = require('node:stream')
const assert = require('node:assert')
const { AsyncResource } = require('node:async_hooks')
const {
InvalidArgumentError,
InvalidReturnValueError,
RequestAbortedError
} = require('../core/errors')
const util = require('../core/util')
const { kBodyUsed } = require('../core/symbols')
const { addSignal, removeSignal } = require('./abort-signal')
function noop () {}
const kResume = Symbol('resume')
class PipelineRequest extends Readable {
constructor () {
super({ autoDestroy: true })
this[kResume] = null
// Pipeline request bodies come from a live writable side and cannot be
// replayed across redirects or retries, even before any bytes are read.
this[kBodyUsed] = true
}
_read () {
const { [kResume]: resume } = this
if (resume) {
this[kResume] = null
resume()
}
}
_destroy (err, callback) {
this._read()
callback(err)
}
}
class PipelineResponse extends Readable {
constructor (resume) {
super({ autoDestroy: true })
this[kResume] = resume
}
_read () {
this[kResume]()
}
_destroy (err, callback) {
if (!err && !this._readableState.endEmitted) {
err = new RequestAbortedError()
}
callback(err)
}
}
class PipelineHandler extends AsyncResource {
constructor (opts, handler) {
if (!opts || typeof opts !== 'object') {
throw new InvalidArgumentError('invalid opts')
}
if (typeof handler !== 'function') {
throw new InvalidArgumentError('invalid handler')
}
const { signal, method, opaque, onInfo, responseHeaders } = opts
if (signal && typeof signal.on !== 'function' && typeof signal.addEventListener !== 'function') {
throw new InvalidArgumentError('signal must be an EventEmitter or EventTarget')
}
if (method === 'CONNECT') {
throw new InvalidArgumentError('invalid method')
}
if (onInfo && typeof onInfo !== 'function') {
throw new InvalidArgumentError('invalid onInfo callback')
}
super('UNDICI_PIPELINE')
this.opaque = opaque || null
this.responseHeaders = responseHeaders || null
this.handler = handler
this.abort = null
this.context = null
this.onInfo = onInfo || null
this.req = new PipelineRequest().on('error', noop)
this.ret = new Duplex({
readableObjectMode: opts.objectMode,
autoDestroy: true,
read: () => {
const { body } = this
if (body?.resume) {
body.resume()
}
},
write: (chunk, encoding, callback) => {
const { req } = this
if (req.push(chunk, encoding) || req._readableState.destroyed) {
callback()
} else {
req[kResume] = callback
}
},
destroy: (err, callback) => {
const { body, req, res, ret, abort } = this
if (!err && !ret._readableState.endEmitted) {
err = new RequestAbortedError()
}
if (abort && err) {
abort()
}
util.destroy(body, err)
util.destroy(req, err)
util.destroy(res, err)
removeSignal(this)
callback(err)
}
}).on('prefinish', () => {
const { req } = this
// Node < 15 does not call _final in same tick.
req.push(null)
})
this.res = null
addSignal(this, signal)
}
onRequestStart (controller, context) {
const { res } = this
if (this.reason) {
controller.abort(this.reason)
return
}
assert(!res, 'pipeline cannot be retried')
this.abort = (reason) => controller.abort(reason)
this.context = context
}
onResponseStart (controller, statusCode, headers, _statusMessage) {
const { opaque, handler, context } = this
if (statusCode < 200) {
if (this.onInfo) {
const rawHeaders = controller?.rawHeaders
const responseHeaders = this.responseHeaders === 'raw'
? util.parseRawHeaders(rawHeaders)
: headers
this.onInfo({ statusCode, headers: responseHeaders })
}
return
}
this.res = new PipelineResponse(() => controller.resume())
let body
try {
this.handler = null
const rawHeaders = controller?.rawHeaders
const responseHeaders = this.responseHeaders === 'raw'
? util.parseRawHeaders(rawHeaders)
: headers
body = this.runInAsyncScope(handler, null, {
statusCode,
headers: responseHeaders,
opaque,
body: this.res,
context
})
} catch (err) {
this.res.on('error', noop)
throw err
}
if (!body || typeof body.on !== 'function') {
throw new InvalidReturnValueError('expected Readable')
}
body
.on('data', (chunk) => {
const { ret, body } = this
if (!ret.push(chunk) && body.pause) {
body.pause()
}
})
.on('error', (err) => {
const { ret } = this
util.destroy(ret, err)
})
.on('end', () => {
const { ret } = this
ret.push(null)
})
.on('close', () => {
const { ret } = this
if (!ret._readableState.ended) {
util.destroy(ret, new RequestAbortedError())
}
})
this.body = body
}
onResponseData (controller, chunk) {
const { res } = this
if (res.push(chunk) === false) {
controller.pause()
}
}
onResponseEnd (_controller, _trailers) {
const { res } = this
res.push(null)
}
onResponseError (_controller, err) {
const { ret } = this
this.handler = null
util.destroy(ret, err)
}
}
function pipeline (opts, handler) {
try {
const pipelineHandler = new PipelineHandler(opts, handler)
this.dispatch({ ...opts, body: pipelineHandler.req }, pipelineHandler)
return pipelineHandler.ret
} catch (err) {
return new PassThrough().destroy(err)
}
}
module.exports = pipeline
@@ -0,0 +1,6 @@
import type { TSESLint } from '@typescript-eslint/utils';
export type MessageId = 'confusingAssign' | 'confusingEqual' | 'confusingOperator' | 'notNeedInAssign' | 'notNeedInEqualTest' | 'notNeedInOperator' | 'wrapUpLeft';
declare const _default: TSESLint.RuleModule<MessageId, [], import("../../rules").ESLintPluginDocs, TSESLint.RuleListener> & {
name: string;
};
export default _default;
@@ -0,0 +1 @@
{"version":3,"file":"mic.js","sources":["../../../src/icons/mic.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Mic\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTIgMmEzIDMgMCAwIDAtMyAzdjdhMyAzIDAgMCAwIDYgMFY1YTMgMyAwIDAgMC0zLTNaIiAvPgogIDxwYXRoIGQ9Ik0xOSAxMHYyYTcgNyAwIDAgMS0xNCAwdi0yIiAvPgogIDxsaW5lIHgxPSIxMiIgeDI9IjEyIiB5MT0iMTkiIHkyPSIyMiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/mic\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Mic = createLucideIcon('Mic', [\n ['path', { d: 'M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z', key: '131961' }],\n ['path', { d: 'M19 10v2a7 7 0 0 1-14 0v-2', key: '1vc78b' }],\n ['line', { x1: '12', x2: '12', y1: '19', y2: '22', key: 'x3vr5v' }],\n]);\n\nexport default Mic;\n"],"names":[],"mappings":";;;;;;;;;AAaM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,iBAAiB,KAAO,CAAA,CAAA,CAAA;AAAA,CAAA,CAClC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAwD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CACrF,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAA8B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAC3D,CAAA,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAE,CAAA,CAAA,CAAA,EAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAM,EAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA;AACpE,CAAC,CAAA,CAAA;;"}
@@ -0,0 +1,32 @@
import { parseDef } from "../parseDef.js";
export function parseTupleDef(def, refs) {
if (def.rest) {
return {
type: "array",
minItems: def.items.length,
items: def.items
.map((x, i) => parseDef(x._def, {
...refs,
currentPath: [...refs.currentPath, "items", `${i}`],
}))
.reduce((acc, x) => (x === undefined ? acc : [...acc, x]), []),
additionalItems: parseDef(def.rest._def, {
...refs,
currentPath: [...refs.currentPath, "additionalItems"],
}),
};
}
else {
return {
type: "array",
minItems: def.items.length,
maxItems: def.items.length,
items: def.items
.map((x, i) => parseDef(x._def, {
...refs,
currentPath: [...refs.currentPath, "items", `${i}`],
}))
.reduce((acc, x) => (x === undefined ? acc : [...acc, x]), []),
};
}
}
@@ -0,0 +1,8 @@
// src/number.ts
function clamp(value, [min, max]) {
return Math.min(max, Math.max(min, value));
}
export {
clamp
};
//# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"stdio.js","sourceRoot":"","sources":["../../../src/shared/stdio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnE,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAE9D;;GAEG;AACH,MAAM,OAAO,UAAU;IAInB,YAAY,OAAoC;QAC5C,IAAI,CAAC,cAAc,GAAG,OAAO,EAAE,aAAa,IAAI,6BAA6B,CAAC;IAClF,CAAC;IAED,MAAM,CAAC,KAAa;QAChB,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;QAC3D,IAAI,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YAChC,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,CAAC,cAAc,QAAQ,CAAC,CAAC;QACxF,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC/E,CAAC;IAED,WAAW;QACP,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAChD,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,KAAK;QACD,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;IAC7B,CAAC;CACJ;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC3C,OAAO,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAuB;IACpD,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;AAC1C,CAAC"}
@@ -0,0 +1,8 @@
language: node_js
node_js:
- "8"
- "10"
- "12"
- "13"
after_script:
- coveralls < coverage/lcov.info
@@ -0,0 +1 @@
{"version":3,"file":"chart-line.js","sources":["../../../src/icons/chart-line.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name ChartLine\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMyAzdjE2YTIgMiAwIDAgMCAyIDJoMTYiIC8+CiAgPHBhdGggZD0ibTE5IDktNSA1LTQtNC0zIDMiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/chart-line\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ChartLine = createLucideIcon('ChartLine', [\n ['path', { d: 'M3 3v16a2 2 0 0 0 2 2h16', key: 'c24i48' }],\n ['path', { d: 'm19 9-5 5-4-4-3 3', key: '2osh9i' }],\n]);\n\nexport default ChartLine;\n"],"names":[],"mappings":";;;;;;;;;AAaM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,iBAAiB,WAAa,CAAA,CAAA,CAAA;AAAA,CAAA,CAC9C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAA4B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CACzD,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA;AACpD,CAAC,CAAA,CAAA;;"}
@@ -0,0 +1 @@
{"version":3,"file":"hotel.js","sources":["../../../src/icons/hotel.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Hotel\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTAgMjJ2LTYuNTciIC8+CiAgPHBhdGggZD0iTTEyIDExaC4wMSIgLz4KICA8cGF0aCBkPSJNMTIgN2guMDEiIC8+CiAgPHBhdGggZD0iTTE0IDE1LjQzVjIyIiAvPgogIDxwYXRoIGQ9Ik0xNSAxNmE1IDUgMCAwIDAtNiAwIiAvPgogIDxwYXRoIGQ9Ik0xNiAxMWguMDEiIC8+CiAgPHBhdGggZD0iTTE2IDdoLjAxIiAvPgogIDxwYXRoIGQ9Ik04IDExaC4wMSIgLz4KICA8cGF0aCBkPSJNOCA3aC4wMSIgLz4KICA8cmVjdCB4PSI0IiB5PSIyIiB3aWR0aD0iMTYiIGhlaWdodD0iMjAiIHJ4PSIyIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/hotel\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Hotel = createLucideIcon('Hotel', [\n ['path', { d: 'M10 22v-6.57', key: '1wmca3' }],\n ['path', { d: 'M12 11h.01', key: 'z322tv' }],\n ['path', { d: 'M12 7h.01', key: '1ivr5q' }],\n ['path', { d: 'M14 15.43V22', key: '1q2vjd' }],\n ['path', { d: 'M15 16a5 5 0 0 0-6 0', key: 'o9wqvi' }],\n ['path', { d: 'M16 11h.01', key: 'xkw8gn' }],\n ['path', { d: 'M16 7h.01', key: '1kdx03' }],\n ['path', { d: 'M8 11h.01', key: '1dfujw' }],\n ['path', { d: 'M8 7h.01', key: '1vti4s' }],\n ['rect', { x: '4', y: '2', width: '16', height: '20', rx: '2', key: '1uxh74' }],\n]);\n\nexport default Hotel;\n"],"names":[],"mappings":";;;;;;;;;AAaM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,iBAAiB,OAAS,CAAA,CAAA,CAAA;AAAA,CAAA,CACtC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC7C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC3C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC1C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC7C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAwB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CACrD,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC3C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC1C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC1C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CACzC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAE,CAAA,CAAA,CAAG,KAAK,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,QAAQ,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA;AAChF,CAAC,CAAA,CAAA;;"}
@@ -0,0 +1 @@
export { renderToReadableStream, renderToStaticMarkup, renderToString, resume } from "./server";
@@ -0,0 +1,65 @@
/**
* Cloudflare Worker-compatible JSON Schema validator provider
*
* This provider uses @cfworker/json-schema for validation without code generation,
* making it compatible with edge runtimes like Cloudflare Workers that restrict
* eval and new Function.
*/
import { Validator } from '@cfworker/json-schema';
/**
*
* @example
* ```typescript
* // Use with default configuration (2020-12, shortcircuit)
* const validator = new CfWorkerJsonSchemaValidator();
*
* // Use with custom configuration
* const validator = new CfWorkerJsonSchemaValidator({
* draft: '2020-12',
* shortcircuit: false // Report all errors
* });
* ```
*/
export class CfWorkerJsonSchemaValidator {
/**
* Create a validator
*
* @param options - Configuration options
* @param options.shortcircuit - If true, stop validation after first error (default: true)
* @param options.draft - JSON Schema draft version to use (default: '2020-12')
*/
constructor(options) {
this.shortcircuit = options?.shortcircuit ?? true;
this.draft = options?.draft ?? '2020-12';
}
/**
* Create a validator for the given JSON Schema
*
* Unlike AJV, this validator is not cached internally
*
* @param schema - Standard JSON Schema object
* @returns A validator function that validates input data
*/
getValidator(schema) {
// Cast to the cfworker Schema type - our JsonSchemaType is structurally compatible
const validator = new Validator(schema, this.draft, this.shortcircuit);
return (input) => {
const result = validator.validate(input);
if (result.valid) {
return {
valid: true,
data: input,
errorMessage: undefined
};
}
else {
return {
valid: false,
data: undefined,
errorMessage: result.errors.map(err => `${err.instanceLocation}: ${err.error}`).join('; ')
};
}
};
}
}
//# sourceMappingURL=cfworker-provider.js.map
@@ -0,0 +1 @@
{"version":3,"file":"square-bottom-dashed-scissors.js","sources":["../../../src/icons/square-bottom-dashed-scissors.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name SquareBottomDashedScissors\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNNCAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmgxNmEyIDIgMCAwIDEgMiAydjE2YTIgMiAwIDAgMS0yIDIiIC8+CiAgPHBhdGggZD0iTTEwIDIySDgiIC8+CiAgPHBhdGggZD0iTTE2IDIyaC0yIiAvPgogIDxjaXJjbGUgY3g9IjgiIGN5PSI4IiByPSIyIiAvPgogIDxwYXRoIGQ9Ik05LjQxNCA5LjQxNCAxMiAxMiIgLz4KICA8cGF0aCBkPSJNMTQuOCAxNC44IDE4IDE4IiAvPgogIDxjaXJjbGUgY3g9IjgiIGN5PSIxNiIgcj0iMiIgLz4KICA8cGF0aCBkPSJtMTggNi04LjU4NiA4LjU4NiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/square-bottom-dashed-scissors\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst SquareBottomDashedScissors = createLucideIcon('SquareBottomDashedScissors', [\n [\n 'path',\n { d: 'M4 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2', key: '1vzg26' },\n ],\n ['path', { d: 'M10 22H8', key: 'euku7a' }],\n ['path', { d: 'M16 22h-2', key: '18d249' }],\n ['circle', { cx: '8', cy: '8', r: '2', key: '14cg06' }],\n ['path', { d: 'M9.414 9.414 12 12', key: 'qz4lzr' }],\n ['path', { d: 'M14.8 14.8 18 18', key: '11flf1' }],\n ['circle', { cx: '8', cy: '16', r: '2', key: '1acxsx' }],\n ['path', { d: 'm18 6-8.586 8.586', key: '11kzk1' }],\n]);\n\nexport default SquareBottomDashedScissors;\n"],"names":[],"mappings":";;;;;;;;;AAaM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA6B,iBAAiB,4BAA8B,CAAA,CAAA,CAAA;AAAA,CAChF,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAyE,EAAA,CAAA,CAAA,CAAA,CAAA,CAAK,QAAS,CAAA,CAAA;AAAA,CAC9F,CAAA,CAAA,CAAA;AAAA,CAAA,CACA,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CACzC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAC1C,CAAA,CAAC,QAAU,CAAA,CAAA,CAAA,CAAE,EAAI,CAAA,CAAA,CAAA,CAAA,CAAA,EAAK,CAAI,CAAA,CAAA,CAAA,GAAA,CAAK,CAAA,CAAG,EAAA,CAAA,CAAA,CAAA,CAAA,CAAK,GAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAU,CAAA,CAAA;AAAA,CAAA,CACtD,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAsB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CACnD,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAoB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CACjD,CAAA,CAAC,QAAU,CAAA,CAAA,CAAA,CAAE,EAAI,CAAA,CAAA,CAAA,CAAA,CAAA,EAAK,CAAI,CAAA,CAAA,CAAA,IAAA,CAAM,CAAA,CAAG,EAAA,CAAA,CAAA,CAAA,CAAA,CAAK,GAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAU,CAAA,CAAA;AAAA,CAAA,CACvD,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA;AACpD,CAAC,CAAA,CAAA;;"}
@@ -0,0 +1,679 @@
# Rollup core license
Rollup is released under the MIT license:
The MIT License (MIT)
Copyright (c) 2017 [these people](https://github.com/rollup/rollup/graphs/contributors)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
# Licenses of bundled dependencies
The published Rollup artifact additionally contains code with the following licenses:
MIT, ISC, 0BSD
# Bundled dependencies:
## @jridgewell/sourcemap-codec
License: MIT
By: Justin Ridgewell
Repository: git+https://github.com/jridgewell/sourcemaps.git
> Copyright 2024 Justin Ridgewell <justin@ridgewell.name>
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
> SOFTWARE.
---------------------------------------
## @rollup/pluginutils
License: MIT
By: Rich Harris
Repository: rollup/plugins
> The MIT License (MIT)
>
> Copyright (c) 2019 RollupJS Plugin Contributors (https://github.com/rollup/plugins/graphs/contributors)
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
---------------------------------------
## anymatch
License: ISC
By: Elan Shanker
Repository: https://github.com/micromatch/anymatch
> The ISC License
>
> Copyright (c) 2019 Elan Shanker, Paul Miller (https://paulmillr.com)
>
> Permission to use, copy, modify, and/or distribute this software for any
> purpose with or without fee is hereby granted, provided that the above
> copyright notice and this permission notice appear in all copies.
>
> THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
> WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
> MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
---------------------------------------
## binary-extensions
License: MIT
By: Sindre Sorhus
Repository: sindresorhus/binary-extensions
> MIT License
>
> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
> Copyright (c) Paul Miller (https://paulmillr.com)
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------
## braces
License: MIT
By: Jon Schlinkert, Brian Woodward, Elan Shanker, Eugene Sharygin, hemanth.hm
Repository: micromatch/braces
> The MIT License (MIT)
>
> Copyright (c) 2014-present, Jon Schlinkert.
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
---------------------------------------
## builtin-modules
License: MIT
By: Sindre Sorhus
Repository: sindresorhus/builtin-modules
> MIT License
>
> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------
## chokidar
License: MIT
By: Paul Miller, Elan Shanker
Repository: git+https://github.com/paulmillr/chokidar.git
> The MIT License (MIT)
>
> Copyright (c) 2012-2019 Paul Miller (https://paulmillr.com), Elan Shanker
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the “Software”), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
---------------------------------------
## date-time
License: MIT
By: Sindre Sorhus
Repository: sindresorhus/date-time
> MIT License
>
> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------
## fill-range
License: MIT
By: Jon Schlinkert, Edo Rivai, Paul Miller, Rouven Weßling
Repository: jonschlinkert/fill-range
> The MIT License (MIT)
>
> Copyright (c) 2014-present, Jon Schlinkert.
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
---------------------------------------
## flru
License: MIT
By: Luke Edwards
Repository: lukeed/flru
> MIT License
>
> Copyright (c) Luke Edwards <luke.edwards05@gmail.com> (lukeed.com)
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------
## glob-parent
License: ISC
By: Gulp Team, Elan Shanker, Blaine Bublitz
Repository: gulpjs/glob-parent
> The ISC License
>
> Copyright (c) 2015, 2019 Elan Shanker
>
> Permission to use, copy, modify, and/or distribute this software for any
> purpose with or without fee is hereby granted, provided that the above
> copyright notice and this permission notice appear in all copies.
>
> THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
> WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
> MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
> IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
---------------------------------------
## is-binary-path
License: MIT
By: Sindre Sorhus
Repository: sindresorhus/is-binary-path
> MIT License
>
> Copyright (c) 2019 Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com), Paul Miller (https://paulmillr.com)
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------
## is-extglob
License: MIT
By: Jon Schlinkert
Repository: jonschlinkert/is-extglob
> The MIT License (MIT)
>
> Copyright (c) 2014-2016, Jon Schlinkert
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
---------------------------------------
## is-glob
License: MIT
By: Jon Schlinkert, Brian Woodward, Daniel Perez
Repository: micromatch/is-glob
> The MIT License (MIT)
>
> Copyright (c) 2014-2017, Jon Schlinkert.
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
---------------------------------------
## is-number
License: MIT
By: Jon Schlinkert, Olsten Larck, Rouven Weßling
Repository: jonschlinkert/is-number
> The MIT License (MIT)
>
> Copyright (c) 2014-present, Jon Schlinkert.
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
---------------------------------------
## is-reference
License: MIT
By: Rich Harris
Repository: git+https://github.com/Rich-Harris/is-reference.git
---------------------------------------
## locate-character
License: MIT
By: Rich Harris
Repository: git+https://gitlab.com/Rich-Harris/locate-character.git
---------------------------------------
## magic-string
License: MIT
By: Rich Harris
Repository: git+https://github.com/Rich-Harris/magic-string.git
> Copyright 2018 Rich Harris
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------
## normalize-path
License: MIT
By: Jon Schlinkert, Blaine Bublitz
Repository: jonschlinkert/normalize-path
> The MIT License (MIT)
>
> Copyright (c) 2014-2018, Jon Schlinkert.
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
---------------------------------------
## parse-ms
License: MIT
By: Sindre Sorhus
Repository: sindresorhus/parse-ms
> MIT License
>
> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------
## picocolors
License: ISC
By: Alexey Raspopov
Repository: alexeyraspopov/picocolors
> ISC License
>
> Copyright (c) 2021-2024 Oleksii Raspopov, Kostiantyn Denysov, Anton Verinov
>
> Permission to use, copy, modify, and/or distribute this software for any
> purpose with or without fee is hereby granted, provided that the above
> copyright notice and this permission notice appear in all copies.
>
> THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
> WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
> MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
> ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
> OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
---------------------------------------
## picomatch
License: MIT
By: Jon Schlinkert
Repository: micromatch/picomatch
> The MIT License (MIT)
>
> Copyright (c) 2017-present, Jon Schlinkert.
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
---------------------------------------
## pretty-bytes
License: MIT
By: Sindre Sorhus
Repository: sindresorhus/pretty-bytes
> MIT License
>
> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------
## pretty-ms
License: MIT
By: Sindre Sorhus
Repository: sindresorhus/pretty-ms
> MIT License
>
> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------
## readdirp
License: MIT
By: Thorsten Lorenz, Paul Miller
Repository: git://github.com/paulmillr/readdirp.git
> MIT License
>
> Copyright (c) 2012-2019 Thorsten Lorenz, Paul Miller (https://paulmillr.com)
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all
> copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
> SOFTWARE.
---------------------------------------
## signal-exit
License: ISC
By: Ben Coe
Repository: https://github.com/tapjs/signal-exit.git
> The ISC License
>
> Copyright (c) 2015-2023 Benjamin Coe, Isaac Z. Schlueter, and Contributors
>
> Permission to use, copy, modify, and/or distribute this software
> for any purpose with or without fee is hereby granted, provided
> that the above copyright notice and this permission notice
> appear in all copies.
>
> THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
> WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
> OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE
> LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
> OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
> WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
> ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
---------------------------------------
## time-zone
License: MIT
By: Sindre Sorhus
Repository: sindresorhus/time-zone
> MIT License
>
> Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------
## to-regex-range
License: MIT
By: Jon Schlinkert, Rouven Weßling
Repository: micromatch/to-regex-range
> The MIT License (MIT)
>
> Copyright (c) 2015-present, Jon Schlinkert.
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
---------------------------------------
## tslib
License: 0BSD
By: Microsoft Corp.
Repository: https://github.com/Microsoft/tslib.git
> Copyright (c) Microsoft Corporation.
>
> Permission to use, copy, modify, and/or distribute this software for any
> purpose with or without fee is hereby granted.
>
> THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
> REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
> AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
> INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
> LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
> OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
> PERFORMANCE OF THIS SOFTWARE.
---------------------------------------
## yargs-parser
License: ISC
By: Ben Coe
Repository: https://github.com/yargs/yargs-parser.git
> Copyright (c) 2016, Contributors
>
> Permission to use, copy, modify, and/or distribute this software
> for any purpose with or without fee is hereby granted, provided
> that the above copyright notice and this permission notice
> appear in all copies.
>
> THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
> WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
> OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE
> LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
> OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
> WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
> ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
@@ -0,0 +1,628 @@
export default `flf2a 6 6 10 63 14 0 8127 0
Author : myflix
Date : 2003/11/11 20:05:19
Version: 1.0
-------------------------------------------------
-------------------------------------------------
This font has been created using JavE's FIGlet font export assistant.
Have a look at: http://www.jave.de
Permission is hereby given to modify this font, as long as the
modifier's name is placed on a comment line.
Font Edited: Aug. 5, 2007 by PAT or JK
Update: Changed hardblank character and added "<" and ">" cards

.-. 
((5)) 
'-.-. 
((1)) 
'-' 
.------.
|!.--. |
| (\\/) |
| :\\/: |
| '--'!|
\`------'
.------.
|".--. |
| :(): |
| ()() |
| '--'"|
\`------'
.------.
|#.--. |
| :/\\: |
| :\\/: |
| '--'#|
\`------'
.------.
|$.--. |
| :/\\: |
| (__) |
| '--'$|
\`------'
.------.
|%.--. |
| (\\/) |
| :\\/: |
| '--'%|
\`------'
.------.
|&.--. |
| :(): |
| ()() |
| '--'&|
\`------'
.------.
|'.--. |
| :/\\: |
| :\\/: |
| '--''|
\`------'
.------.
|(.--. |
| :/\\: |
| (__) |
| '--'(|
\`------'
.------.
|).--. |
| (\\/) |
| :\\/: |
| '--')|
\`------'
.------.
|*.--. |
| :(): |
| ()() |
| '--'*|
\`------'
.------.
|+.--. |
| :/\\: |
| :\\/: |
| '--'+|
\`------'
.------.
|,.--. |
| :/\\: |
| (__) |
| '--',|
\`------'
.------.
|-.--. |
| (\\/) |
| :\\/: |
| '--'-|
\`------'
.------.
|..--. |
| :(): |
| ()() |
| '--'.|
\`------'
/





.------.
|0.--. |
| :/\\: |
| :\\/: |
| '--'0|
\`------'
.------.
|1.--. |
| :/\\: |
| (__) |
| '--'1|
\`------'
.------.
|2.--. |
| (\\/) |
| :\\/: |
| '--'2|
\`------'
.------.
|3.--. |
| :(): |
| ()() |
| '--'3|
\`------'
.------.
|4.--. |
| :/\\: |
| :\\/: |
| '--'4|
\`------'
.------.
|5.--. |
| :/\\: |
| (__) |
| '--'5|
\`------'
.------.
|6.--. |
| (\\/) |
| :\\/: |
| '--'6|
\`------'
.------.
|7.--. |
| :(): |
| ()() |
| '--'7|
\`------'
.------.
|8.--. |
| :/\\: |
| :\\/: |
| '--'8|
\`------'
.------.
|9.--. |
| :/\\: |
| (__) |
| '--'9|
\`------'
.------.
|:.--. |
| :/\\: |
| :\\/: |
| '--':|
\`------'
.------.
|;.--. |
| :/\\: |
| (__) |
| '--';|
\`------'
.------.
|<.--. |
| (\\/) |
| :\\/: |
| '--'<|
\`------'
.------.
|=.--. |
| (\\/) |
| :\\/: |
| '--'=|
\`------'
.------.
|>.--. |
| (\\/) |
| :\\/: |
| '--'>|
\`------'
.------.
|?.--. |
| :(): |
| ()() |
| '--'?|
\`------'
.------.
|@.--. |
| :/\\: |
| :\\/: |
| '--'@|
\`------'
.------.
|A.--. |
| (\\/) |
| :\\/: |
| '--'A|
\`------'
.------.
|B.--. |
| :(): |
| ()() |
| '--'B|
\`------'
.------.
|C.--. |
| :/\\: |
| :\\/: |
| '--'C|
\`------'
.------.
|D.--. |
| :/\\: |
| (__) |
| '--'D|
\`------'
.------.
|E.--. |
| (\\/) |
| :\\/: |
| '--'E|
\`------'
.------.
|F.--. |
| :(): |
| ()() |
| '--'F|
\`------'
.------.
|G.--. |
| :/\\: |
| :\\/: |
| '--'G|
\`------'
.------.
|H.--. |
| :/\\: |
| (__) |
| '--'H|
\`------'
.------.
|I.--. |
| (\\/) |
| :\\/: |
| '--'I|
\`------'
.------.
|J.--. |
| :(): |
| ()() |
| '--'J|
\`------'
.------.
|K.--. |
| :/\\: |
| :\\/: |
| '--'K|
\`------'
.------.
|L.--. |
| :/\\: |
| (__) |
| '--'L|
\`------'
.------.
|M.--. |
| (\\/) |
| :\\/: |
| '--'M|
\`------'
.------.
|N.--. |
| :(): |
| ()() |
| '--'N|
\`------'
.------.
|O.--. |
| :/\\: |
| :\\/: |
| '--'O|
\`------'
.------.
|P.--. |
| :/\\: |
| (__) |
| '--'P|
\`------'
.------.
|Q.--. |
| (\\/) |
| :\\/: |
| '--'Q|
\`------'
.------.
|R.--. |
| :(): |
| ()() |
| '--'R|
\`------'
.------.
|S.--. |
| :/\\: |
| :\\/: |
| '--'S|
\`------'
.------.
|T.--. |
| :/\\: |
| (__) |
| '--'T|
\`------'
.------.
|U.--. |
| (\\/) |
| :\\/: |
| '--'U|
\`------'
.------.
|V.--. |
| :(): |
| ()() |
| '--'V|
\`------'
.------.
|W.--. |
| :/\\: |
| :\\/: |
| '--'W|
\`------'
.------.
|X.--. |
| :/\\: |
| (__) |
| '--'X|
\`------'
.------.
|Y.--. |
| (\\/) |
| :\\/: |
| '--'Y|
\`------'
.------.
|Z.--. |
| :(): |
| ()() |
| '--'Z|
\`------'
.------.
|[.--. |
| :/\\: |
| (__) |
| '--'[|
\`------'
\\





.------.
|].--. |
| (\\/) |
| :\\/: |
| '--']|
\`------'
.------.
|^.--. |
| :(): |
| ()() |
| '--'^|
\`------'
.------.
|_.--. |
| :/\\: |
| :\\/: |
| '--'_|
\`------'
.------.
|\`.--. |
| :/\\: |
| (__) |
| '--'\`|
\`------'
.------.
|A.--. |
| (\\/) |
| :\\/: |
| '--'A|
\`------'
.------.
|B.--. |
| :(): |
| ()() |
| '--'B|
\`------'
.------.
|C.--. |
| :/\\: |
| :\\/: |
| '--'C|
\`------'
.------.
|D.--. |
| :/\\: |
| (__) |
| '--'D|
\`------'
.------.
|E.--. |
| (\\/) |
| :\\/: |
| '--'E|
\`------'
.------.
|F.--. |
| :(): |
| ()() |
| '--'F|
\`------'
.------.
|G.--. |
| :/\\: |
| :\\/: |
| '--'G|
\`------'
.------.
|H.--. |
| :/\\: |
| (__) |
| '--'H|
\`------'
.------.
|I.--. |
| (\\/) |
| :\\/: |
| '--'I|
\`------'
.------.
|J.--. |
| :(): |
| ()() |
| '--'J|
\`------'
.------.
|K.--. |
| :/\\: |
| :\\/: |
| '--'K|
\`------'
.------.
|L.--. |
| :/\\: |
| (__) |
| '--'L|
\`------'
.------.
|M.--. |
| (\\/) |
| :\\/: |
| '--'M|
\`------'
.------.
|N.--. |
| :(): |
| ()() |
| '--'N|
\`------'
.------.
|O.--. |
| :/\\: |
| :\\/: |
| '--'O|
\`------'
.------.
|P.--. |
| :/\\: |
| (__) |
| '--'P|
\`------'
.------.
|Q.--. |
| (\\/) |
| :\\/: |
| '--'Q|
\`------'
.------.
|R.--. |
| :(): |
| ()() |
| '--'R|
\`------'
.------.
|S.--. |
| :/\\: |
| :\\/: |
| '--'S|
\`------'
.------.
|T.--. |
| :/\\: |
| (__) |
| '--'T|
\`------'
.------.
|U.--. |
| (\\/) |
| :\\/: |
| '--'U|
\`------'
.------.
|V.--. |
| :(): |
| ()() |
| '--'V|
\`------'
.------.
|W.--. |
| :/\\: |
| :\\/: |
| '--'W|
\`------'
.------.
|X.--. |
| :/\\: |
| (__) |
| '--'X|
\`------'
.------.
|Y.--. |
| (\\/) |
| :\\/: |
| '--'Y|
\`------'
.------.
|Z.--. |
| :(): |
| ()() |
| '--'Z|
\`------'
.------.
|{.--. |
| (\\/) |
| :\\/: |
| '--'{|
\`------'
|





.------.
|}.--. |
| :(): |
| ()() |
| '--'}|
\`------'
.------.
|~.--. |
| :/\\: |
| :\\/: |
| '--'~|
\`------'
.------.
|A.--. |
| (\\/) |
| :\\/: |
| '--'A|
\`------'
.------.
|O.--. |
| :/\\: |
| :\\/: |
| '--'O|
\`------'
.------.
|U.--. |
| (\\/) |
| :\\/: |
| '--'U|
\`------'
.------.
|A.--. |
| (\\/) |
| :\\/: |
| '--'A|
\`------'
.------.
|O.--. |
| :/\\: |
| :\\/: |
| '--'O|
\`------'
.------.
|U.--. |
| (\\/) |
| :\\/: |
| '--'U|
\`------'

.-. 
((5)) 
'-.-. 
((1)) 
'-' 
`
@@ -0,0 +1,21 @@
/**
* @license lucide-react v0.469.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/
import createLucideIcon from '../createLucideIcon.js';
const ShoppingBasket = createLucideIcon("ShoppingBasket", [
["path", { d: "m15 11-1 9", key: "5wnq3a" }],
["path", { d: "m19 11-4-7", key: "cnml18" }],
["path", { d: "M2 11h20", key: "3eubbj" }],
["path", { d: "m3.5 11 1.6 7.4a2 2 0 0 0 2 1.6h9.8a2 2 0 0 0 2-1.6l1.7-7.4", key: "yiazzp" }],
["path", { d: "M4.5 15.5h15", key: "13mye1" }],
["path", { d: "m5 11 4-7", key: "116ra9" }],
["path", { d: "m9 11 1 9", key: "1ojof7" }]
]);
export { ShoppingBasket as default };
//# sourceMappingURL=shopping-basket.js.map
@@ -0,0 +1,22 @@
/**
* @license lucide-react v0.469.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/
import createLucideIcon from '../createLucideIcon.js';
const ImageUpscale = createLucideIcon("ImageUpscale", [
["path", { d: "M16 3h5v5", key: "1806ms" }],
["path", { d: "M17 21h2a2 2 0 0 0 2-2", key: "130fy9" }],
["path", { d: "M21 12v3", key: "1wzk3p" }],
["path", { d: "m21 3-5 5", key: "1g5oa7" }],
["path", { d: "M3 7V5a2 2 0 0 1 2-2", key: "kk3yz1" }],
["path", { d: "m5 21 4.144-4.144a1.21 1.21 0 0 1 1.712 0L13 19", key: "fyekpt" }],
["path", { d: "M9 3h3", key: "d52fa" }],
["rect", { x: "3", y: "11", width: "10", height: "10", rx: "1", key: "1wpmix" }]
]);
export { ImageUpscale as default };
//# sourceMappingURL=image-upscale.js.map
@@ -0,0 +1,10 @@
import { GetConnInfo } from "../../helper/conninfo/types.js";
//#region src/adapter/bun/conninfo.d.ts
/**
* Get ConnInfo with Bun
* @param c Context
* @returns ConnInfo
* @deprecated `hono/bun` will be removed in v5. Install `@hono/bun` and import from there instead.
*/
export declare const getConnInfo: GetConnInfo;
//#endregion
@@ -0,0 +1 @@
{"version":3,"file":"shield-close.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
@@ -0,0 +1 @@
{"version":3,"file":"linear-easing.mjs","sources":["../../../../src/utils/supports/linear-easing.ts"],"sourcesContent":["import { memoSupports } from \"./memo\"\n\nexport const supportsLinearEasing = /*@__PURE__*/ memoSupports(() => {\n try {\n document\n .createElement(\"div\")\n .animate({ opacity: 0 }, { easing: \"linear(0, 1)\" })\n } catch (e) {\n return false\n }\n return true\n}, \"linearEasing\")\n"],"names":[],"mappings":";;MAEa,oBAAoB,iBAAiB,YAAY,CAAC,MAAK;AAChE,IAAA,IAAI;QACA;aACK,aAAa,CAAC,KAAK;AACnB,aAAA,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAC5D;IAAE,OAAO,CAAC,EAAE;AACR,QAAA,OAAO,KAAK;IAChB;AACA,IAAA,OAAO,IAAI;AACf,CAAC,EAAE,cAAc;;;;"}
@@ -0,0 +1,17 @@
/**
* @license lucide-react v0.469.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/
import createLucideIcon from '../createLucideIcon.js';
const Banknote = createLucideIcon("Banknote", [
["rect", { width: "20", height: "12", x: "2", y: "6", rx: "2", key: "9lu3g6" }],
["circle", { cx: "12", cy: "12", r: "2", key: "1c9p78" }],
["path", { d: "M6 12h.01M18 12h.01", key: "113zkx" }]
]);
export { Banknote as default };
//# sourceMappingURL=banknote.js.map
@@ -0,0 +1,23 @@
type GeneratedColumn = number;
type SourcesIndex = number;
type SourceLine = number;
type SourceColumn = number;
type NamesIndex = number;
type GeneratedLine = number;
export type SourceMapSegment =
| [GeneratedColumn]
| [GeneratedColumn, SourcesIndex, SourceLine, SourceColumn]
| [GeneratedColumn, SourcesIndex, SourceLine, SourceColumn, NamesIndex];
export type ReverseSegment = [SourceColumn, GeneratedLine, GeneratedColumn];
export const COLUMN = 0;
export const SOURCES_INDEX = 1;
export const SOURCE_LINE = 2;
export const SOURCE_COLUMN = 3;
export const NAMES_INDEX = 4;
export const REV_GENERATED_LINE = 1;
export const REV_GENERATED_COLUMN = 2;
@@ -0,0 +1,376 @@
export default `flf2a 1 1 10 -1 16
B1FF by Joe Rumsey 12/94 based on Terminal by Glenn Chappell
Includes characters 128-255
figlet release 2.1 -- 12 Aug 1994
Permission is hereby given to modify this font, as long as the
modifier's name is placed on a comment line.
Explanation of first line:
flf2 - "magic number" for file identification
a - should always be \`a', for now
 - the "hardblank" -- prints as a blank, but can't be smushed
1 - height of a character
1 - height of a character, not including descenders
10 - max line length (excluding comment lines) + a fudge factor
-1 - default smushmode for this font
16 - number of comment lines
@
!@
"@
#@
$@
%@
&@
'@
(@
)@
*@
+@
,@
-@
.@
/@
0@
1@
2@
3@
4@
5@
6@
7@
8@
9@
:@
;@
<@
=@
>@
?@
@#
/-\\@
|3@
(@
|)@
3@
F@
6@
H@
1@
_/@
/<@
|_@
/\\/\\@
/\\/@
0@
P@
Q@
R@
5@
T@
|_|@
\\/@
\\/\\/@
X@
Y@
Z@
[@
\\@
]@
^@
_@
\`@
/-\\@
|3@
(@
|)@
3@
F@
6@
H@
1@
_/@
/<@
|_@
/\\/\\@
/\\/@
0@
P@
Q@
R@
5@
T@
|_|@
\\/@
\\/\\/@
X@
Y@
Z@
{@
|@
}@
~@
�@
�@
�@
�@
�@
�@
�@
128
�@
129
�@
130
�@
131
�@
132
�@
133
�@
134
�@
135
�@
136
�@
137
�@
138
�@
139
�@
140
�@
141
�@
142
�@
143
�@
144
�@
145
�@
146
�@
147
�@
148
�@
149
�@
150
�@
151
�@
152
�@
153
�@
154
�@
155
�@
156
�@
157
�@
158
�@
159
�@
160
�@
161
�@
162
�@
163
�@
164
�@
165
�@
166
�@
167
�@
168
�@
169
�@
170
�@
171
�@
172
�@
173
�@
174
�@
175
�@
176
�@
177
�@
178
�@
179
�@
180
�@
181
�@
182
�@
183
�@
184
�@
185
�@
186
�@
187
�@
188
�@
189
�@
190
�@
191
�@
192
�@
193
�@
194
�@
195
�@
196
�@
197
�@
198
�@
199
�@
200
�@
201
�@
202
�@
203
�@
204
�@
205
�@
206
�@
207
�@
208
�@
209
�@
210
�@
211
�@
212
�@
213
�@
214
�@
215
�@
216
�@
217
�@
218
�@
219
�@
220
�@
221
�@
222
�@
223
�@
224
�@
225
�@
226
�@
227
�@
228
�@
229
�@
230
�@
231
�@
232
�@
233
�@
234
�@
235
�@
236
�@
237
�@
238
�@
239
�@
240
�@
241
�@
242
�@
243
�@
244
�@
245
�@
246
�@
247
�@
248
�@
249
�@
250
�@
251
�@
252
�@
253
�@
254
�@
255
�@
`
@@ -0,0 +1,20 @@
/**
* @license lucide-react v0.469.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/
import createLucideIcon from '../createLucideIcon.js';
const SmilePlus = createLucideIcon("SmilePlus", [
["path", { d: "M22 11v1a10 10 0 1 1-9-10", key: "ew0xw9" }],
["path", { d: "M8 14s1.5 2 4 2 4-2 4-2", key: "1y1vjs" }],
["line", { x1: "9", x2: "9.01", y1: "9", y2: "9", key: "yxxnd0" }],
["line", { x1: "15", x2: "15.01", y1: "9", y2: "9", key: "1p4y9e" }],
["path", { d: "M16 5h6", key: "1vod17" }],
["path", { d: "M19 2v6", key: "4bpg5p" }]
]);
export { SmilePlus as default };
//# sourceMappingURL=smile-plus.js.map
@@ -0,0 +1,20 @@
/**
* @license lucide-react v0.469.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/
import createLucideIcon from '../createLucideIcon.js';
const CalendarSearch = createLucideIcon("CalendarSearch", [
["path", { d: "M16 2v4", key: "4m81vk" }],
["path", { d: "M21 11.75V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h7.25", key: "1jrsq6" }],
["path", { d: "m22 22-1.875-1.875", key: "13zax7" }],
["path", { d: "M3 10h18", key: "8toen8" }],
["path", { d: "M8 2v4", key: "1cmpym" }],
["circle", { cx: "18", cy: "18", r: "3", key: "1xkwt0" }]
]);
export { CalendarSearch as default };
//# sourceMappingURL=calendar-search.js.map
@@ -0,0 +1 @@
{"version":3,"file":"gift.js","sources":["../../../src/icons/gift.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Gift\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB4PSIzIiB5PSI4IiB3aWR0aD0iMTgiIGhlaWdodD0iNCIgcng9IjEiIC8+CiAgPHBhdGggZD0iTTEyIDh2MTMiIC8+CiAgPHBhdGggZD0iTTE5IDEydjdhMiAyIDAgMCAxLTIgMkg3YTIgMiAwIDAgMS0yLTJ2LTciIC8+CiAgPHBhdGggZD0iTTcuNSA4YTIuNSAyLjUgMCAwIDEgMC01QTQuOCA4IDAgMCAxIDEyIDhhNC44IDggMCAwIDEgNC41LTUgMi41IDIuNSAwIDAgMSAwIDUiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/gift\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Gift = createLucideIcon('Gift', [\n ['rect', { x: '3', y: '8', width: '18', height: '4', rx: '1', key: 'bkv52' }],\n ['path', { d: 'M12 8v13', key: '1c76mn' }],\n ['path', { d: 'M19 12v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-7', key: '6wjy6b' }],\n [\n 'path',\n {\n d: 'M7.5 8a2.5 2.5 0 0 1 0-5A4.8 8 0 0 1 12 8a4.8 8 0 0 1 4.5-5 2.5 2.5 0 0 1 0 5',\n key: '1ihvrl',\n },\n ],\n]);\n\nexport default Gift;\n"],"names":[],"mappings":";;;;;;;;;AAaM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,iBAAiB,MAAQ,CAAA,CAAA,CAAA;AAAA,CAAA,CACpC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAE,CAAA,CAAA,CAAG,KAAK,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,QAAQ,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,SAAS,CAAA,CAAA;AAAA,CAAA,CAC5E,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CACzC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAA6C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAC1E,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACA,CAAA,CAAA,CAAA,CAAA;AAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACP,CAAA,CAAA,CAAA,CAAA;AAAA,CACF,CAAA,CAAA;AACF,CAAC,CAAA,CAAA;;"}
@@ -0,0 +1,16 @@
'use strict';
var l, s;
if (process.env.NODE_ENV === 'production') {
l = require('./cjs/react-dom-server-legacy.browser.production.js');
s = require('./cjs/react-dom-server.browser.production.js');
} else {
l = require('./cjs/react-dom-server-legacy.browser.development.js');
s = require('./cjs/react-dom-server.browser.development.js');
}
exports.version = l.version;
exports.renderToString = l.renderToString;
exports.renderToStaticMarkup = l.renderToStaticMarkup;
exports.renderToReadableStream = s.renderToReadableStream;
exports.resume = s.resume;
@@ -0,0 +1 @@
{"version":3,"file":"shimsBrowser.mjs","names":[],"sources":["../src/shimsBrowser.ts"],"sourcesContent":["/**\n * Browser runtime shims for client package\n *\n * This file is selected via package.json export conditions when running in a browser.\n */\nexport { CfWorkerJsonSchemaValidator as DefaultJsonSchemaValidator } from '@modelcontextprotocol/core-internal/validators/cfWorker';\n\n/**\n * Whether `fetch()` may throw `TypeError` due to CORS. Only true in browser contexts\n * (including Web Workers / Service Workers). In Node.js and Cloudflare Workers, a\n * `TypeError` from `fetch` is always a real network/configuration error.\n */\nexport const CORS_IS_POSSIBLE = true;\n"],"mappings":";;;;;;;;AAYA,MAAa,mBAAmB"}
@@ -0,0 +1 @@
module.exports={C:{"5":0.00315,"52":0.00315,"115":0.0882,"120":0.14805,"121":0.29295,"123":0.00315,"124":0.00315,"136":0.0063,"140":0.0189,"146":0.00315,"147":0.0063,"149":0.00315,"150":0.00945,"151":0.0063,"152":0.01575,"153":0.02205,"154":0.1071,"155":0.32445,"156":0.3276,"157":0.00945,_:"2 3 4 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 116 117 118 119 122 125 126 127 128 129 130 131 132 133 134 135 137 138 139 141 142 143 144 145 148 158 159 160 3.5 3.6"},D:{"45":0.00315,"48":0.0063,"49":0.00315,"53":0.0063,"55":0.00315,"56":0.00315,"57":0.00315,"58":0.00315,"60":0.00315,"69":0.00315,"70":0.0126,"73":0.00315,"79":0.00945,"80":0.00315,"83":0.0063,"86":0.00945,"87":0.0063,"91":0.0063,"92":0.0063,"93":0.0126,"95":0.00315,"97":0.0063,"98":0.00945,"99":0.0063,"100":0.00315,"101":0.01575,"102":0.0063,"103":0.16695,"104":0.0819,"105":0.08505,"106":0.08505,"107":0.08505,"108":0.09135,"109":0.7119,"110":0.08505,"111":0.0882,"112":0.08505,"113":0.00315,"114":0.01575,"115":0.0126,"116":0.1764,"117":0.0819,"118":0.22995,"119":0.30555,"120":0.4032,"121":0.0252,"122":0.02205,"123":0.01575,"124":0.1008,"125":0.05985,"126":0.0315,"127":0.0126,"128":0.0315,"129":0.0063,"130":0.02205,"131":0.189,"132":0.0189,"133":0.19845,"134":0.05355,"135":0.0756,"136":0.0567,"137":0.06615,"138":0.13545,"139":0.05985,"140":0.07875,"141":0.0819,"142":0.1575,"143":0.0378,"144":0.27405,"145":0.0378,"146":0.18585,"147":0.063,"148":0.2016,"149":0.14805,"150":0.3276,"151":1.4553,"152":6.35985,"153":5.76135,"154":1.2852,"155":0.0252,"156":0.0063,_:"4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 46 47 50 51 52 54 59 61 62 63 64 65 66 67 68 71 72 74 75 76 77 78 81 84 85 88 89 90 94 96 157"},F:{"95":0.0126,"100":0.00315,"101":0.01575,"106":0.00315,"131":0.00315,"133":0.00315,"134":0.03465,"135":0.252,_:"9 11 12 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 60 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 96 97 98 99 102 103 104 105 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 132 9.5-9.6 10.0-10.1 10.5 10.6 11.1 11.5 11.6 12.1"},B:{"92":0.0126,"109":0.0252,"113":0.00315,"114":0.0063,"119":0.1449,"120":0.1575,"122":0.00945,"123":0.00315,"126":0.00315,"127":0.0063,"128":0.00315,"129":0.00315,"130":0.00315,"131":0.00945,"132":0.0063,"133":0.0063,"134":0.0063,"135":0.0063,"136":0.0063,"137":0.0063,"138":0.00945,"139":0.00945,"140":0.0126,"141":0.0126,"142":0.0126,"143":0.01575,"144":0.0126,"145":0.0126,"146":0.01575,"147":0.01575,"148":0.02205,"149":0.02835,"150":0.05355,"151":0.1575,"152":1.4175,"153":1.6443,"154":0.42525,_:"12 13 14 15 16 17 18 79 80 81 83 84 85 86 87 88 89 90 91 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 110 111 112 115 116 117 118 121 124 125"},E:{"27":0.05355,_:"4 5 6 7 8 9 10 11 12 13 14 15 3.1 3.2 5.1 6.1 7.1 9.1 10.1 11.1 12.1 15.1 15.2-15.3 15.4 15.5 16.0 16.2 16.4 17.0 17.2 27.1 27.2 TP","13.1":0.00315,"14.1":0.0063,"15.6":0.0252,"16.1":0.0063,"16.3":0.0063,"16.5":0.00315,"16.6":0.03465,"17.1":0.02835,"17.3":0.0063,"17.4":0.0063,"17.5":0.0126,"17.6":0.03465,"18.0":0.00315,"18.1":0.00945,"18.2":0.00315,"18.3":0.0126,"18.4":0.0063,"18.5-18.7":0.0189,"26.0":0.00945,"26.1":0.00945,"26.2":0.0252,"26.3":0.0315,"26.4":0.0252,"26.5":0.126,"26.6":0.47565},G:{"8":0,"3.2":0,"4.0-4.1":0,"4.2-4.3":0.00437,"5.0-5.1":0.00328,"6.0-6.1":0,"7.0-7.1":0.00547,"8.1-8.4":0,"9.0-9.2":0.00219,"9.3":0,"10.0-10.2":0,"10.3":0.01421,"11.0-11.2":0.00219,"11.3-11.4":0,"12.0-12.1":0,"12.2-12.5":0.02733,"13.0-13.1":0,"13.2":0.00328,"13.3":0,"13.4-13.7":0.00219,"14.0-14.4":0.00656,"14.5-14.8":0.00765,"15.0-15.1":0.00874,"15.2-15.3":0.00765,"15.4":0.01093,"15.5":0.01202,"15.6-15.8":0.22299,"16.0":0.02186,"16.1":0.03389,"16.2":0.01858,"16.3":0.04263,"16.4":0.00984,"16.5":0.0153,"16.6-16.7":0.28749,"17.0":0.01421,"17.1":0.01968,"17.2":0.01749,"17.3":0.02514,"17.4":0.03826,"17.5":0.07324,"17.6-17.7":0.1585,"18.0":0.04263,"18.1":0.07324,"18.2":0.06668,"18.3":0.13008,"18.4":0.07433,"18.5-18.7":1.72054,"26.0":0.11696,"26.1":0.10931,"26.2":0.27765,"26.3":0.26781,"26.4":0.22299,"26.5":1.22209,"26.6":4.82495,"27.0":0.53343,"27.1":0,"27.2":0.01202},P:{"22":0.0094,"23":0.0094,"24":0.0094,"25":0.0188,"26":0.0376,"27":0.0282,"28":0.07519,"29":0.11279,"30":1.45687,_:"4 20 21 5.0-5.4 6.2-6.4 8.2 9.2 10.1 11.1-11.2 12.0 13.0 14.0 15.0 16.0 17.0 18.0 19.0","7.2-7.4":0.0094},I:{"0":0.04108,"3":0,"4":0,"2.1":0,"2.2":0,"2.3":0,"4.1":0,"4.2-4.3":0,"4.4":0,"4.4.3-4.4.4":0.00001},K:{"0":1.05475,_:"10 11 12 11.1 11.5 12.1"},A:{"11":0.47Line truncated
@@ -0,0 +1 @@
{"version":3,"file":"test-tube-diagonal.js","sources":["../../../src/icons/test-tube-diagonal.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name TestTubeDiagonal\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMjEgNyA2LjgyIDIxLjE4YTIuODMgMi44MyAwIDAgMS0zLjk5LS4wMWEyLjgzIDIuODMgMCAwIDEgMC00TDE3IDMiIC8+CiAgPHBhdGggZD0ibTE2IDIgNiA2IiAvPgogIDxwYXRoIGQ9Ik0xMiAxNkg0IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/test-tube-diagonal\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst TestTubeDiagonal = createLucideIcon('TestTubeDiagonal', [\n [\n 'path',\n { d: 'M21 7 6.82 21.18a2.83 2.83 0 0 1-3.99-.01a2.83 2.83 0 0 1 0-4L17 3', key: '1ub6xw' },\n ],\n ['path', { d: 'm16 2 6 6', key: '1gw87d' }],\n ['path', { d: 'M12 16H4', key: '1cjfip' }],\n]);\n\nexport default TestTubeDiagonal;\n"],"names":[],"mappings":";;;;;;;;;AAaM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmB,iBAAiB,kBAAoB,CAAA,CAAA,CAAA;AAAA,CAC5D,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAsE,EAAA,CAAA,CAAA,CAAA,CAAA,CAAK,QAAS,CAAA,CAAA;AAAA,CAC3F,CAAA,CAAA,CAAA;AAAA,CAAA,CACA,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC1C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA;AAC3C,CAAC,CAAA,CAAA;;"}
@@ -0,0 +1,66 @@
import { getValueAsType } from '../../../value/types/utils/get-as-type.mjs';
import { numberValueTypes } from '../../../value/types/maps/number.mjs';
import { transformProps } from '../../utils/keys-transform.mjs';
import { isCSSVariableName } from '../../../animation/utils/is-css-variable.mjs';
import { buildTransform } from './build-transform.mjs';
function buildHTMLStyles(state, latestValues, transformTemplate) {
const { style, vars, transformOrigin } = state;
// Track whether we encounter any transform or transformOrigin values.
let hasTransform = false;
let hasTransformOrigin = false;
/**
* Loop over all our latest animated values and decide whether to handle them
* as a style or CSS variable.
*
* Transforms and transform origins are kept separately for further processing.
*/
for (const key in latestValues) {
const value = latestValues[key];
if (transformProps.has(key)) {
// If this is a transform, flag to enable further transform processing
hasTransform = true;
continue;
}
else if (isCSSVariableName(key)) {
vars[key] = value;
continue;
}
else {
// Convert the value to its default value type, ie 0 -> "0px"
const valueAsType = getValueAsType(value, numberValueTypes[key]);
if (key.startsWith("origin")) {
// If this is a transform origin, flag and enable further transform-origin processing
hasTransformOrigin = true;
transformOrigin[key] =
valueAsType;
}
else {
style[key] = valueAsType;
}
}
}
if (!latestValues.transform) {
if (hasTransform || transformTemplate) {
style.transform = buildTransform(latestValues, state.transform, transformTemplate);
}
else if (style.transform) {
/**
* If we have previously created a transform but currently don't have any,
* reset transform style to none.
*/
style.transform = "none";
}
}
/**
* Build a transformOrigin style. Uses the same defaults as the browser for
* undefined origins.
*/
if (hasTransformOrigin) {
const { originX = "50%", originY = "50%", originZ = 0, } = transformOrigin;
style.transformOrigin = `${originX} ${originY} ${originZ}`;
}
}
export { buildHTMLStyles };
//# sourceMappingURL=build-styles.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"renderRouterToStream.js","names":[],"sources":["../../../src/ssr/renderRouterToStream.tsx"],"sourcesContent":["import { PassThrough } from 'node:stream'\nimport ReactDOMServer from 'react-dom/server'\nimport { isbot } from 'isbot'\nimport {\n transformPipeableStreamWithRouter,\n transformReadableStreamWithRouter,\n} from '@tanstack/router-core/ssr/server'\nimport type { AnyRouter } from '@tanstack/router-core'\nimport type { ReadableStream } from 'node:stream/web'\nimport type { ReactNode } from 'react'\n\nexport const renderRouterToStream = async ({\n request,\n router,\n responseHeaders,\n children,\n}: {\n request: Request\n router: AnyRouter\n responseHeaders: Headers\n children: ReactNode\n}) => {\n if (typeof ReactDOMServer.renderToReadableStream === 'function') {\n const stream = await ReactDOMServer.renderToReadableStream(children, {\n signal: request.signal,\n nonce: router.options.ssr?.nonce,\n progressiveChunkSize: Number.POSITIVE_INFINITY,\n })\n\n if (isbot(request.headers.get('User-Agent'))) {\n await stream.allReady\n }\n\n const responseStream = transformReadableStreamWithRouter(\n router,\n stream as unknown as ReadableStream,\n )\n return new Response(responseStream as any, {\n status: router.stores.statusCode.get(),\n headers: responseHeaders,\n })\n }\n\n if (typeof ReactDOMServer.renderToPipeableStream === 'function') {\n const reactAppPassthrough = new PassThrough()\n\n try {\n const pipeable = ReactDOMServer.renderToPipeableStream(children, {\n nonce: router.options.ssr?.nonce,\n progressiveChunkSize: Number.POSITIVE_INFINITY,\n ...(isbot(request.headers.get('User-Agent'))\n ? {\n onAllReady() {\n pipeable.pipe(reactAppPassthrough)\n },\n }\n : {\n onShellReady() {\n pipeable.pipe(reactAppPassthrough)\n },\n }),\n onError: (error, info) => {\n console.error('Error in renderToPipeableStream:', error, info)\n // Destroy the passthrough stream on error\n if (!reactAppPassthrough.destroyed) {\n reactAppPassthrough.destroy(\n error instanceof Error ? error : new Error(String(error)),\n )\n }\n },\n })\n } catch (e) {\n console.error('Error in renderToPipeableStream:', e)\n reactAppPassthrough.destroy(e instanceof Error ? e : new Error(String(e)))\n }\n\n const responseStream = transformPipeableStreamWithRouter(\n router,\n reactAppPassthrough,\n )\n return new Response(responseStream as any, {\n status: router.stores.statusCode.get(),\n headers: responseHeaders,\n })\n }\n\n throw new Error(\n 'No renderToReadableStream or renderToPipeableStream found in react-dom/server. Ensure you are using a version of react-dom that supports streaming.',\n )\n}\n"],"mappings":";;;;;AAWA,IAAa,uBAAuB,OAAO,EACzC,SACA,QACA,iBACA,eAMI;AACJ,KAAI,OAAO,eAAe,2BAA2B,YAAY;EAC/D,MAAM,SAAS,MAAM,eAAe,uBAAuB,UAAU;GACnE,QAAQ,QAAQ;GAChB,OAAO,OAAO,QAAQ,KAAK;GAC3B,sBAAsB,OAAO;GAC9B,CAAC;AAEF,MAAI,MAAM,QAAQ,QAAQ,IAAI,aAAa,CAAC,CAC1C,OAAM,OAAO;EAGf,MAAM,iBAAiB,kCACrB,QACA,OACD;AACD,SAAO,IAAI,SAAS,gBAAuB;GACzC,QAAQ,OAAO,OAAO,WAAW,KAAK;GACtC,SAAS;GACV,CAAC;;AAGJ,KAAI,OAAO,eAAe,2BAA2B,YAAY;EAC/D,MAAM,sBAAsB,IAAI,aAAa;AAE7C,MAAI;GACF,MAAM,WAAW,eAAe,uBAAuB,UAAU;IAC/D,OAAO,OAAO,QAAQ,KAAK;IAC3B,sBAAsB,OAAO;IAC7B,GAAI,MAAM,QAAQ,QAAQ,IAAI,aAAa,CAAC,GACxC,EACE,aAAa;AACX,cAAS,KAAK,oBAAoB;OAErC,GACD,EACE,eAAe;AACb,cAAS,KAAK,oBAAoB;OAErC;IACL,UAAU,OAAO,SAAS;AACxB,aAAQ,MAAM,oCAAoC,OAAO,KAAK;AAE9D,SAAI,CAAC,oBAAoB,UACvB,qBAAoB,QAClB,iBAAiB,QAAQ,QAAQ,IAAI,MAAM,OAAO,MAAM,CAAC,CAC1D;;IAGN,CAAC;WACK,GAAG;AACV,WAAQ,MAAM,oCAAoC,EAAE;AACpD,uBAAoB,QAAQ,aAAa,QAAQ,IAAI,IAAI,MAAM,OAAO,EAAE,CAAC,CAAC;;EAG5E,MAAM,iBAAiB,kCACrB,QACA,oBACD;AACD,SAAO,IAAI,SAAS,gBAAuB;GACzC,QAAQ,OAAO,OAAO,WAAW,KAAK;GACtC,SAAS;GACV,CAAC;;AAGJ,OAAM,IAAI,MACR,sJACD"}
@@ -0,0 +1,3 @@
export function noJitter(delay: number) {
return delay;
}
@@ -0,0 +1,42 @@
import type { SSROption } from './router'
import type { AnySerializationAdapter } from './ssr/serializer/transformer'
export interface RouterConfigOptions<
in out TSerializationAdapters,
in out TDefaultSsr,
> {
serializationAdapters?: TSerializationAdapters
defaultSsr?: TDefaultSsr
}
export interface RouterConfig<
in out TSerializationAdapters,
in out TDefaultSsr,
> {
'~types': RouterConfigTypes<TSerializationAdapters, TDefaultSsr>
serializationAdapters: TSerializationAdapters
defaultSsr: TDefaultSsr | undefined
}
export interface RouterConfigTypes<
in out TSerializationAdapters,
in out TDefaultSsr,
> {
serializationAdapters: TSerializationAdapters
defaultSsr: TDefaultSsr
}
export const createRouterConfig = <
const TSerializationAdapters extends ReadonlyArray<AnySerializationAdapter> =
[],
TDefaultSsr extends SSROption = SSROption,
>(
options: RouterConfigOptions<TSerializationAdapters, TDefaultSsr>,
): RouterConfig<TSerializationAdapters, TDefaultSsr> => {
return {
serializationAdapters: options.serializationAdapters,
defaultSsr: options.defaultSsr,
} as RouterConfig<TSerializationAdapters, TDefaultSsr>
}
export type AnyRouterConfig = RouterConfig<any, any>