From 50c1c47e2b41a8a34d1441fad8f8182939a6863c Mon Sep 17 00:00:00 2001 From: Errilaz Date: Wed, 13 May 2026 02:03:11 +0200 Subject: [PATCH] feat: new website --- .gitignore | 7 + LICENSE | 7 + README.md | 5 + assets/background.js | 258 ++++++ bun.lock | 1310 +++++++++++++++++++++++++++++++ bunfig.toml | 2 + compose.yml | 6 + cv.pdf | Bin 0 -> 100883 bytes da.nfin.ch.code-workspace | 26 + errilaz.org/favicon.ico | Bin 0 -> 1150 bytes errilaz.org/favicon.png | Bin 0 -> 7789 bytes errilaz.org/index.html | 137 ++++ hypeup.config.ts | 12 + oxfmt.config.ts | 24 + oxlint.config.ts | 93 +++ package.json | 51 ++ public/favicon.ico | Bin 0 -> 19518 bytes public/favicon.png | Bin 0 -> 2479 bytes public/icons/about.png | Bin 0 -> 470 bytes public/icons/contact.png | Bin 0 -> 1060 bytes public/icons/experience.png | Bin 0 -> 636 bytes public/icons/github.svg | 4 + public/icons/linkedin.svg | 1 + public/icons/projects.png | Bin 0 -> 523 bytes public/icons/tech.png | Bin 0 -> 678 bytes public/pfp.jpg | Bin 0 -> 64233 bytes regime.config.json | 10 + scripts/build-cv.ts | 42 + src/ambient.d.ts | 1 + src/routes/cv.html.ts | 1 + src/routes/experience.html.ts | 1 + src/routes/index.html.ts | 1 + src/routes/projects.html.ts | 1 + src/routes/tech.html.ts | 1 + src/types.d.ts | 4 + src/ui/CV/CV.ts | 192 +++++ src/ui/CV/index.ts | 1 + src/ui/Experience/Experience.ts | 26 + src/ui/Experience/experience.md | 91 +++ src/ui/Experience/index.ts | 1 + src/ui/Home/Home.ts | 30 + src/ui/Home/details.md | 5 + src/ui/Home/index.ts | 1 + src/ui/Home/interests.md | 4 + src/ui/Home/intro.md | 1 + src/ui/Home/skills.md | 8 + src/ui/Layout/Head.ts | 18 + src/ui/Layout/Layout.ts | 50 ++ src/ui/Layout/Reset.ts | 14 + src/ui/Layout/Taskbar.ts | 101 +++ src/ui/Layout/Theme.ts | 39 + src/ui/Layout/Window.ts | 32 + src/ui/Layout/index.ts | 1 + src/ui/Projects/Projects.ts | 21 + src/ui/Projects/index.ts | 1 + src/ui/Tech/Sections.ts | 122 +++ src/ui/Tech/Tech.ts | 48 ++ src/ui/Tech/index.ts | 1 + src/ui/shared/Markdown.ts | 9 + tsconfig.base.json | 16 + tsconfig.config.json | 15 + tsconfig.json | 14 + tsconfig.src.json | 23 + tsconfig.test.json | 18 + 64 files changed, 2908 insertions(+) create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 README.md create mode 100644 assets/background.js create mode 100644 bun.lock create mode 100644 bunfig.toml create mode 100644 compose.yml create mode 100644 cv.pdf create mode 100644 da.nfin.ch.code-workspace create mode 100644 errilaz.org/favicon.ico create mode 100644 errilaz.org/favicon.png create mode 100644 errilaz.org/index.html create mode 100644 hypeup.config.ts create mode 100644 oxfmt.config.ts create mode 100644 oxlint.config.ts create mode 100644 package.json create mode 100644 public/favicon.ico create mode 100644 public/favicon.png create mode 100644 public/icons/about.png create mode 100644 public/icons/contact.png create mode 100644 public/icons/experience.png create mode 100644 public/icons/github.svg create mode 100644 public/icons/linkedin.svg create mode 100644 public/icons/projects.png create mode 100644 public/icons/tech.png create mode 100644 public/pfp.jpg create mode 100644 regime.config.json create mode 100644 scripts/build-cv.ts create mode 100644 src/ambient.d.ts create mode 100644 src/routes/cv.html.ts create mode 100644 src/routes/experience.html.ts create mode 100644 src/routes/index.html.ts create mode 100644 src/routes/projects.html.ts create mode 100644 src/routes/tech.html.ts create mode 100644 src/types.d.ts create mode 100644 src/ui/CV/CV.ts create mode 100644 src/ui/CV/index.ts create mode 100644 src/ui/Experience/Experience.ts create mode 100644 src/ui/Experience/experience.md create mode 100644 src/ui/Experience/index.ts create mode 100644 src/ui/Home/Home.ts create mode 100644 src/ui/Home/details.md create mode 100644 src/ui/Home/index.ts create mode 100644 src/ui/Home/interests.md create mode 100644 src/ui/Home/intro.md create mode 100644 src/ui/Home/skills.md create mode 100644 src/ui/Layout/Head.ts create mode 100644 src/ui/Layout/Layout.ts create mode 100644 src/ui/Layout/Reset.ts create mode 100644 src/ui/Layout/Taskbar.ts create mode 100644 src/ui/Layout/Theme.ts create mode 100644 src/ui/Layout/Window.ts create mode 100644 src/ui/Layout/index.ts create mode 100644 src/ui/Projects/Projects.ts create mode 100644 src/ui/Projects/index.ts create mode 100644 src/ui/Tech/Sections.ts create mode 100644 src/ui/Tech/Tech.ts create mode 100644 src/ui/Tech/index.ts create mode 100644 src/ui/shared/Markdown.ts create mode 100644 tsconfig.base.json create mode 100644 tsconfig.config.json create mode 100644 tsconfig.json create mode 100644 tsconfig.src.json create mode 100644 tsconfig.test.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..58384c2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +node_modules +dist +*.tgz +.env +.env.* +.cache +*.tsbuildinfo diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..924b5b0 --- /dev/null +++ b/LICENSE @@ -0,0 +1,7 @@ +Copyright © 2026 Dan Finch + +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. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..fdc370e --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +# da.nfin.ch + +My website. + +Built with [hypeup](https://github.com/sigitex/hypeup) SSG. diff --git a/assets/background.js b/assets/background.js new file mode 100644 index 0000000..0b8afa0 --- /dev/null +++ b/assets/background.js @@ -0,0 +1,258 @@ +// 100% VIBES + +const canvas = document.getElementById('background'); +const gl = canvas.getContext('webgl'); + +if (gl) { + function resize() { + canvas.width = canvas.clientWidth * devicePixelRatio; + canvas.height = canvas.clientHeight * devicePixelRatio; + gl.viewport(0, 0, canvas.width, canvas.height); + } + window.addEventListener('resize', resize); + resize(); + + gl.getExtension('OES_standard_derivatives'); + + const vsrc = ` +attribute vec2 a_pos; +void main() { gl_Position = vec4(a_pos, 0.0, 1.0); } +`; + + const fsrc = ` +#extension GL_OES_standard_derivatives : enable +precision highp float; +uniform float u_time; +uniform float u_glitch; +uniform vec2 u_res; + +#define COL_SKY_TOP vec3(0.04, 0.0, 0.12) +#define COL_SKY_MID vec3(0.18, 0.02, 0.28) +#define COL_SKY_LOW vec3(0.85, 0.25, 0.45) +#define COL_HORIZON vec3(1.0, 0.55, 0.2) +#define COL_GRID vec3(0.0, 0.95, 1.0) +#define COL_GRID2 vec3(0.72, 0.4, 1.0) +#define COL_MOUNT vec3(0.06, 0.0, 0.14) + +float hash(vec2 p) { + return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453); +} + +float noise(vec2 p) { + vec2 i = floor(p); + vec2 f = fract(p); + f = f * f * (3.0 - 2.0 * f); + float a = hash(i); + float b = hash(i + vec2(1.0, 0.0)); + float c = hash(i + vec2(0.0, 1.0)); + float d = hash(i + vec2(1.0, 1.0)); + return mix(mix(a, b, f.x), mix(c, d, f.x), f.y); +} + +float mountain(float x, float scale, float height, float offset) { + float m = 0.0; + m += abs(fract(x * 0.4 + offset * 0.1) - 0.5) * 2.0 * 0.5; + m += abs(fract(x * 0.85 + offset * 0.17) - 0.5) * 2.0 * 0.3; + m += abs(fract(x * 1.9 + offset * 0.06) - 0.5) * 2.0 * 0.15; + float cx = abs(x) / (scale * 0.1 + 0.5); + float sideMask = smoothstep(0.0, 0.5, cx); + return m * height * sideMask; +} + +float glitch(float y, float t, float g) { + if (g < 0.01) return 0.0; + float band = step(0.7, hash(vec2(floor(y * 30.0), floor(t * 20.0)))); + float off = (hash(vec2(floor(y * 30.0), floor(t * 30.0))) - 0.5) * 0.06; + return off * band * g; +} + +float glitchColor(float y, float t, float g) { + float band = step(0.6, hash(vec2(floor(y * 25.0), floor(t * 15.0)))); + return band * g; +} + +void main() { + vec2 uv = gl_FragCoord.xy / u_res; + float aspect = u_res.x / u_res.y; + float t = u_time; + + float gOff = glitch(uv.y, t, u_glitch); + uv.x += gOff; + + vec2 cuv = (uv - 0.5) * vec2(aspect, 1.0); + + float horizon = 0.42; + vec3 col = vec3(0.0); + + if (uv.y > horizon) { + float skyT = (uv.y - horizon) / (1.0 - horizon); + vec3 sky = vec3(0.0); + if (skyT < 0.15) { + sky = mix(COL_HORIZON, COL_SKY_LOW, skyT / 0.15); + } else if (skyT < 0.5) { + sky = mix(COL_SKY_LOW, COL_SKY_MID, (skyT - 0.15) / 0.35); + } else { + sky = mix(COL_SKY_MID, COL_SKY_TOP, (skyT - 0.5) / 0.5); + } + + vec2 sunPos = vec2(-0.3, -0.02); + float sunDist = length(cuv - sunPos); + float sunR = 0.35; + + if (sunDist < sunR) { + float sunT = (cuv.y - sunPos.y + sunR) / (2.0 * sunR); + vec3 sunCol = mix(vec3(0.8, 0.05, 0.1), vec3(1.0, 0.85, 0.3), sunT); + float sunEdge = smoothstep(sunR, sunR - 0.006, sunDist); + sky = mix(sky, sunCol, sunEdge); + } + + float glow = exp(-sunDist * 2.5) * 0.7; + sky += vec3(1.0, 0.25, 0.15) * glow; + + float mx = cuv.x; + float m1 = mountain(mx * 2.5, 8.0, 1.0, 0.0) * 0.45; + float mH1 = (uv.y - horizon) - m1 * (1.0 - horizon); + float fw1 = fwidth(mH1); + float mMask1 = smoothstep(-fw1, fw1, mH1); + sky = mix(sky, COL_MOUNT, 1.0 - mMask1); + + float m2 = mountain(mx * 3.5, 12.0, 1.0, 5.0) * 0.35; + float mH2 = (uv.y - horizon) - m2 * (1.0 - horizon); + float fw2 = fwidth(mH2); + float mMask2 = smoothstep(-fw2, fw2, mH2); + sky = mix(sky, COL_MOUNT * 0.7, 1.0 - mMask2); + + col = sky; + } + + if (uv.y <= horizon) { + float floorT = (horizon - uv.y) / horizon; + float z = 0.3 / (floorT + 0.01); + float x = cuv.x * z * 2.5; + float scrollSpeed = 0.2; + z += t * scrollSpeed; + + float gx = x * 1.8; + float gz = z * 0.6; + + float lineX = abs(fract(gx) - 0.5); + float lineZ = abs(fract(gz) - 0.5); + float fwX = fwidth(gx) * 1.0; + float fwZ = fwidth(gz) * 1.0; + + float gridX = smoothstep(fwX, 0.0, lineX) * 0.7; + float gridZ = smoothstep(fwZ, 0.0, lineZ) * 0.7; + float grid = max(gridX, gridZ); + + float fadeDist = smoothstep(0.85, 0.0, floorT); + float fadeNear = smoothstep(0.0, 0.05, floorT); + grid *= fadeDist * fadeNear; + + vec3 gridCol = mix(COL_GRID, COL_GRID2, floorT); + + vec3 ground = vec3(0.02, 0.0, 0.05); + float hGlow = exp(-floorT * 6.0) * 0.3; + ground += COL_HORIZON * hGlow; + + col = ground + gridCol * grid; + } + + float hLine = exp(-abs(uv.y - horizon) * 120.0) * 0.5; + col += vec3(1.0, 0.5, 0.3) * hLine; + + float scanline = sin(gl_FragCoord.y * 1.5) * 0.04 + 0.96; + col *= scanline; + + vec2 vc = uv * 2.0 - 1.0; + float vignette = 1.0 - dot(vc * 0.5, vc * 0.5); + col *= smoothstep(0.0, 0.7, vignette); + + float gc = glitchColor(uv.y, t, u_glitch); + col.r += gc * 0.15; + col.b -= gc * 0.1; + + col = pow(col, vec3(0.95)); + + gl_FragColor = vec4(col, 1.0); +} +`; + + function compile(type, src) { + const s = gl.createShader(type); + gl.shaderSource(s, src); + gl.compileShader(s); + if (!gl.getShaderParameter(s, gl.COMPILE_STATUS)) { + console.error(gl.getShaderInfoLog(s)); + return null; + } + return s; + } + + const vs = compile(gl.VERTEX_SHADER, vsrc); + const fs = compile(gl.FRAGMENT_SHADER, fsrc); + const prog = gl.createProgram(); + gl.attachShader(prog, vs); + gl.attachShader(prog, fs); + gl.linkProgram(prog); + if (!gl.getProgramParameter(prog, gl.LINK_STATUS)) { + console.error(gl.getProgramInfoLog(prog)); + } + gl.useProgram(prog); + + const buf = gl.createBuffer(); + gl.bindBuffer(gl.ARRAY_BUFFER, buf); + gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([-1,-1, 1,-1, -1,1, 1,1]), gl.STATIC_DRAW); + const aPos = gl.getAttribLocation(prog, 'a_pos'); + gl.enableVertexAttribArray(aPos); + gl.vertexAttribPointer(aPos, 2, gl.FLOAT, false, 0, 0); + + const uTime = gl.getUniformLocation(prog, 'u_time'); + const uGlitch = gl.getUniformLocation(prog, 'u_glitch'); + const uRes = gl.getUniformLocation(prog, 'u_res'); + + const glitchDuration = 300; + let glitchStart = -glitchDuration; + let elapsed = 0; + let lastFrame = 0; + let raf = null; + + document.addEventListener('click', function() { + glitchStart = performance.now(); + }, true); + + function glitchAmount(now) { + const age = now - glitchStart; + if (age < 0 || age > glitchDuration) return 0; + return Math.sin((age / glitchDuration) * Math.PI); + } + + function frame(now) { + if (document.hidden) { + raf = null; + lastFrame = 0; + return; + } + + if (lastFrame) { + elapsed += Math.min((now - lastFrame) / 1000, 0.1); + } + lastFrame = now; + + gl.uniform1f(uTime, elapsed); + gl.uniform1f(uGlitch, glitchAmount(now)); + gl.uniform2f(uRes, canvas.width, canvas.height); + gl.drawArrays(gl.TRIANGLE_STRIP, 0, 4); + + raf = requestAnimationFrame(frame); + } + + function startAnimation() { + if (!raf && !document.hidden) { + lastFrame = 0; + raf = requestAnimationFrame(frame); + } + } + + document.addEventListener('visibilitychange', startAnimation); + startAnimation(); +} diff --git a/bun.lock b/bun.lock new file mode 100644 index 0000000..a08ed2e --- /dev/null +++ b/bun.lock @@ -0,0 +1,1310 @@ +{ + "lockfileVersion": 1, + "configVersion": 1, + "workspaces": { + "": { + "name": "dan", + "dependencies": { + "98se.css": "/err/98se.css", + "@danielx/civet": "^0.11.7", + "@fontsource/roboto-condensed": "^5.2.8", + "@hypeup/client": "workspace:*", + "@hypeup/lexicon": "workspace:*", + "@hypeup/runtime": "workspace:*", + "marked": "^18.0.3", + "marked-gfm-heading-id": "^4.1.4", + }, + "devDependencies": { + "@types/bun": "^1.3.13", + "@typescript/native-preview": "beta", + "hypeup": "workspace:*", + "oxfmt": "^0.47.0", + "oxlint": "^1.62.0", + "playwright": "^1.54.1", + }, + }, + "../../sig/hypeup/packages/babel": { + "name": "@hypeup/babel", + "dependencies": { + "@babel/core": "^7.27.1", + "@babel/helper-module-imports": "^7.27.1", + "@babel/types": "^7.27.1", + "@hypeup/lexicon": "workspace:*", + }, + "devDependencies": { + "@types/babel__core": "^7.20.5", + "@types/babel__helper-module-imports": "^7.18.3", + "@types/bun": "^1.3.13", + "@typescript/native-preview": "beta", + }, + }, + "../../sig/hypeup/packages/cli": { + "name": "hypeup", + "version": "0.0.1", + "bin": { + "hypeup": "./src/cli.ts", + }, + "dependencies": { + "@hypeup/lexicon": "workspace:*", + "@hypeup/plugin": "workspace:*", + "@hypeup/render": "workspace:*", + "@hypeup/runtime": "workspace:*", + "@hypeup/vdom": "workspace:*", + "vite": "^8.0.0", + }, + "devDependencies": { + "@types/bun": "^1.3.13", + "@typescript/native-preview": "beta", + }, + }, + "../../sig/hypeup/packages/client": { + "name": "@hypeup/client", + "version": "0.0.1", + "dependencies": { + "@hypeup/runtime": "workspace:*", + "@hypeup/vdom": "workspace:*", + }, + "devDependencies": { + "@types/bun": "^1.3.13", + "@typescript/native-preview": "beta", + "happy-dom": "^20.9.0", + }, + }, + "../../sig/hypeup/packages/escape-html": { + "name": "@hypeup/escape-html", + "devDependencies": { + "@types/bun": "^1.3.13", + "@types/escape-html": "1.0.4", + "@typescript/native-preview": "beta", + "escape-html": "1.0.3", + }, + "peerDependencies": { + "escape-html": "^1.0.3", + }, + "optionalPeers": [ + "escape-html", + ], + }, + "../../sig/hypeup/packages/generate": { + "name": "@hypeup/generate", + "dependencies": { + "@sigitex/writer": "*", + "@types/css-tree": "^2.3.11", + "@webref/css": "^8.5.3", + "@webref/elements": "^2.7.1", + "css-tree": "^3.2.1", + "html-tags": "^5.1.0", + }, + "devDependencies": { + "@types/bun": "^1.3.13", + "@typescript/native-preview": "beta", + }, + }, + "../../sig/hypeup/packages/lexicon": { + "name": "@hypeup/lexicon", + "dependencies": { + "@hypeup/runtime": "workspace:*", + }, + "devDependencies": { + "@hypeup/generate": "workspace:*", + "@hypeup/vdom": "workspace:*", + "@types/bun": "^1.3.13", + "@typescript/native-preview": "beta", + }, + }, + "../../sig/hypeup/packages/plugin": { + "name": "@hypeup/plugin", + "dependencies": { + "@babel/core": "^7.27.1", + "@babel/preset-typescript": "^7.27.1", + "@hypeup/babel": "workspace:*", + "unplugin": "^3.0.0", + }, + "devDependencies": { + "@types/babel__core": "^7.20.5", + "@types/bun": "^1.3.13", + "@typescript/native-preview": "beta", + "vite": "^8.0.0", + }, + }, + "../../sig/hypeup/packages/render": { + "name": "@hypeup/render", + "dependencies": { + "@hypeup/escape-html": "workspace:*", + "@hypeup/runtime": "workspace:*", + "@hypeup/vdom": "workspace:*", + }, + "devDependencies": { + "@types/bun": "^1.3.13", + "@typescript/native-preview": "beta", + }, + }, + "../../sig/hypeup/packages/runtime": { + "name": "@hypeup/runtime", + "dependencies": { + "@hypeup/vdom": "workspace:*", + "cssesc": "^3.0.0", + }, + "devDependencies": { + "@types/bun": "^1.3.13", + "@typescript/native-preview": "beta", + }, + }, + "../../sig/hypeup/packages/vdom": { + "name": "@hypeup/vdom", + "devDependencies": { + "@types/bun": "^1.3.13", + "@typescript/native-preview": "beta", + }, + }, + }, + "packages": { + "98se.css": ["98.css@file:../../err/98se.css", { "devDependencies": { "chokidar": "^3.3.1", "cssnano": "^5.0.1", "dedent": "^0.7.0", "ejs": "^3.0.2", "gh-pages": "^2.2.0", "glob": "^7.1.6", "highlight.js": "^10.4.1", "live-server": "^1.2.1", "mkdirp": "^1.0.4", "postcss": "^8.2.12", "postcss-calc": "^7.0.2", "postcss-copy": "^7.1.0", "postcss-css-variables": "^0.14.0", "postcss-inline": "^1.2.0", "postcss-inline-svg": "^4.1.0" } }], + + "@babel/code-frame": ["@babel/code-frame@7.29.0", "", { "dependencies": { "@babel/helper-validator-identifier": "^7.28.5", "js-tokens": "^4.0.0", "picocolors": "^1.1.1" } }, "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw=="], + + "@babel/compat-data": ["@babel/compat-data@7.29.3", "", {}, "sha512-LIVqM46zQWZhj17qA8wb4nW/ixr2y1Nw+r1etiAWgRM6U1IqP+LNhL1yg440jYZR72jCWcWbLWzIosH+uP1fqg=="], + + "@babel/core": ["@babel/core@7.29.0", "", { "dependencies": { "@babel/code-frame": "^7.29.0", "@babel/generator": "^7.29.0", "@babel/helper-compilation-targets": "^7.28.6", "@babel/helper-module-transforms": "^7.28.6", "@babel/helpers": "^7.28.6", "@babel/parser": "^7.29.0", "@babel/template": "^7.28.6", "@babel/traverse": "^7.29.0", "@babel/types": "^7.29.0", "@jridgewell/remapping": "^2.3.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", "json5": "^2.2.3", "semver": "^6.3.1" } }, "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA=="], + + "@babel/generator": ["@babel/generator@7.29.1", "", { "dependencies": { "@babel/parser": "^7.29.0", "@babel/types": "^7.29.0", "@jridgewell/gen-mapping": "^0.3.12", "@jridgewell/trace-mapping": "^0.3.28", "jsesc": "^3.0.2" } }, "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw=="], + + "@babel/helper-annotate-as-pure": ["@babel/helper-annotate-as-pure@7.27.3", "", { "dependencies": { "@babel/types": "^7.27.3" } }, "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg=="], + + "@babel/helper-compilation-targets": ["@babel/helper-compilation-targets@7.28.6", "", { "dependencies": { "@babel/compat-data": "^7.28.6", "@babel/helper-validator-option": "^7.27.1", "browserslist": "^4.24.0", "lru-cache": "^5.1.1", "semver": "^6.3.1" } }, "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA=="], + + "@babel/helper-create-class-features-plugin": ["@babel/helper-create-class-features-plugin@7.29.3", "", { "dependencies": { "@babel/helper-annotate-as-pure": "^7.27.3", "@babel/helper-member-expression-to-functions": "^7.28.5", "@babel/helper-optimise-call-expression": "^7.27.1", "@babel/helper-replace-supers": "^7.28.6", "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", "@babel/traverse": "^7.29.0", "semver": "^6.3.1" }, "peerDependencies": { "@babel/core": "^7.0.0" } }, "sha512-RpLYy2sb51oNLjuu1iD3bwBqCBWUzjO0ocp+iaCP/lJtb2CPLcnC2Fftw+4sAzaMELGeWTgExSKADbdo0GFVzA=="], + + "@babel/helper-globals": ["@babel/helper-globals@7.28.0", "", {}, "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw=="], + + "@babel/helper-member-expression-to-functions": ["@babel/helper-member-expression-to-functions@7.28.5", "", { "dependencies": { "@babel/traverse": "^7.28.5", "@babel/types": "^7.28.5" } }, "sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg=="], + + "@babel/helper-module-imports": ["@babel/helper-module-imports@7.28.6", "", { "dependencies": { "@babel/traverse": "^7.28.6", "@babel/types": "^7.28.6" } }, "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw=="], + + "@babel/helper-module-transforms": ["@babel/helper-module-transforms@7.28.6", "", { "dependencies": { "@babel/helper-module-imports": "^7.28.6", "@babel/helper-validator-identifier": "^7.28.5", "@babel/traverse": "^7.28.6" }, "peerDependencies": { "@babel/core": "^7.0.0" } }, "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA=="], + + "@babel/helper-optimise-call-expression": ["@babel/helper-optimise-call-expression@7.27.1", "", { "dependencies": { "@babel/types": "^7.27.1" } }, "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw=="], + + "@babel/helper-plugin-utils": ["@babel/helper-plugin-utils@7.28.6", "", {}, "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug=="], + + "@babel/helper-replace-supers": ["@babel/helper-replace-supers@7.28.6", "", { "dependencies": { "@babel/helper-member-expression-to-functions": "^7.28.5", "@babel/helper-optimise-call-expression": "^7.27.1", "@babel/traverse": "^7.28.6" }, "peerDependencies": { "@babel/core": "^7.0.0" } }, "sha512-mq8e+laIk94/yFec3DxSjCRD2Z0TAjhVbEJY3UQrlwVo15Lmt7C2wAUbK4bjnTs4APkwsYLTahXRraQXhb1WCg=="], + + "@babel/helper-skip-transparent-expression-wrappers": ["@babel/helper-skip-transparent-expression-wrappers@7.27.1", "", { "dependencies": { "@babel/traverse": "^7.27.1", "@babel/types": "^7.27.1" } }, "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg=="], + + "@babel/helper-string-parser": ["@babel/helper-string-parser@7.27.1", "", {}, "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA=="], + + "@babel/helper-validator-identifier": ["@babel/helper-validator-identifier@7.28.5", "", {}, "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q=="], + + "@babel/helper-validator-option": ["@babel/helper-validator-option@7.27.1", "", {}, "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg=="], + + "@babel/helpers": ["@babel/helpers@7.29.2", "", { "dependencies": { "@babel/template": "^7.28.6", "@babel/types": "^7.29.0" } }, "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw=="], + + "@babel/parser": ["@babel/parser@7.29.3", "", { "dependencies": { "@babel/types": "^7.29.0" }, "bin": "./bin/babel-parser.js" }, "sha512-b3ctpQwp+PROvU/cttc4OYl4MzfJUWy6FZg+PMXfzmt/+39iHVF0sDfqay8TQM3JA2EUOyKcFZt75jWriQijsA=="], + + "@babel/plugin-syntax-jsx": ["@babel/plugin-syntax-jsx@7.28.6", "", { "dependencies": { "@babel/helper-plugin-utils": "^7.28.6" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, "sha512-wgEmr06G6sIpqr8YDwA2dSRTE3bJ+V0IfpzfSY3Lfgd7YWOaAdlykvJi13ZKBt8cZHfgH1IXN+CL656W3uUa4w=="], + + "@babel/plugin-syntax-typescript": ["@babel/plugin-syntax-typescript@7.28.6", "", { "dependencies": { "@babel/helper-plugin-utils": "^7.28.6" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, "sha512-+nDNmQye7nlnuuHDboPbGm00Vqg3oO8niRRL27/4LYHUsHYh0zJ1xWOz0uRwNFmM1Avzk8wZbc6rdiYhomzv/A=="], + + "@babel/plugin-transform-modules-commonjs": ["@babel/plugin-transform-modules-commonjs@7.28.6", "", { "dependencies": { "@babel/helper-module-transforms": "^7.28.6", "@babel/helper-plugin-utils": "^7.28.6" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, "sha512-jppVbf8IV9iWWwWTQIxJMAJCWBuuKx71475wHwYytrRGQ2CWiDvYlADQno3tcYpS/T2UUWFQp3nVtYfK/YBQrA=="], + + "@babel/plugin-transform-typescript": ["@babel/plugin-transform-typescript@7.28.6", "", { "dependencies": { "@babel/helper-annotate-as-pure": "^7.27.3", "@babel/helper-create-class-features-plugin": "^7.28.6", "@babel/helper-plugin-utils": "^7.28.6", "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", "@babel/plugin-syntax-typescript": "^7.28.6" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, "sha512-0YWL2RFxOqEm9Efk5PvreamxPME8OyY0wM5wh5lHjF+VtVhdneCWGzZeSqzOfiobVqQaNCd2z0tQvnI9DaPWPw=="], + + "@babel/preset-typescript": ["@babel/preset-typescript@7.28.5", "", { "dependencies": { "@babel/helper-plugin-utils": "^7.27.1", "@babel/helper-validator-option": "^7.27.1", "@babel/plugin-syntax-jsx": "^7.27.1", "@babel/plugin-transform-modules-commonjs": "^7.27.1", "@babel/plugin-transform-typescript": "^7.28.5" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, "sha512-+bQy5WOI2V6LJZpPVxY+yp66XdZ2yifu0Mc1aP5CQKgjn4QM5IN2i5fAZ4xKop47pr8rpVhiAeu+nDQa12C8+g=="], + + "@babel/template": ["@babel/template@7.28.6", "", { "dependencies": { "@babel/code-frame": "^7.28.6", "@babel/parser": "^7.28.6", "@babel/types": "^7.28.6" } }, "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ=="], + + "@babel/traverse": ["@babel/traverse@7.29.0", "", { "dependencies": { "@babel/code-frame": "^7.29.0", "@babel/generator": "^7.29.0", "@babel/helper-globals": "^7.28.0", "@babel/parser": "^7.29.0", "@babel/template": "^7.28.6", "@babel/types": "^7.29.0", "debug": "^4.3.1" } }, "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA=="], + + "@babel/types": ["@babel/types@7.29.0", "", { "dependencies": { "@babel/helper-string-parser": "^7.27.1", "@babel/helper-validator-identifier": "^7.28.5" } }, "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A=="], + + "@cspotcode/source-map-support": ["@cspotcode/source-map-support@0.8.1", "", { "dependencies": { "@jridgewell/trace-mapping": "0.3.9" } }, "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw=="], + + "@danielx/civet": ["@danielx/civet@0.11.7", "", { "dependencies": { "@cspotcode/source-map-support": "^0.8.1", "unplugin": "2.3.11" }, "peerDependencies": { "typescript": ">=4.5", "yaml": "^2.4.5" }, "optionalPeers": ["typescript", "yaml"], "bin": { "civet": "dist/civet" } }, "sha512-5dmoH7HBDQRWy5GsvRwDMdJTEeewY5d8F9v+ixhkfinw6VU4kj+vV02+lYcb/hRsQn7zIULD2ABZXn1z0I65dw=="], + + "@emnapi/core": ["@emnapi/core@1.10.0", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.1", "tslib": "^2.4.0" } }, "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw=="], + + "@emnapi/runtime": ["@emnapi/runtime@1.10.0", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA=="], + + "@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.2.1", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w=="], + + "@fontsource/roboto-condensed": ["@fontsource/roboto-condensed@5.2.8", "", {}, "sha512-M2OxXXGJQeif+LhxHjWiCEX3BHIYeZf64CcUTeh9AQFGp7DXo2UAXZiZUUOalVdOiuUtQSIi2CDHLDWFiyoECQ=="], + + "@hypeup/babel": ["@hypeup/babel@workspace:../../sig/hypeup/packages/babel"], + + "@hypeup/client": ["@hypeup/client@workspace:../../sig/hypeup/packages/client"], + + "@hypeup/escape-html": ["@hypeup/escape-html@workspace:../../sig/hypeup/packages/escape-html"], + + "@hypeup/generate": ["@hypeup/generate@workspace:../../sig/hypeup/packages/generate"], + + "@hypeup/lexicon": ["@hypeup/lexicon@workspace:../../sig/hypeup/packages/lexicon"], + + "@hypeup/plugin": ["@hypeup/plugin@workspace:../../sig/hypeup/packages/plugin"], + + "@hypeup/render": ["@hypeup/render@workspace:../../sig/hypeup/packages/render"], + + "@hypeup/runtime": ["@hypeup/runtime@workspace:../../sig/hypeup/packages/runtime"], + + "@hypeup/vdom": ["@hypeup/vdom@workspace:../../sig/hypeup/packages/vdom"], + + "@jridgewell/gen-mapping": ["@jridgewell/gen-mapping@0.3.13", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA=="], + + "@jridgewell/remapping": ["@jridgewell/remapping@2.3.5", "", { "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ=="], + + "@jridgewell/resolve-uri": ["@jridgewell/resolve-uri@3.1.2", "", {}, "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw=="], + + "@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.5", "", {}, "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og=="], + + "@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.9", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" } }, "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ=="], + + "@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.1.4", "", { "dependencies": { "@tybys/wasm-util": "^0.10.1" }, "peerDependencies": { "@emnapi/core": "^1.7.1", "@emnapi/runtime": "^1.7.1" } }, "sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow=="], + + "@oxc-project/types": ["@oxc-project/types@0.129.0", "", {}, "sha512-3oz8m3FGdr2nDXVqmFUw7jolKliC4MoyXYIG2c7gpjBnzUWQpUGIYcXYKxTdTi+N2jusvt610ckTMkxdwHkYEg=="], + + "@oxfmt/binding-android-arm-eabi": ["@oxfmt/binding-android-arm-eabi@0.47.0", "", { "os": "android", "cpu": "arm" }, "sha512-KrMQRdMi/upr81qT4ijK6X6BNp6jqpMY7FwILQnwIy9QLc3qpnhUx5rsCLGzn4ewsCQ0CNAspN2ogmP1GXLyLw=="], + + "@oxfmt/binding-android-arm64": ["@oxfmt/binding-android-arm64@0.47.0", "", { "os": "android", "cpu": "arm64" }, "sha512-r4ixS/PeUpAFKgrpDoZ5pSkthjZzVzKd95525Aazj+aOv9H4ulK5zYHGb7wFY5n5kZxHK8TbOJUZgoEb1ohddQ=="], + + "@oxfmt/binding-darwin-arm64": ["@oxfmt/binding-darwin-arm64@0.47.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-CLWxiKpMl+195cm09CuaWEhJK0CirRkoMa07aR9+9AFPat2LfIKtwx1JqxZM0MTvcMe6+adlJNdVL6jdInvq3g=="], + + "@oxfmt/binding-darwin-x64": ["@oxfmt/binding-darwin-x64@0.47.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-Xq5fjTYDC50faUeLSm0rZdBqoTgleXEdD7NpJdARtQIczkCJn3xNjMUSQQkUmh4CtxkKTNL68lytcOK3e/osgg=="], + + "@oxfmt/binding-freebsd-x64": ["@oxfmt/binding-freebsd-x64@0.47.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-QOU9ZIJ52p5askcEC0QJvvr8trHAWoonul8bgISo6gYUL3s50zkqafBYcNAr9LJZQbsZtPfIWHk9+5+nUp1qJQ=="], + + "@oxfmt/binding-linux-arm-gnueabihf": ["@oxfmt/binding-linux-arm-gnueabihf@0.47.0", "", { "os": "linux", "cpu": "arm" }, "sha512-oJxDM1aBhPvz9gmElBv8UpxyiqhwfjcbrSxT5F0xtuUzY6dQI27/AQPIt3eu3Z5Yvn0kQl5R7MA3Z+MbnRvCBw=="], + + "@oxfmt/binding-linux-arm-musleabihf": ["@oxfmt/binding-linux-arm-musleabihf@0.47.0", "", { "os": "linux", "cpu": "arm" }, "sha512-g8Lh50VS4ibGz2q6v7r9UZY4D0dM16SdrFYOMzhqIoCwGcai8VMIRUAcqn1/jlCsOOzUXJ741+kCeJt0cofakQ=="], + + "@oxfmt/binding-linux-arm64-gnu": ["@oxfmt/binding-linux-arm64-gnu@0.47.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-YrNT1vQ0asaXoRbrvYENPqmBfOQ9Xr8enPNOULeYfg44VjCcrUowFy5QZr+WawE0zyP8cH9e9Gxxg0fDEFzhcg=="], + + "@oxfmt/binding-linux-arm64-musl": ["@oxfmt/binding-linux-arm64-musl@0.47.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-IxtQC/sbBi4ubbY+MdwdanRWrG9InQJVZqyMsBa5IUaQcnSg86gQme574HxXMC1p4bo4YhV99zQ+wNnGCvEgzw=="], + + "@oxfmt/binding-linux-ppc64-gnu": ["@oxfmt/binding-linux-ppc64-gnu@0.47.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-EWXEhOMbWO0q6eJSbu0QLkU8cKi0ljlYLngeDs2Ocu/pm1rrLwyQiYzlFbdnMRURI4w9ndr1sI9rSbhlJ5o23Q=="], + + "@oxfmt/binding-linux-riscv64-gnu": ["@oxfmt/binding-linux-riscv64-gnu@0.47.0", "", { "os": "linux", "cpu": "none" }, "sha512-tZrjS11TUiDuEpRaqdk8K9F9xETRyKXfuZKmdeW+Gj7coBnm7+8sBEfyt033EAFEQSlkniAXvBLh+Qja2ioGBQ=="], + + "@oxfmt/binding-linux-riscv64-musl": ["@oxfmt/binding-linux-riscv64-musl@0.47.0", "", { "os": "linux", "cpu": "none" }, "sha512-KBFy+2CFKUCZzYwX2ZOPQKck1vjQbz+hextuc19G4r0WRJwadfAeuQMQRQvB+Ivc8brlbOVg7et8K7E467440g=="], + + "@oxfmt/binding-linux-s390x-gnu": ["@oxfmt/binding-linux-s390x-gnu@0.47.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-REUPFKVGSiK99B+9eaPhluEVglzaoj/SMykNC5SUiV2RSsBfV5lWN7Y0iCIc251Wz3GaeAGZsJ/zj3gjarxdFg=="], + + "@oxfmt/binding-linux-x64-gnu": ["@oxfmt/binding-linux-x64-gnu@0.47.0", "", { "os": "linux", "cpu": "x64" }, "sha512-KVftVSVEDeIfRW3TIeLe3aNI/iY4m1fu5mDwHcisKMZSCMKLkrhFsjowC7o9RoqNPxbbglm2+/6KAKBIts2t0Q=="], + + "@oxfmt/binding-linux-x64-musl": ["@oxfmt/binding-linux-x64-musl@0.47.0", "", { "os": "linux", "cpu": "x64" }, "sha512-DTsmGEaA2860Aq5VUyDO8/MT9NFxwVL93RnRYmpMwK6DsSkThmvEpqoUDDljziEpAedMRG19SCogrNbINSbLUQ=="], + + "@oxfmt/binding-openharmony-arm64": ["@oxfmt/binding-openharmony-arm64@0.47.0", "", { "os": "none", "cpu": "arm64" }, "sha512-8r5BDro7fLOBoq1JXHLVSs55OlrxQhEso4HVo0TcY7OXJUPYfjPoOaYL5us+yIwqyP9rQwN+rxuiNFSmaxSuOQ=="], + + "@oxfmt/binding-win32-arm64-msvc": ["@oxfmt/binding-win32-arm64-msvc@0.47.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-qtz/gzm8IjSPUlseZ0ofW8zyHLoZsuP5HTfcGGkWkUblB89JT8GNYH3ICqjbDsqsGqXum0/ZndXTFplSdXFIcg=="], + + "@oxfmt/binding-win32-ia32-msvc": ["@oxfmt/binding-win32-ia32-msvc@0.47.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-5vIcdcIDE7nCx+MXN6sm8kbC4zajDB31E86rez4i45iHNH/2NjdKlJ720xcHTr3eeiMcttCGPHPhE1TjtBDGZw=="], + + "@oxfmt/binding-win32-x64-msvc": ["@oxfmt/binding-win32-x64-msvc@0.47.0", "", { "os": "win32", "cpu": "x64" }, "sha512-Sr59Y5ms54ONBjxFeWhVlGyQcHXxcl9DxC23f6yXlRkcos7LXBLoO+KDfxexjHIOZh7cWqrWduzvUjJ+pHp8cQ=="], + + "@oxlint/binding-android-arm-eabi": ["@oxlint/binding-android-arm-eabi@1.64.0", "", { "os": "android", "cpu": "arm" }, "sha512-2r6Nq3XXGLHEXKkSj8JtmJ6N4gDw431DPFOg0ZoJHlNjnG6HVMm/ksQ10m0HJ8WBvwgMe1L50UHPaYZutCRPCw=="], + + "@oxlint/binding-android-arm64": ["@oxlint/binding-android-arm64@1.64.0", "", { "os": "android", "cpu": "arm64" }, "sha512-ePJMpePgg7fBv+L/hVx1xXRU5/5gd5m0obLA6hPEfLXF3GjpR8idIDbY1dhQYhyz1ms2wdTccSboo6KEd2Oxtg=="], + + "@oxlint/binding-darwin-arm64": ["@oxlint/binding-darwin-arm64@1.64.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-U4DMLQd10gJLuoSTLSGbfv3bGjTlUNsScm9Dgb8wwBqmCzidf1pE1pXV4doGNxqwH3KtVng1AGTINA0NvkGLvQ=="], + + "@oxlint/binding-darwin-x64": ["@oxlint/binding-darwin-x64@1.64.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-GoRIL48QWm4/TAvjN8pB1nAG+1/uqc9EdnWT9zqHeb6wsmjZtywj8VRe5aGW47Fdb64YtLOsdLqVxOvQuz98Wg=="], + + "@oxlint/binding-freebsd-x64": ["@oxlint/binding-freebsd-x64@1.64.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-5dFkv4tkg7PxJJGS9/OjrJwjhuHczrd3OQOkRE0wHcLM+ncUnULtzEPWjqGOxTXxZnLWcB91bGiIznx89TVXyQ=="], + + "@oxlint/binding-linux-arm-gnueabihf": ["@oxlint/binding-linux-arm-gnueabihf@1.64.0", "", { "os": "linux", "cpu": "arm" }, "sha512-jsBqMLl/uOL5+Kq/+BtK9FrmiNGUbx8SiyZXv+WlUxA45KuwcLu9BfiSIL3I3DBDgWM3yZizDITnTK9BcqNBQg=="], + + "@oxlint/binding-linux-arm-musleabihf": ["@oxlint/binding-linux-arm-musleabihf@1.64.0", "", { "os": "linux", "cpu": "arm" }, "sha512-1lrj8At/Uuc9GhjrVFBQo0NEjfBrTkzpmtHIGAhNnIXqn1CAyGL+qrztUsXb2GIluJrpl9Q7qRLJOb/NqydacQ=="], + + "@oxlint/binding-linux-arm64-gnu": ["@oxlint/binding-linux-arm64-gnu@1.64.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-HpSQbubwh03mMhAdy2BYtad/fsY8vDFHDAb6bUwuCYg2VD3xCQgn6ArKcO0oZyLCheacKTv4PrF3Mfu5hgoE2g=="], + + "@oxlint/binding-linux-arm64-musl": ["@oxlint/binding-linux-arm64-musl@1.64.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-00QQ0h0Y7u0G69BgiH3+ky2aaq/QvkDL6DYok8htIuJHxybiux5aQ8jwmg8qIk9wha6UagUP2BAwAzbemcJbpg=="], + + "@oxlint/binding-linux-ppc64-gnu": ["@oxlint/binding-linux-ppc64-gnu@1.64.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-2GaimTV6EMW+s5HS0An3oGbQme3BgHswvfVdGk3EB57Xe9+/gyT+Qd7lNVzb3rtir52vbIPzXfaYArzs5b5zcw=="], + + "@oxlint/binding-linux-riscv64-gnu": ["@oxlint/binding-linux-riscv64-gnu@1.64.0", "", { "os": "linux", "cpu": "none" }, "sha512-H46AtFb9wypjoVwGdlxrm0DsD809NGmtiK9HiyPKTxkSte2YjhC4S+00rOIrwCaxcyPiGid3Y3OMXp5KMAkGZw=="], + + "@oxlint/binding-linux-riscv64-musl": ["@oxlint/binding-linux-riscv64-musl@1.64.0", "", { "os": "linux", "cpu": "none" }, "sha512-HEgsidjjvvyzdg82icYkuFCf7REDV7B9JFwbIMbVwrKLBY0MrXX+bku3POn/hduZ2yW91IyVDUMq0Bf02KwXQw=="], + + "@oxlint/binding-linux-s390x-gnu": ["@oxlint/binding-linux-s390x-gnu@1.64.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-Axvm8qryotmKN00P5w4JapaSjvP2LOSbdbBJiX+2SuHd3QzhW7TUc8skqgw+ahQZ5DmzEYeHCqauvW8f32Ns6Q=="], + + "@oxlint/binding-linux-x64-gnu": ["@oxlint/binding-linux-x64-gnu@1.64.0", "", { "os": "linux", "cpu": "x64" }, "sha512-cR60vSd7+m+KRZ3GQGfDxWwahW5RMXg0qlGvAluZr0fTUYvw0H9N9AXAF/M/PMqgytyqvVNmBAkJG9l7U30Y1g=="], + + "@oxlint/binding-linux-x64-musl": ["@oxlint/binding-linux-x64-musl@1.64.0", "", { "os": "linux", "cpu": "x64" }, "sha512-2u/aPZ9pEg7HnvZPDsHxUGNnrpr4qaHi+mCgLgpt+LYRzPrS4Px4wPfkIdRdr2GvKnaYyt+XSlto0Vm5sbStTg=="], + + "@oxlint/binding-openharmony-arm64": ["@oxlint/binding-openharmony-arm64@1.64.0", "", { "os": "none", "cpu": "arm64" }, "sha512-kfhkGfCdoXLSxEkrhDlJrvBYajGmq+ma4EMc53dsOWTq+rIBOlI0vTBmpZNnM5oH2LY/K/w1HAK+UQEgjgpVUg=="], + + "@oxlint/binding-win32-arm64-msvc": ["@oxlint/binding-win32-arm64-msvc@1.64.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-r/cNKBFieONoVu2bb1KkVouq9W+edDUgHumXJGphCRRj+U0xaD4nanrw8ZOqo0IsutPkEM4vCcGBpak6x5aXMg=="], + + "@oxlint/binding-win32-ia32-msvc": ["@oxlint/binding-win32-ia32-msvc@1.64.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-tUw0xUUwEFVZbpJoeCblkv8SJA4Xz3CdXCJbAnBsiNLyxDrk2tLcxEAS6M73Q7hHHDg3OtwI8vZVK3t5RJt4Gw=="], + + "@oxlint/binding-win32-x64-msvc": ["@oxlint/binding-win32-x64-msvc@1.64.0", "", { "os": "win32", "cpu": "x64" }, "sha512-9CBR+LO0JVST87fNTzzNxS5I29jIUO5gxT9i9+M3SDHHALElj9sY1Prf12tad3vIRC6OD7Ehtvvh+sn13vSwHw=="], + + "@rolldown/binding-android-arm64": ["@rolldown/binding-android-arm64@1.0.0", "", { "os": "android", "cpu": "arm64" }, "sha512-TWMZnRLMe63C2Lhyicviu7ZHaU4kxa6PS3rofvc9GmcvptzNN11BcfQ4Sl7MwTOsisQoa2keB/EBdNCAnUo8vA=="], + + "@rolldown/binding-darwin-arm64": ["@rolldown/binding-darwin-arm64@1.0.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-6XcD+8k0gPVItNagEw78/qqcBDwKcwDYS8V2hRmVsfUSIrd8cWe/CBvRDI5toqFyPfj+FJr6t8U6Xj2P2prEew=="], + + "@rolldown/binding-darwin-x64": ["@rolldown/binding-darwin-x64@1.0.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-iN/tWVXRQDWvmZlKdceP1Dwug9GDpEymhb9p4xnEe6zvCg5lFmzVljl+1qR1NVx3yfGpr2Na+CuLmv5IU8uzfQ=="], + + "@rolldown/binding-freebsd-x64": ["@rolldown/binding-freebsd-x64@1.0.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-jjQMDvvwSOuhOwMszD/klSOjyWMM3zI64hWTj9KT5x4MxRbZAf+7vLQ6qouRhtsLVFHr3f0ILaJAfgENPiQdAQ=="], + + "@rolldown/binding-linux-arm-gnueabihf": ["@rolldown/binding-linux-arm-gnueabihf@1.0.0", "", { "os": "linux", "cpu": "arm" }, "sha512-d//Dtg2x6/m3mbV64yUGNnDGNZaDGRpDLLNGerHQUVObuNaIQaaDp25yUiqGXtHEXX+NP2d0wAlmKgpYgIAJ2A=="], + + "@rolldown/binding-linux-arm64-gnu": ["@rolldown/binding-linux-arm64-gnu@1.0.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-n7Ofp0mx+aB2cC+Sdy5YtMnXtY9lchnHbY+3Yt0uq9JsWQExf4f5Whu0tK0R8Jdc9S6RchTHjIFY7uc92puOVQ=="], + + "@rolldown/binding-linux-arm64-musl": ["@rolldown/binding-linux-arm64-musl@1.0.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-EIVjy2cgd7uuMMo94FVkBp7F6DhcZAUwNURkSG3RwUmvAXR6s0ISxM81U+IydcZByPG0pZIHsf1b6kTxoFDgJA=="], + + "@rolldown/binding-linux-ppc64-gnu": ["@rolldown/binding-linux-ppc64-gnu@1.0.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-JEwwOPcwTLAcpDQlqSmjEmfs63xJnSiUNIGvLcDLUHCWK4XowpS/7c7tUsUH6uT/ct6bMUTdXKfI8967FYj6mg=="], + + "@rolldown/binding-linux-s390x-gnu": ["@rolldown/binding-linux-s390x-gnu@1.0.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-0wjCFhLrihtAubnT9iA0N++0pSV0z5Hg7tNGdNJ4RFaINceHadoF+kiFGyY1qSSNVIAZtLotG8Ju1bgDPkjnFA=="], + + "@rolldown/binding-linux-x64-gnu": ["@rolldown/binding-linux-x64-gnu@1.0.0", "", { "os": "linux", "cpu": "x64" }, "sha512-Dfn7iak9BcMMePxcoJfpSbWqnEyrp/dRF63/8qW/eHBdOZov6x5aShLLEYGYdIeSJ6vMLK/XCVB+lGIxm41bQA=="], + + "@rolldown/binding-linux-x64-musl": ["@rolldown/binding-linux-x64-musl@1.0.0", "", { "os": "linux", "cpu": "x64" }, "sha512-5/utzzDmD/pD/bmuaUcbTf/sZYy0aztwIVlfpoW1fTjCZ0BaPOMVWGZL1zvgxyi7ZIVYWlxKONHmSbHuiOh8Jw=="], + + "@rolldown/binding-openharmony-arm64": ["@rolldown/binding-openharmony-arm64@1.0.0", "", { "os": "none", "cpu": "arm64" }, "sha512-ouJs8VcUomfLfpbUECqFMRqdV4x6aeAK3MA4m6vTrJJjKyWTV5KnxZx7Jd9G+GlDaQQxubcba00x16OyJ1meig=="], + + "@rolldown/binding-wasm32-wasi": ["@rolldown/binding-wasm32-wasi@1.0.0", "", { "dependencies": { "@emnapi/core": "1.10.0", "@emnapi/runtime": "1.10.0", "@napi-rs/wasm-runtime": "^1.1.4" }, "cpu": "none" }, "sha512-E+oHKGiDA+lsKMmFtffDDw91EryDT7uJocrIuCHqhm6bCTM6xFK+3gaCkYOHfPwQr0cCNarSM2xaELoQDz9jJg=="], + + "@rolldown/binding-win32-arm64-msvc": ["@rolldown/binding-win32-arm64-msvc@1.0.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-yYK02n8Rngo+gbm1y6G0+7jk1sJ/2Wt7K0me0Y7k/ErBpyf+LJ2gFpqWVTcRV1rUepBlQRmpgWkTQCiiwrK0Ow=="], + + "@rolldown/binding-win32-x64-msvc": ["@rolldown/binding-win32-x64-msvc@1.0.0", "", { "os": "win32", "cpu": "x64" }, "sha512-14bpChMahXRRXiTwahSl+zzHPW6qQTXtkMuJBFlbo+pqSAews2d4BdCSHfrJ/MBsCZtpmTafsY+1QhBzitcmdg=="], + + "@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.0", "", {}, "sha512-aKs/3GSWyV0mrhNmt/96/Z3yczC3yvrzYATCiCXQebBsGyYzjNdUphRVLeJQ67ySKVXRfMxt2lm12pmXvbPFQQ=="], + + "@sigitex/writer": ["@sigitex/writer@1.2.2", "", {}, "sha512-YLPPgs2P821rt1NhWVDsK7SZPO5ymq3fnZBxh61lyZgLj4RYzzP8XHr3S7thzYAxwfiv+MbzHCIpsMkz6zrvOg=="], + + "@tybys/wasm-util": ["@tybys/wasm-util@0.10.2", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg=="], + + "@types/babel__core": ["@types/babel__core@7.20.5", "", { "dependencies": { "@babel/parser": "^7.20.7", "@babel/types": "^7.20.7", "@types/babel__generator": "*", "@types/babel__template": "*", "@types/babel__traverse": "*" } }, "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA=="], + + "@types/babel__generator": ["@types/babel__generator@7.27.0", "", { "dependencies": { "@babel/types": "^7.0.0" } }, "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg=="], + + "@types/babel__helper-module-imports": ["@types/babel__helper-module-imports@7.18.3", "", { "dependencies": { "@types/babel__core": "*", "@types/babel__traverse": "*" } }, "sha512-2pyr9Vlriessj2KI85SEF7qma8vA3vzquQMw3wn6kL5lsfjH/YxJ1Noytk4/FJElpYybUbyaC37CVfEgfyme9A=="], + + "@types/babel__template": ["@types/babel__template@7.4.4", "", { "dependencies": { "@babel/parser": "^7.1.0", "@babel/types": "^7.0.0" } }, "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A=="], + + "@types/babel__traverse": ["@types/babel__traverse@7.28.0", "", { "dependencies": { "@babel/types": "^7.28.2" } }, "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q=="], + + "@types/bun": ["@types/bun@1.3.13", "", { "dependencies": { "bun-types": "1.3.13" } }, "sha512-9fqXWk5YIHGGnUau9TEi+qdlTYDAnOj+xLCmSTwXfAIqXr2x4tytJb43E9uCvt09zJURKXwAtkoH4nLQfzeTXw=="], + + "@types/css-tree": ["@types/css-tree@2.3.11", "", {}, "sha512-aEokibJOI77uIlqoBOkVbaQGC9zII0A+JH1kcTNKW2CwyYWD8KM6qdo+4c77wD3wZOQfJuNWAr9M4hdk+YhDIg=="], + + "@types/escape-html": ["@types/escape-html@1.0.4", "", {}, "sha512-qZ72SFTgUAZ5a7Tj6kf2SHLetiH5S6f8G5frB2SPQ3EyF02kxdyBFf4Tz4banE3xCgGnKgWLt//a6VuYHKYJTg=="], + + "@types/node": ["@types/node@25.7.0", "", { "dependencies": { "undici-types": "~7.21.0" } }, "sha512-z+pdZyxE+RTQE9AcboAZCb4otwcrvgHD+GlBpPgn0emDVt0ohrTMhAwlr2Wd9nZ+nihhYFxO2pThz3C5qSu2Eg=="], + + "@types/whatwg-mimetype": ["@types/whatwg-mimetype@3.0.2", "", {}, "sha512-c2AKvDT8ToxLIOUlN51gTiHXflsfIFisS4pO7pDPoKouJCESkhZnEy623gwP9laCy5lnLDAw1vAzu2vM2YLOrA=="], + + "@types/ws": ["@types/ws@8.18.1", "", { "dependencies": { "@types/node": "*" } }, "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg=="], + + "@typescript/native-preview": ["@typescript/native-preview@7.0.0-dev.20260421.2", "", { "optionalDependencies": { "@typescript/native-preview-darwin-arm64": "7.0.0-dev.20260421.2", "@typescript/native-preview-darwin-x64": "7.0.0-dev.20260421.2", "@typescript/native-preview-linux-arm": "7.0.0-dev.20260421.2", "@typescript/native-preview-linux-arm64": "7.0.0-dev.20260421.2", "@typescript/native-preview-linux-x64": "7.0.0-dev.20260421.2", "@typescript/native-preview-win32-arm64": "7.0.0-dev.20260421.2", "@typescript/native-preview-win32-x64": "7.0.0-dev.20260421.2" }, "bin": { "tsgo": "bin/tsgo.js" } }, "sha512-CmajHI25HpVWE9R1XFoxr+cphJPxoYD3eFioQtAvXYkMFKnLdICMS9pXre9Pybizb75ejRxjKD5/CVG055rEIg=="], + + "@typescript/native-preview-darwin-arm64": ["@typescript/native-preview-darwin-arm64@7.0.0-dev.20260421.2", "", { "os": "darwin", "cpu": "arm64" }, "sha512-fHv1r3ZmVo6zxuAIFmuX3w9QxbcauoG0SsWhmDwm6VmRubLlOJIcmTtlmV3JAb9oOnq8LuzZljzT7Q39fSMQDw=="], + + "@typescript/native-preview-darwin-x64": ["@typescript/native-preview-darwin-x64@7.0.0-dev.20260421.2", "", { "os": "darwin", "cpu": "x64" }, "sha512-KWTR6xbW9t+JS7D5DQIzo75pqVXVWUxF9PMv/+S6xsnOjCVd6g0ixHcFpFMJMKSUQpGPr8Z5f7b8ks6LHW01jg=="], + + "@typescript/native-preview-linux-arm": ["@typescript/native-preview-linux-arm@7.0.0-dev.20260421.2", "", { "os": "linux", "cpu": "arm" }, "sha512-BWLQO3nemLDSV5PoE5GPHe1dU9Dth77Kv8/cle9Ujcp4LhPo0KincdPqFH/qKeU/xvW25mgFueflZ1nc4rKuww=="], + + "@typescript/native-preview-linux-arm64": ["@typescript/native-preview-linux-arm64@7.0.0-dev.20260421.2", "", { "os": "linux", "cpu": "arm64" }, "sha512-VLMEuml3BhUb+jaL0TXQ4xvVODxJF+RhkI+tBWvlynsJI4khTXEiwWh+wPOJrsfBRYFRMXEu28Odl/HXkYze8w=="], + + "@typescript/native-preview-linux-x64": ["@typescript/native-preview-linux-x64@7.0.0-dev.20260421.2", "", { "os": "linux", "cpu": "x64" }, "sha512-qUrJWTB5/wv4wnRG0TRXElAxc2kykNiRNyEIEqBbLmzDlrcvAW7RRy8MXoY1ZyTiKGMu14itZ3x9oW6+blFpRw=="], + + "@typescript/native-preview-win32-arm64": ["@typescript/native-preview-win32-arm64@7.0.0-dev.20260421.2", "", { "os": "win32", "cpu": "arm64" }, "sha512-Rc6NsWlZmCs5YUKVzKgwoBOoRUGsPzct4BDMRX0csD1devLBBc4AbUXWKsJRbpwIAnqMO1ld4sNHEb+wXgfNHQ=="], + + "@typescript/native-preview-win32-x64": ["@typescript/native-preview-win32-x64@7.0.0-dev.20260421.2", "", { "os": "win32", "cpu": "x64" }, "sha512-GQv1+dya1t6EqF2Cpsb+xoozovdX10JUSf6Kl/8xNkTapzmlHd+uMr+8ku3jIASTxoRGn0Mklgjj3MDKrOTuLg=="], + + "@webref/css": ["@webref/css@8.5.5", "", { "peerDependencies": { "css-tree": "^3.2.1" } }, "sha512-i6R7FkwHJTK74VwMvul3V9rYN9Dq3NzJinaKadtg7DkMtvOwTuB5ZR3zGGCWr+nh7jcftymoThr3gKbBnvo3Hg=="], + + "@webref/elements": ["@webref/elements@2.7.1", "", {}, "sha512-ke5VQWxr7vGket8tObjgNrmQ/+BO7MY1XL9gb0auPnHRzW7EN1Xpv5O237glCd4HWRrro05fBpBFXTPHlb24pw=="], + + "accepts": ["accepts@1.3.8", "", { "dependencies": { "mime-types": "~2.1.34", "negotiator": "0.6.3" } }, "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw=="], + + "acorn": ["acorn@8.16.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw=="], + + "ansi-regex": ["ansi-regex@2.1.1", "", {}, "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA=="], + + "ansi-styles": ["ansi-styles@3.2.1", "", { "dependencies": { "color-convert": "^1.9.0" } }, "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA=="], + + "anymatch": ["anymatch@3.1.3", "", { "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" } }, "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw=="], + + "apache-crypt": ["apache-crypt@1.2.6", "", { "dependencies": { "unix-crypt-td-js": "^1.1.4" } }, "sha512-072WetlM4blL8PREJVeY+WHiUh1R5VNt2HfceGS8aKqttPHcmqE5pkKuXPz/ULmJOFkc8Hw3kfKl6vy7Qka6DA=="], + + "apache-md5": ["apache-md5@1.1.8", "", {}, "sha512-FCAJojipPn0bXjuEpjOOOMN8FZDkxfWWp4JGN9mifU2IhxvKyXZYqpzPHdnTSUpmPDy+tsslB6Z1g+Vg6nVbYA=="], + + "arr-diff": ["arr-diff@4.0.0", "", {}, "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA=="], + + "arr-flatten": ["arr-flatten@1.1.0", "", {}, "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg=="], + + "arr-union": ["arr-union@3.1.0", "", {}, "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q=="], + + "array-union": ["array-union@1.0.2", "", { "dependencies": { "array-uniq": "^1.0.1" } }, "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng=="], + + "array-uniq": ["array-uniq@1.0.3", "", {}, "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q=="], + + "array-unique": ["array-unique@0.3.2", "", {}, "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ=="], + + "assign-symbols": ["assign-symbols@1.0.0", "", {}, "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw=="], + + "async": ["async@2.6.4", "", { "dependencies": { "lodash": "^4.17.14" } }, "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA=="], + + "async-each": ["async-each@1.0.6", "", {}, "sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg=="], + + "atob": ["atob@2.1.2", "", { "bin": { "atob": "bin/atob.js" } }, "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg=="], + + "balanced-match": ["balanced-match@1.0.2", "", {}, "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="], + + "base": ["base@0.11.2", "", { "dependencies": { "cache-base": "^1.0.1", "class-utils": "^0.3.5", "component-emitter": "^1.2.1", "define-property": "^1.0.0", "isobject": "^3.0.1", "mixin-deep": "^1.2.0", "pascalcase": "^0.1.1" } }, "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg=="], + + "baseline-browser-mapping": ["baseline-browser-mapping@2.10.29", "", { "bin": { "baseline-browser-mapping": "dist/cli.cjs" } }, "sha512-Asa2krT+XTPZINCS+2QcyS8WTkObE77RwkydwF7h6DmnKqbvlalz93m/dnphUyCa6SWSP51VgtEUf2FN+gelFQ=="], + + "basic-auth": ["basic-auth@2.0.1", "", { "dependencies": { "safe-buffer": "5.1.2" } }, "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg=="], + + "batch": ["batch@0.6.1", "", {}, "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw=="], + + "bcryptjs": ["bcryptjs@2.4.3", "", {}, "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ=="], + + "binary-extensions": ["binary-extensions@2.3.0", "", {}, "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw=="], + + "bindings": ["bindings@1.5.0", "", { "dependencies": { "file-uri-to-path": "1.0.0" } }, "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ=="], + + "boolbase": ["boolbase@1.0.0", "", {}, "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="], + + "brace-expansion": ["brace-expansion@1.1.14", "", { "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g=="], + + "braces": ["braces@3.0.3", "", { "dependencies": { "fill-range": "^7.1.1" } }, "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA=="], + + "browserslist": ["browserslist@4.28.2", "", { "dependencies": { "baseline-browser-mapping": "^2.10.12", "caniuse-lite": "^1.0.30001782", "electron-to-chromium": "^1.5.328", "node-releases": "^2.0.36", "update-browserslist-db": "^1.2.3" }, "bin": { "browserslist": "cli.js" } }, "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg=="], + + "bun-types": ["bun-types@1.3.13", "", { "dependencies": { "@types/node": "*" } }, "sha512-QXKeHLlOLqQX9LgYaHJfzdBaV21T63HhFJnvuRCcjZiaUDpbs5ED1MgxbMra71CsryN/1dAoXuJJJwIv/2drVA=="], + + "cache-base": ["cache-base@1.0.1", "", { "dependencies": { "collection-visit": "^1.0.0", "component-emitter": "^1.2.1", "get-value": "^2.0.6", "has-value": "^1.0.0", "isobject": "^3.0.1", "set-value": "^2.0.0", "to-object-path": "^0.3.0", "union-value": "^1.0.0", "unset-value": "^1.0.0" } }, "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ=="], + + "caniuse-api": ["caniuse-api@3.0.0", "", { "dependencies": { "browserslist": "^4.0.0", "caniuse-lite": "^1.0.0", "lodash.memoize": "^4.1.2", "lodash.uniq": "^4.5.0" } }, "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw=="], + + "caniuse-lite": ["caniuse-lite@1.0.30001792", "", {}, "sha512-hVLMUZFgR4JJ6ACt1uEESvQN1/dBVqPAKY0hgrV70eN3391K6juAfTjKZLKvOMsx8PxA7gsY1/tLMMTcfFLLpw=="], + + "chalk": ["chalk@2.4.2", "", { "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" } }, "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ=="], + + "chokidar": ["chokidar@3.6.0", "", { "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", "readdirp": "~3.6.0" }, "optionalDependencies": { "fsevents": "~2.3.2" } }, "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw=="], + + "class-utils": ["class-utils@0.3.6", "", { "dependencies": { "arr-union": "^3.1.0", "define-property": "^0.2.5", "isobject": "^3.0.0", "static-extend": "^0.1.1" } }, "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg=="], + + "collection-visit": ["collection-visit@1.0.0", "", { "dependencies": { "map-visit": "^1.0.0", "object-visit": "^1.0.0" } }, "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw=="], + + "color-convert": ["color-convert@1.9.3", "", { "dependencies": { "color-name": "1.1.3" } }, "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg=="], + + "color-name": ["color-name@1.1.3", "", {}, "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="], + + "colord": ["colord@2.9.3", "", {}, "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw=="], + + "colors": ["colors@1.4.0", "", {}, "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA=="], + + "commander": ["commander@2.20.3", "", {}, "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="], + + "component-emitter": ["component-emitter@1.3.1", "", {}, "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ=="], + + "concat-map": ["concat-map@0.0.1", "", {}, "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="], + + "connect": ["connect@3.7.0", "", { "dependencies": { "debug": "2.6.9", "finalhandler": "1.1.2", "parseurl": "~1.3.3", "utils-merge": "1.0.1" } }, "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ=="], + + "convert-source-map": ["convert-source-map@2.0.0", "", {}, "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg=="], + + "copy-descriptor": ["copy-descriptor@0.1.1", "", {}, "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw=="], + + "core-util-is": ["core-util-is@1.0.3", "", {}, "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="], + + "cors": ["cors@2.8.6", "", { "dependencies": { "object-assign": "^4", "vary": "^1" } }, "sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw=="], + + "css-declaration-sorter": ["css-declaration-sorter@6.4.1", "", { "peerDependencies": { "postcss": "^8.0.9" } }, "sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g=="], + + "css-select": ["css-select@2.1.0", "", { "dependencies": { "boolbase": "^1.0.0", "css-what": "^3.2.1", "domutils": "^1.7.0", "nth-check": "^1.0.2" } }, "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ=="], + + "css-tree": ["css-tree@3.2.1", "", { "dependencies": { "mdn-data": "2.27.1", "source-map-js": "^1.2.1" } }, "sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA=="], + + "css-what": ["css-what@3.4.2", "", {}, "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ=="], + + "cssesc": ["cssesc@3.0.0", "", { "bin": { "cssesc": "bin/cssesc" } }, "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg=="], + + "cssnano": ["cssnano@5.1.15", "", { "dependencies": { "cssnano-preset-default": "^5.2.14", "lilconfig": "^2.0.3", "yaml": "^1.10.2" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw=="], + + "cssnano-preset-default": ["cssnano-preset-default@5.2.14", "", { "dependencies": { "css-declaration-sorter": "^6.3.1", "cssnano-utils": "^3.1.0", "postcss-calc": "^8.2.3", "postcss-colormin": "^5.3.1", "postcss-convert-values": "^5.1.3", "postcss-discard-comments": "^5.1.2", "postcss-discard-duplicates": "^5.1.0", "postcss-discard-empty": "^5.1.1", "postcss-discard-overridden": "^5.1.0", "postcss-merge-longhand": "^5.1.7", "postcss-merge-rules": "^5.1.4", "postcss-minify-font-values": "^5.1.0", "postcss-minify-gradients": "^5.1.1", "postcss-minify-params": "^5.1.4", "postcss-minify-selectors": "^5.2.1", "postcss-normalize-charset": "^5.1.0", "postcss-normalize-display-values": "^5.1.0", "postcss-normalize-positions": "^5.1.1", "postcss-normalize-repeat-style": "^5.1.1", "postcss-normalize-string": "^5.1.0", "postcss-normalize-timing-functions": "^5.1.0", "postcss-normalize-unicode": "^5.1.1", "postcss-normalize-url": "^5.1.0", "postcss-normalize-whitespace": "^5.1.1", "postcss-ordered-values": "^5.1.3", "postcss-reduce-initial": "^5.1.2", "postcss-reduce-transforms": "^5.1.0", "postcss-svgo": "^5.1.0", "postcss-unique-selectors": "^5.1.1" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A=="], + + "cssnano-utils": ["cssnano-utils@3.1.0", "", { "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA=="], + + "csso": ["csso@4.2.0", "", { "dependencies": { "css-tree": "^1.1.2" } }, "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA=="], + + "debug": ["debug@4.4.3", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="], + + "decode-uri-component": ["decode-uri-component@0.2.2", "", {}, "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ=="], + + "dedent": ["dedent@0.7.0", "", {}, "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA=="], + + "define-property": ["define-property@2.0.2", "", { "dependencies": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" } }, "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ=="], + + "depd": ["depd@2.0.0", "", {}, "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw=="], + + "detect-libc": ["detect-libc@2.1.2", "", {}, "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ=="], + + "dom-serializer": ["dom-serializer@0.1.1", "", { "dependencies": { "domelementtype": "^1.3.0", "entities": "^1.1.1" } }, "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA=="], + + "domelementtype": ["domelementtype@1.3.1", "", {}, "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w=="], + + "domhandler": ["domhandler@2.4.2", "", { "dependencies": { "domelementtype": "1" } }, "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA=="], + + "domutils": ["domutils@1.7.0", "", { "dependencies": { "dom-serializer": "0", "domelementtype": "1" } }, "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg=="], + + "duplexer": ["duplexer@0.1.2", "", {}, "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg=="], + + "ee-first": ["ee-first@1.1.1", "", {}, "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="], + + "ejs": ["ejs@3.1.10", "", { "dependencies": { "jake": "^10.8.5" }, "bin": { "ejs": "bin/cli.js" } }, "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA=="], + + "electron-to-chromium": ["electron-to-chromium@1.5.353", "", {}, "sha512-kOrWphBi8TOZyiJZqsgqIle0lw+tzmnQK83pV9dZUd01Nm2POECSyFQMAuarzZdYqQW7FH9RaYOuaRo3h+bQ3w=="], + + "email-addresses": ["email-addresses@3.1.0", "", {}, "sha512-k0/r7GrWVL32kZlGwfPNgB2Y/mMXVTq/decgLczm/j34whdaspNrZO8CnXPf1laaHxI6ptUlsnAxN+UAPw+fzg=="], + + "encodeurl": ["encodeurl@2.0.0", "", {}, "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg=="], + + "entities": ["entities@7.0.1", "", {}, "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA=="], + + "escalade": ["escalade@3.2.0", "", {}, "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA=="], + + "escape-html": ["escape-html@1.0.3", "", {}, "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow=="], + + "escape-string-regexp": ["escape-string-regexp@1.0.5", "", {}, "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg=="], + + "etag": ["etag@1.8.1", "", {}, "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg=="], + + "event-stream": ["event-stream@3.3.4", "", { "dependencies": { "duplexer": "~0.1.1", "from": "~0", "map-stream": "~0.1.0", "pause-stream": "0.0.11", "split": "0.3", "stream-combiner": "~0.0.4", "through": "~2.3.1" } }, "sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g=="], + + "expand-brackets": ["expand-brackets@2.1.4", "", { "dependencies": { "debug": "^2.3.3", "define-property": "^0.2.5", "extend-shallow": "^2.0.1", "posix-character-classes": "^0.1.0", "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" } }, "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA=="], + + "extend": ["extend@3.0.2", "", {}, "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="], + + "extend-shallow": ["extend-shallow@3.0.2", "", { "dependencies": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" } }, "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q=="], + + "extglob": ["extglob@2.0.4", "", { "dependencies": { "array-unique": "^0.3.2", "define-property": "^1.0.0", "expand-brackets": "^2.1.4", "extend-shallow": "^2.0.1", "fragment-cache": "^0.2.1", "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" } }, "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw=="], + + "faye-websocket": ["faye-websocket@0.11.4", "", { "dependencies": { "websocket-driver": ">=0.5.1" } }, "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g=="], + + "fdir": ["fdir@6.5.0", "", { "peerDependencies": { "picomatch": "^3 || ^4" }, "optionalPeers": ["picomatch"] }, "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg=="], + + "file-uri-to-path": ["file-uri-to-path@1.0.0", "", {}, "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw=="], + + "filelist": ["filelist@1.0.6", "", { "dependencies": { "minimatch": "^5.0.1" } }, "sha512-5giy2PkLYY1cP39p17Ech+2xlpTRL9HLspOfEgm0L6CwBXBTgsK5ou0JtzYuepxkaQ/tvhCFIJ5uXo0OrM2DxA=="], + + "filename-reserved-regex": ["filename-reserved-regex@1.0.0", "", {}, "sha512-UZArj7+U+2reBBVCvVmRlyq9D7EYQdUtuNN+1iz7pF1jGcJ2L0TjiRCxsTZfj2xFbM4c25uGCUDpKTHA7L2TKg=="], + + "filenamify": ["filenamify@1.2.1", "", { "dependencies": { "filename-reserved-regex": "^1.0.0", "strip-outer": "^1.0.0", "trim-repeated": "^1.0.0" } }, "sha512-DKVP0WQcB7WaIMSwDETqImRej2fepPqvXQjaVib7LRZn9Rxn5UbvK2tYTqGf1A1DkIprQQkG4XSQXSOZp7Q3GQ=="], + + "filenamify-url": ["filenamify-url@1.0.0", "", { "dependencies": { "filenamify": "^1.0.0", "humanize-url": "^1.0.0" } }, "sha512-O9K9JcZeF5VdZWM1qR92NSv1WY2EofwudQayPx5dbnnFl9k0IcZha4eV/FGkjnBK+1irOQInij0yiooCHu/0Fg=="], + + "fill-range": ["fill-range@7.1.1", "", { "dependencies": { "to-regex-range": "^5.0.1" } }, "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg=="], + + "finalhandler": ["finalhandler@1.1.2", "", { "dependencies": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "on-finished": "~2.3.0", "parseurl": "~1.3.3", "statuses": "~1.5.0", "unpipe": "~1.0.0" } }, "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA=="], + + "for-in": ["for-in@1.0.2", "", {}, "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ=="], + + "fragment-cache": ["fragment-cache@0.2.1", "", { "dependencies": { "map-cache": "^0.2.2" } }, "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA=="], + + "fresh": ["fresh@2.0.0", "", {}, "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A=="], + + "from": ["from@0.1.7", "", {}, "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g=="], + + "fs-extra": ["fs-extra@8.1.0", "", { "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", "universalify": "^0.1.0" } }, "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g=="], + + "fs.realpath": ["fs.realpath@1.0.0", "", {}, "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="], + + "fsevents": ["fsevents@2.3.2", "", { "os": "darwin" }, "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA=="], + + "function-bind": ["function-bind@1.1.2", "", {}, "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA=="], + + "gensync": ["gensync@1.0.0-beta.2", "", {}, "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg=="], + + "get-value": ["get-value@2.0.6", "", {}, "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA=="], + + "gh-pages": ["gh-pages@2.2.0", "", { "dependencies": { "async": "^2.6.1", "commander": "^2.18.0", "email-addresses": "^3.0.1", "filenamify-url": "^1.0.0", "fs-extra": "^8.1.0", "globby": "^6.1.0" }, "bin": { "gh-pages": "bin/gh-pages.js", "gh-pages-clean": "bin/gh-pages-clean.js" } }, "sha512-c+yPkNOPMFGNisYg9r4qvsMIjVYikJv7ImFOhPIVPt0+AcRUamZ7zkGRLHz7FKB0xrlZ+ddSOJsZv9XAFVXLmA=="], + + "github-slugger": ["github-slugger@2.0.0", "", {}, "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw=="], + + "glob": ["glob@7.2.3", "", { "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } }, "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q=="], + + "glob-parent": ["glob-parent@5.1.2", "", { "dependencies": { "is-glob": "^4.0.1" } }, "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow=="], + + "globby": ["globby@6.1.0", "", { "dependencies": { "array-union": "^1.0.1", "glob": "^7.0.3", "object-assign": "^4.0.1", "pify": "^2.0.0", "pinkie-promise": "^2.0.0" } }, "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw=="], + + "graceful-fs": ["graceful-fs@4.2.11", "", {}, "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="], + + "happy-dom": ["happy-dom@20.9.0", "", { "dependencies": { "@types/node": ">=20.0.0", "@types/whatwg-mimetype": "^3.0.2", "@types/ws": "^8.18.1", "entities": "^7.0.1", "whatwg-mimetype": "^3.0.0", "ws": "^8.18.3" } }, "sha512-GZZ9mKe8r646NUAf/zemnGbjYh4Bt8/MqASJY+pSm5ZDtc3YQox+4gsLI7yi1hba6o+eCsGxpHn5+iEVn31/FQ=="], + + "has-ansi": ["has-ansi@2.0.0", "", { "dependencies": { "ansi-regex": "^2.0.0" } }, "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg=="], + + "has-flag": ["has-flag@3.0.0", "", {}, "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw=="], + + "has-value": ["has-value@1.0.0", "", { "dependencies": { "get-value": "^2.0.6", "has-values": "^1.0.0", "isobject": "^3.0.0" } }, "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw=="], + + "has-values": ["has-values@1.0.0", "", { "dependencies": { "is-number": "^3.0.0", "kind-of": "^4.0.0" } }, "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ=="], + + "hasown": ["hasown@2.0.3", "", { "dependencies": { "function-bind": "^1.1.2" } }, "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg=="], + + "highlight.js": ["highlight.js@10.7.3", "", {}, "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A=="], + + "html-tags": ["html-tags@5.1.0", "", {}, "sha512-n6l5uca7/y5joxZ3LUePhzmBFUJ+U2YWzhMa8XUTecSeSlQiZdF5XAd/Q3/WUl0VsXgUwWi8I7CNIwdI5WN1SQ=="], + + "htmlparser2": ["htmlparser2@3.10.1", "", { "dependencies": { "domelementtype": "^1.3.1", "domhandler": "^2.3.0", "domutils": "^1.5.1", "entities": "^1.1.1", "inherits": "^2.0.1", "readable-stream": "^3.1.1" } }, "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ=="], + + "http-auth": ["http-auth@3.1.3", "", { "dependencies": { "apache-crypt": "^1.1.2", "apache-md5": "^1.0.6", "bcryptjs": "^2.3.0", "uuid": "^3.0.0" } }, "sha512-Jbx0+ejo2IOx+cRUYAGS1z6RGc6JfYUNkysZM4u4Sfk1uLlGv814F7/PIjQQAuThLdAWxb74JMGd5J8zex1VQg=="], + + "http-errors": ["http-errors@2.0.1", "", { "dependencies": { "depd": "~2.0.0", "inherits": "~2.0.4", "setprototypeof": "~1.2.0", "statuses": "~2.0.2", "toidentifier": "~1.0.1" } }, "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ=="], + + "http-parser-js": ["http-parser-js@0.5.10", "", {}, "sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA=="], + + "humanize-url": ["humanize-url@1.0.1", "", { "dependencies": { "normalize-url": "^1.0.0", "strip-url-auth": "^1.0.0" } }, "sha512-RtgTzXCPVb/te+e82NDhAc5paj+DuKSratIGAr+v+HZK24eAQ8LMoBGYoL7N/O+9iEc33AKHg45dOMKw3DNldQ=="], + + "hypeup": ["hypeup@workspace:../../sig/hypeup/packages/cli"], + + "inflight": ["inflight@1.0.6", "", { "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA=="], + + "inherits": ["inherits@2.0.4", "", {}, "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="], + + "is-accessor-descriptor": ["is-accessor-descriptor@1.0.2", "", { "dependencies": { "hasown": "^2.0.3" } }, "sha512-AIbwAcazqP3R65dGvqk1V+a+vE5Fg1yu/ZKMOiBWSUIXXiwQkYmXQcVa2O0nh0tSDKDFKxG2mY7dB1Sr4hEP1g=="], + + "is-binary-path": ["is-binary-path@2.1.0", "", { "dependencies": { "binary-extensions": "^2.0.0" } }, "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw=="], + + "is-buffer": ["is-buffer@1.1.6", "", {}, "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="], + + "is-data-descriptor": ["is-data-descriptor@1.0.1", "", { "dependencies": { "hasown": "^2.0.0" } }, "sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw=="], + + "is-descriptor": ["is-descriptor@1.0.4", "", { "dependencies": { "is-accessor-descriptor": "^1.0.2", "is-data-descriptor": "^1.0.1" } }, "sha512-bv5z95W0dDtLfKwDfkTNxaRxmISBD3eQBKJeVxv2AQ7MjuUnDNG7cIQqvFtMOUYhsILWHhMayWdoGqNqYYYjww=="], + + "is-extendable": ["is-extendable@1.0.1", "", { "dependencies": { "is-plain-object": "^2.0.4" } }, "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA=="], + + "is-extglob": ["is-extglob@2.1.1", "", {}, "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="], + + "is-glob": ["is-glob@4.0.3", "", { "dependencies": { "is-extglob": "^2.1.1" } }, "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg=="], + + "is-number": ["is-number@7.0.0", "", {}, "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="], + + "is-plain-obj": ["is-plain-obj@1.1.0", "", {}, "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg=="], + + "is-plain-object": ["is-plain-object@2.0.4", "", { "dependencies": { "isobject": "^3.0.1" } }, "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og=="], + + "is-windows": ["is-windows@1.0.2", "", {}, "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA=="], + + "is-wsl": ["is-wsl@1.1.0", "", {}, "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw=="], + + "isarray": ["isarray@1.0.0", "", {}, "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ=="], + + "isobject": ["isobject@3.0.1", "", {}, "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg=="], + + "jake": ["jake@10.9.4", "", { "dependencies": { "async": "^3.2.6", "filelist": "^1.0.4", "picocolors": "^1.1.1" }, "bin": { "jake": "bin/cli.js" } }, "sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA=="], + + "js-base64": ["js-base64@2.6.4", "", {}, "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ=="], + + "js-tokens": ["js-tokens@4.0.0", "", {}, "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="], + + "jsesc": ["jsesc@3.1.0", "", { "bin": { "jsesc": "bin/jsesc" } }, "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA=="], + + "json5": ["json5@2.2.3", "", { "bin": { "json5": "lib/cli.js" } }, "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg=="], + + "jsonfile": ["jsonfile@4.0.0", "", { "optionalDependencies": { "graceful-fs": "^4.1.6" } }, "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg=="], + + "kind-of": ["kind-of@6.0.3", "", {}, "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw=="], + + "lightningcss": ["lightningcss@1.32.0", "", { "dependencies": { "detect-libc": "^2.0.3" }, "optionalDependencies": { "lightningcss-android-arm64": "1.32.0", "lightningcss-darwin-arm64": "1.32.0", "lightningcss-darwin-x64": "1.32.0", "lightningcss-freebsd-x64": "1.32.0", "lightningcss-linux-arm-gnueabihf": "1.32.0", "lightningcss-linux-arm64-gnu": "1.32.0", "lightningcss-linux-arm64-musl": "1.32.0", "lightningcss-linux-x64-gnu": "1.32.0", "lightningcss-linux-x64-musl": "1.32.0", "lightningcss-win32-arm64-msvc": "1.32.0", "lightningcss-win32-x64-msvc": "1.32.0" } }, "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ=="], + + "lightningcss-android-arm64": ["lightningcss-android-arm64@1.32.0", "", { "os": "android", "cpu": "arm64" }, "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg=="], + + "lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.32.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ=="], + + "lightningcss-darwin-x64": ["lightningcss-darwin-x64@1.32.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w=="], + + "lightningcss-freebsd-x64": ["lightningcss-freebsd-x64@1.32.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig=="], + + "lightningcss-linux-arm-gnueabihf": ["lightningcss-linux-arm-gnueabihf@1.32.0", "", { "os": "linux", "cpu": "arm" }, "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw=="], + + "lightningcss-linux-arm64-gnu": ["lightningcss-linux-arm64-gnu@1.32.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ=="], + + "lightningcss-linux-arm64-musl": ["lightningcss-linux-arm64-musl@1.32.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg=="], + + "lightningcss-linux-x64-gnu": ["lightningcss-linux-x64-gnu@1.32.0", "", { "os": "linux", "cpu": "x64" }, "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA=="], + + "lightningcss-linux-x64-musl": ["lightningcss-linux-x64-musl@1.32.0", "", { "os": "linux", "cpu": "x64" }, "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg=="], + + "lightningcss-win32-arm64-msvc": ["lightningcss-win32-arm64-msvc@1.32.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw=="], + + "lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.32.0", "", { "os": "win32", "cpu": "x64" }, "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q=="], + + "lilconfig": ["lilconfig@2.1.0", "", {}, "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ=="], + + "live-server": ["live-server@1.2.2", "", { "dependencies": { "chokidar": "^2.0.4", "colors": "1.4.0", "connect": "^3.6.6", "cors": "latest", "event-stream": "3.3.4", "faye-websocket": "0.11.x", "http-auth": "3.1.x", "morgan": "^1.9.1", "object-assign": "latest", "opn": "latest", "proxy-middleware": "latest", "send": "latest", "serve-index": "^1.9.1" }, "bin": { "live-server": "live-server.js" } }, "sha512-t28HXLjITRGoMSrCOv4eZ88viHaBVIjKjdI5PO92Vxlu+twbk6aE0t7dVIaz6ZWkjPilYFV6OSdMYl9ybN2B4w=="], + + "lodash": ["lodash@4.18.1", "", {}, "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q=="], + + "lodash.memoize": ["lodash.memoize@4.1.2", "", {}, "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag=="], + + "lodash.uniq": ["lodash.uniq@4.5.0", "", {}, "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ=="], + + "lru-cache": ["lru-cache@5.1.1", "", { "dependencies": { "yallist": "^3.0.2" } }, "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w=="], + + "map-cache": ["map-cache@0.2.2", "", {}, "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg=="], + + "map-stream": ["map-stream@0.1.0", "", {}, "sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g=="], + + "map-visit": ["map-visit@1.0.0", "", { "dependencies": { "object-visit": "^1.0.0" } }, "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w=="], + + "marked": ["marked@18.0.3", "", { "bin": { "marked": "bin/marked.js" } }, "sha512-7VT90JOkDeaRWpfjOReRGPEKn0ecdARBkDGL+tT1wZY0efPPqkUxLUSmzy/C7TIylQYJC9STISEsCHrqb/7VIA=="], + + "marked-gfm-heading-id": ["marked-gfm-heading-id@4.1.4", "", { "dependencies": { "github-slugger": "^2.0.0" }, "peerDependencies": { "marked": ">=13 <19" } }, "sha512-CspnvVfHSkb/znqdPS4jUR8HtCjq3M/DnrsJCrfLBLvdrgbemmoINKpeWKQYkBiXAoBGejw0cV7xzqrPdup3WA=="], + + "mdn-data": ["mdn-data@2.27.1", "", {}, "sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ=="], + + "micromatch": ["micromatch@3.1.10", "", { "dependencies": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", "braces": "^2.3.1", "define-property": "^2.0.2", "extend-shallow": "^3.0.2", "extglob": "^2.0.4", "fragment-cache": "^0.2.1", "kind-of": "^6.0.2", "nanomatch": "^1.2.9", "object.pick": "^1.3.0", "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.2" } }, "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg=="], + + "mime": ["mime@1.6.0", "", { "bin": { "mime": "cli.js" } }, "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg=="], + + "mime-db": ["mime-db@1.54.0", "", {}, "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ=="], + + "mime-types": ["mime-types@3.0.2", "", { "dependencies": { "mime-db": "^1.54.0" } }, "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A=="], + + "minimatch": ["minimatch@3.1.5", "", { "dependencies": { "brace-expansion": "^1.1.7" } }, "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w=="], + + "minimist": ["minimist@1.2.8", "", {}, "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="], + + "mixin-deep": ["mixin-deep@1.3.2", "", { "dependencies": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" } }, "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA=="], + + "mkdirp": ["mkdirp@1.0.4", "", { "bin": { "mkdirp": "bin/cmd.js" } }, "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="], + + "morgan": ["morgan@1.10.1", "", { "dependencies": { "basic-auth": "~2.0.1", "debug": "2.6.9", "depd": "~2.0.0", "on-finished": "~2.3.0", "on-headers": "~1.1.0" } }, "sha512-223dMRJtI/l25dJKWpgij2cMtywuG/WiUKXdvwfbhGKBhy1puASqXwFzmWZ7+K73vUPoR7SS2Qz2cI/g9MKw0A=="], + + "ms": ["ms@2.1.3", "", {}, "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="], + + "nan": ["nan@2.26.2", "", {}, "sha512-0tTvBTYkt3tdGw22nrAy50x7gpbGCCFH3AFcyS5WiUu7Eu4vWlri1woE6qHBSfy11vksDqkiwjOnlR7WV8G1Hw=="], + + "nanoid": ["nanoid@3.3.12", "", { "bin": { "nanoid": "bin/nanoid.cjs" } }, "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ=="], + + "nanomatch": ["nanomatch@1.2.13", "", { "dependencies": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", "define-property": "^2.0.2", "extend-shallow": "^3.0.2", "fragment-cache": "^0.2.1", "is-windows": "^1.0.2", "kind-of": "^6.0.2", "object.pick": "^1.3.0", "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" } }, "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA=="], + + "negotiator": ["negotiator@0.6.3", "", {}, "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg=="], + + "node-releases": ["node-releases@2.0.38", "", {}, "sha512-3qT/88Y3FbH/Kx4szpQQ4HzUbVrHPKTLVpVocKiLfoYvw9XSGOX2FmD2d6DrXbVYyAQTF2HeF6My8jmzx7/CRw=="], + + "normalize-path": ["normalize-path@3.0.0", "", {}, "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="], + + "normalize-url": ["normalize-url@6.1.0", "", {}, "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A=="], + + "nth-check": ["nth-check@1.0.2", "", { "dependencies": { "boolbase": "~1.0.0" } }, "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg=="], + + "object-assign": ["object-assign@4.1.1", "", {}, "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="], + + "object-copy": ["object-copy@0.1.0", "", { "dependencies": { "copy-descriptor": "^0.1.0", "define-property": "^0.2.5", "kind-of": "^3.0.3" } }, "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ=="], + + "object-visit": ["object-visit@1.0.1", "", { "dependencies": { "isobject": "^3.0.0" } }, "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA=="], + + "object.pick": ["object.pick@1.3.0", "", { "dependencies": { "isobject": "^3.0.1" } }, "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ=="], + + "on-finished": ["on-finished@2.3.0", "", { "dependencies": { "ee-first": "1.1.1" } }, "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww=="], + + "on-headers": ["on-headers@1.1.0", "", {}, "sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A=="], + + "once": ["once@1.4.0", "", { "dependencies": { "wrappy": "1" } }, "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w=="], + + "opn": ["opn@6.0.0", "", { "dependencies": { "is-wsl": "^1.1.0" } }, "sha512-I9PKfIZC+e4RXZ/qr1RhgyCnGgYX0UEIlXgWnCOVACIvFgaC9rz6Won7xbdhoHrd8IIhV7YEpHjreNUNkqCGkQ=="], + + "oxfmt": ["oxfmt@0.47.0", "", { "dependencies": { "tinypool": "2.1.0" }, "optionalDependencies": { "@oxfmt/binding-android-arm-eabi": "0.47.0", "@oxfmt/binding-android-arm64": "0.47.0", "@oxfmt/binding-darwin-arm64": "0.47.0", "@oxfmt/binding-darwin-x64": "0.47.0", "@oxfmt/binding-freebsd-x64": "0.47.0", "@oxfmt/binding-linux-arm-gnueabihf": "0.47.0", "@oxfmt/binding-linux-arm-musleabihf": "0.47.0", "@oxfmt/binding-linux-arm64-gnu": "0.47.0", "@oxfmt/binding-linux-arm64-musl": "0.47.0", "@oxfmt/binding-linux-ppc64-gnu": "0.47.0", "@oxfmt/binding-linux-riscv64-gnu": "0.47.0", "@oxfmt/binding-linux-riscv64-musl": "0.47.0", "@oxfmt/binding-linux-s390x-gnu": "0.47.0", "@oxfmt/binding-linux-x64-gnu": "0.47.0", "@oxfmt/binding-linux-x64-musl": "0.47.0", "@oxfmt/binding-openharmony-arm64": "0.47.0", "@oxfmt/binding-win32-arm64-msvc": "0.47.0", "@oxfmt/binding-win32-ia32-msvc": "0.47.0", "@oxfmt/binding-win32-x64-msvc": "0.47.0" }, "bin": { "oxfmt": "bin/oxfmt" } }, "sha512-OFbkbzxKCpooQEnRmpTDnuwTX8KHXzZTQ4Df/hz85fpS67Pl+lxPEFvUtin56HIIS0B1k4X8oIzTXRZPufA2CA=="], + + "oxlint": ["oxlint@1.64.0", "", { "optionalDependencies": { "@oxlint/binding-android-arm-eabi": "1.64.0", "@oxlint/binding-android-arm64": "1.64.0", "@oxlint/binding-darwin-arm64": "1.64.0", "@oxlint/binding-darwin-x64": "1.64.0", "@oxlint/binding-freebsd-x64": "1.64.0", "@oxlint/binding-linux-arm-gnueabihf": "1.64.0", "@oxlint/binding-linux-arm-musleabihf": "1.64.0", "@oxlint/binding-linux-arm64-gnu": "1.64.0", "@oxlint/binding-linux-arm64-musl": "1.64.0", "@oxlint/binding-linux-ppc64-gnu": "1.64.0", "@oxlint/binding-linux-riscv64-gnu": "1.64.0", "@oxlint/binding-linux-riscv64-musl": "1.64.0", "@oxlint/binding-linux-s390x-gnu": "1.64.0", "@oxlint/binding-linux-x64-gnu": "1.64.0", "@oxlint/binding-linux-x64-musl": "1.64.0", "@oxlint/binding-openharmony-arm64": "1.64.0", "@oxlint/binding-win32-arm64-msvc": "1.64.0", "@oxlint/binding-win32-ia32-msvc": "1.64.0", "@oxlint/binding-win32-x64-msvc": "1.64.0" }, "peerDependencies": { "oxlint-tsgolint": ">=0.22.1" }, "optionalPeers": ["oxlint-tsgolint"], "bin": { "oxlint": "bin/oxlint" } }, "sha512-Star3SNpWPeWFPw7kRXIhXUSn6fdiAl25q15CQzH/9WaOtG6e9CWTc25vNZOCr4PE1yEP1GtKJKIKglhj3OmEQ=="], + + "parseurl": ["parseurl@1.3.3", "", {}, "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ=="], + + "pascalcase": ["pascalcase@0.1.1", "", {}, "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw=="], + + "path-dirname": ["path-dirname@1.0.2", "", {}, "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q=="], + + "path-is-absolute": ["path-is-absolute@1.0.1", "", {}, "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg=="], + + "pause-stream": ["pause-stream@0.0.11", "", { "dependencies": { "through": "~2.3" } }, "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A=="], + + "picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="], + + "picomatch": ["picomatch@4.0.4", "", {}, "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A=="], + + "pify": ["pify@3.0.0", "", {}, "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg=="], + + "pinkie": ["pinkie@2.0.4", "", {}, "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg=="], + + "pinkie-promise": ["pinkie-promise@2.0.1", "", { "dependencies": { "pinkie": "^2.0.0" } }, "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw=="], + + "playwright": ["playwright@1.60.0", "", { "dependencies": { "playwright-core": "1.60.0" }, "optionalDependencies": { "fsevents": "2.3.2" }, "bin": { "playwright": "cli.js" } }, "sha512-hheHdokM8cdqCb0lcE3s+zT4t4W+vvjpGxsZlDnikarzx8tSzMebh3UiFtgqwFwnTnjYQcsyMF8ei2mCO/tpeA=="], + + "playwright-core": ["playwright-core@1.60.0", "", { "bin": { "playwright-core": "cli.js" } }, "sha512-9bW6zvX/m0lEbgTKJ6YppOKx8H3VOPBMOCFh2irXFOT4BbHgrx5hPjwJYLT40Lu+4qtD36qKc/Hn56StUW57IA=="], + + "posix-character-classes": ["posix-character-classes@0.1.1", "", {}, "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg=="], + + "postcss": ["postcss@8.5.14", "", { "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" } }, "sha512-SoSL4+OSEtR99LHFZQiJLkT59C5B1amGO1NzTwj7TT1qCUgUO6hxOvzkOYxD+vMrXBM3XJIKzokoERdqQq/Zmg=="], + + "postcss-calc": ["postcss-calc@7.0.5", "", { "dependencies": { "postcss": "^7.0.27", "postcss-selector-parser": "^6.0.2", "postcss-value-parser": "^4.0.2" } }, "sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg=="], + + "postcss-colormin": ["postcss-colormin@5.3.1", "", { "dependencies": { "browserslist": "^4.21.4", "caniuse-api": "^3.0.0", "colord": "^2.9.1", "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ=="], + + "postcss-convert-values": ["postcss-convert-values@5.1.3", "", { "dependencies": { "browserslist": "^4.21.4", "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA=="], + + "postcss-copy": ["postcss-copy@7.1.0", "", { "dependencies": { "micromatch": "^3.0.3", "mkdirp": "^0.5.1", "pify": "^3.0.0", "postcss": "^6.0.3", "postcss-value-parser": "^3.3.0" } }, "sha512-O3oGdW1pzEo2hvnKCFk1j4SYlfoeYELVFxJBP5ib/iAPqujJTumDRcxOtMucmpZNWfn5zqh8Hr4kiZUHtoEtUg=="], + + "postcss-css-variables": ["postcss-css-variables@0.14.0", "", { "dependencies": { "balanced-match": "^1.0.0", "escape-string-regexp": "^1.0.3", "extend": "^3.0.1", "postcss": "^6.0.8" } }, "sha512-fEdksFdcvn/vvTddy4KoPDojZt9hQZx3oXHAIgoYJHsnk97ZTP08unM2UAqksiqdytv93415kBwP+c3/jcopyg=="], + + "postcss-discard-comments": ["postcss-discard-comments@5.1.2", "", { "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ=="], + + "postcss-discard-duplicates": ["postcss-discard-duplicates@5.1.0", "", { "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw=="], + + "postcss-discard-empty": ["postcss-discard-empty@5.1.1", "", { "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A=="], + + "postcss-discard-overridden": ["postcss-discard-overridden@5.1.0", "", { "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw=="], + + "postcss-inline": ["postcss-inline@1.2.0", "", { "dependencies": { "mime": "^1.3.4", "postcss": "^5.0.14" } }, "sha512-5MnTtywB/yxIagzerfwWRpa6TR7Z88KcATSm4wVLuutlTV1Fdd9MWx35iucrVCHQCsyvDzTveO5ddVrAajMMqg=="], + + "postcss-inline-svg": ["postcss-inline-svg@4.1.0", "", { "dependencies": { "css-select": "^2.0.2", "dom-serializer": "^0.1.1", "htmlparser2": "^3.10.1", "postcss": "^7.0.17", "postcss-value-parser": "^4.0.0" } }, "sha512-0pYBJyoQ9/sJViYRc1cNOOTM7DYh0/rmASB0TBeRmWkG8YFK2tmgdkfjHkbRma1iFtBFKFHZFsHwRTDZTMKzSQ=="], + + "postcss-merge-longhand": ["postcss-merge-longhand@5.1.7", "", { "dependencies": { "postcss-value-parser": "^4.2.0", "stylehacks": "^5.1.1" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ=="], + + "postcss-merge-rules": ["postcss-merge-rules@5.1.4", "", { "dependencies": { "browserslist": "^4.21.4", "caniuse-api": "^3.0.0", "cssnano-utils": "^3.1.0", "postcss-selector-parser": "^6.0.5" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g=="], + + "postcss-minify-font-values": ["postcss-minify-font-values@5.1.0", "", { "dependencies": { "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA=="], + + "postcss-minify-gradients": ["postcss-minify-gradients@5.1.1", "", { "dependencies": { "colord": "^2.9.1", "cssnano-utils": "^3.1.0", "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw=="], + + "postcss-minify-params": ["postcss-minify-params@5.1.4", "", { "dependencies": { "browserslist": "^4.21.4", "cssnano-utils": "^3.1.0", "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw=="], + + "postcss-minify-selectors": ["postcss-minify-selectors@5.2.1", "", { "dependencies": { "postcss-selector-parser": "^6.0.5" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg=="], + + "postcss-normalize-charset": ["postcss-normalize-charset@5.1.0", "", { "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg=="], + + "postcss-normalize-display-values": ["postcss-normalize-display-values@5.1.0", "", { "dependencies": { "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA=="], + + "postcss-normalize-positions": ["postcss-normalize-positions@5.1.1", "", { "dependencies": { "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg=="], + + "postcss-normalize-repeat-style": ["postcss-normalize-repeat-style@5.1.1", "", { "dependencies": { "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g=="], + + "postcss-normalize-string": ["postcss-normalize-string@5.1.0", "", { "dependencies": { "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w=="], + + "postcss-normalize-timing-functions": ["postcss-normalize-timing-functions@5.1.0", "", { "dependencies": { "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg=="], + + "postcss-normalize-unicode": ["postcss-normalize-unicode@5.1.1", "", { "dependencies": { "browserslist": "^4.21.4", "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA=="], + + "postcss-normalize-url": ["postcss-normalize-url@5.1.0", "", { "dependencies": { "normalize-url": "^6.0.1", "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew=="], + + "postcss-normalize-whitespace": ["postcss-normalize-whitespace@5.1.1", "", { "dependencies": { "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA=="], + + "postcss-ordered-values": ["postcss-ordered-values@5.1.3", "", { "dependencies": { "cssnano-utils": "^3.1.0", "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ=="], + + "postcss-reduce-initial": ["postcss-reduce-initial@5.1.2", "", { "dependencies": { "browserslist": "^4.21.4", "caniuse-api": "^3.0.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg=="], + + "postcss-reduce-transforms": ["postcss-reduce-transforms@5.1.0", "", { "dependencies": { "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ=="], + + "postcss-selector-parser": ["postcss-selector-parser@6.1.2", "", { "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" } }, "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg=="], + + "postcss-svgo": ["postcss-svgo@5.1.0", "", { "dependencies": { "postcss-value-parser": "^4.2.0", "svgo": "^2.7.0" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA=="], + + "postcss-unique-selectors": ["postcss-unique-selectors@5.1.1", "", { "dependencies": { "postcss-selector-parser": "^6.0.5" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA=="], + + "postcss-value-parser": ["postcss-value-parser@4.2.0", "", {}, "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ=="], + + "prepend-http": ["prepend-http@1.0.4", "", {}, "sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg=="], + + "process-nextick-args": ["process-nextick-args@2.0.1", "", {}, "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="], + + "proxy-middleware": ["proxy-middleware@0.15.0", "", {}, "sha512-EGCG8SeoIRVMhsqHQUdDigB2i7qU7fCsWASwn54+nPutYO8n4q6EiwMzyfWlC+dzRFExP+kvcnDFdBDHoZBU7Q=="], + + "query-string": ["query-string@4.3.4", "", { "dependencies": { "object-assign": "^4.1.0", "strict-uri-encode": "^1.0.0" } }, "sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q=="], + + "range-parser": ["range-parser@1.2.1", "", {}, "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg=="], + + "readable-stream": ["readable-stream@3.6.2", "", { "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", "util-deprecate": "^1.0.1" } }, "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA=="], + + "readdirp": ["readdirp@3.6.0", "", { "dependencies": { "picomatch": "^2.2.1" } }, "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA=="], + + "regex-not": ["regex-not@1.0.2", "", { "dependencies": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" } }, "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A=="], + + "remove-trailing-separator": ["remove-trailing-separator@1.1.0", "", {}, "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw=="], + + "repeat-element": ["repeat-element@1.1.4", "", {}, "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ=="], + + "repeat-string": ["repeat-string@1.6.1", "", {}, "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w=="], + + "resolve-url": ["resolve-url@0.2.1", "", {}, "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg=="], + + "ret": ["ret@0.1.15", "", {}, "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg=="], + + "rolldown": ["rolldown@1.0.0", "", { "dependencies": { "@oxc-project/types": "=0.129.0", "@rolldown/pluginutils": "1.0.0" }, "optionalDependencies": { "@rolldown/binding-android-arm64": "1.0.0", "@rolldown/binding-darwin-arm64": "1.0.0", "@rolldown/binding-darwin-x64": "1.0.0", "@rolldown/binding-freebsd-x64": "1.0.0", "@rolldown/binding-linux-arm-gnueabihf": "1.0.0", "@rolldown/binding-linux-arm64-gnu": "1.0.0", "@rolldown/binding-linux-arm64-musl": "1.0.0", "@rolldown/binding-linux-ppc64-gnu": "1.0.0", "@rolldown/binding-linux-s390x-gnu": "1.0.0", "@rolldown/binding-linux-x64-gnu": "1.0.0", "@rolldown/binding-linux-x64-musl": "1.0.0", "@rolldown/binding-openharmony-arm64": "1.0.0", "@rolldown/binding-wasm32-wasi": "1.0.0", "@rolldown/binding-win32-arm64-msvc": "1.0.0", "@rolldown/binding-win32-x64-msvc": "1.0.0" }, "bin": { "rolldown": "bin/cli.mjs" } }, "sha512-yD986aXDESFGS95spT1LAv0jssywP4npMEjmMHyN2/5+eE8qQJUype2AaKkRiLgBgyD0LFlubwAht7VmY8rGoA=="], + + "safe-buffer": ["safe-buffer@5.1.2", "", {}, "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="], + + "safe-regex": ["safe-regex@1.1.0", "", { "dependencies": { "ret": "~0.1.10" } }, "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg=="], + + "sax": ["sax@1.6.0", "", {}, "sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA=="], + + "semver": ["semver@6.3.1", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="], + + "send": ["send@1.2.1", "", { "dependencies": { "debug": "^4.4.3", "encodeurl": "^2.0.0", "escape-html": "^1.0.3", "etag": "^1.8.1", "fresh": "^2.0.0", "http-errors": "^2.0.1", "mime-types": "^3.0.2", "ms": "^2.1.3", "on-finished": "^2.4.1", "range-parser": "^1.2.1", "statuses": "^2.0.2" } }, "sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ=="], + + "serve-index": ["serve-index@1.9.2", "", { "dependencies": { "accepts": "~1.3.8", "batch": "0.6.1", "debug": "2.6.9", "escape-html": "~1.0.3", "http-errors": "~1.8.0", "mime-types": "~2.1.35", "parseurl": "~1.3.3" } }, "sha512-KDj11HScOaLmrPxl70KYNW1PksP4Nb/CLL2yvC+Qd2kHMPEEpfc4Re2e4FOay+bC/+XQl/7zAcWON3JVo5v3KQ=="], + + "set-value": ["set-value@2.0.1", "", { "dependencies": { "extend-shallow": "^2.0.1", "is-extendable": "^0.1.1", "is-plain-object": "^2.0.3", "split-string": "^3.0.1" } }, "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw=="], + + "setprototypeof": ["setprototypeof@1.2.0", "", {}, "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw=="], + + "snapdragon": ["snapdragon@0.8.2", "", { "dependencies": { "base": "^0.11.1", "debug": "^2.2.0", "define-property": "^0.2.5", "extend-shallow": "^2.0.1", "map-cache": "^0.2.2", "source-map": "^0.5.6", "source-map-resolve": "^0.5.0", "use": "^3.1.0" } }, "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg=="], + + "snapdragon-node": ["snapdragon-node@2.1.1", "", { "dependencies": { "define-property": "^1.0.0", "isobject": "^3.0.0", "snapdragon-util": "^3.0.1" } }, "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw=="], + + "snapdragon-util": ["snapdragon-util@3.0.1", "", { "dependencies": { "kind-of": "^3.2.0" } }, "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ=="], + + "sort-keys": ["sort-keys@1.1.2", "", { "dependencies": { "is-plain-obj": "^1.0.0" } }, "sha512-vzn8aSqKgytVik0iwdBEi+zevbTYZogewTUM6dtpmGwEcdzbub/TX4bCzRhebDCRC3QzXgJsLRKB2V/Oof7HXg=="], + + "source-map": ["source-map@0.6.1", "", {}, "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="], + + "source-map-js": ["source-map-js@1.2.1", "", {}, "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="], + + "source-map-resolve": ["source-map-resolve@0.5.3", "", { "dependencies": { "atob": "^2.1.2", "decode-uri-component": "^0.2.0", "resolve-url": "^0.2.1", "source-map-url": "^0.4.0", "urix": "^0.1.0" } }, "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw=="], + + "source-map-url": ["source-map-url@0.4.1", "", {}, "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw=="], + + "split": ["split@0.3.3", "", { "dependencies": { "through": "2" } }, "sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA=="], + + "split-string": ["split-string@3.1.0", "", { "dependencies": { "extend-shallow": "^3.0.0" } }, "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw=="], + + "stable": ["stable@0.1.8", "", {}, "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w=="], + + "static-extend": ["static-extend@0.1.2", "", { "dependencies": { "define-property": "^0.2.5", "object-copy": "^0.1.0" } }, "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g=="], + + "statuses": ["statuses@2.0.2", "", {}, "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw=="], + + "stream-combiner": ["stream-combiner@0.0.4", "", { "dependencies": { "duplexer": "~0.1.1" } }, "sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw=="], + + "strict-uri-encode": ["strict-uri-encode@1.1.0", "", {}, "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ=="], + + "string_decoder": ["string_decoder@1.1.1", "", { "dependencies": { "safe-buffer": "~5.1.0" } }, "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg=="], + + "strip-ansi": ["strip-ansi@3.0.1", "", { "dependencies": { "ansi-regex": "^2.0.0" } }, "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg=="], + + "strip-outer": ["strip-outer@1.0.1", "", { "dependencies": { "escape-string-regexp": "^1.0.2" } }, "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg=="], + + "strip-url-auth": ["strip-url-auth@1.0.1", "", {}, "sha512-++41PnXftlL3pvI6lpvhSEO+89g1kIJC4MYB5E6yH+WHa5InIqz51yGd1YOGd7VNSNdoEOfzTMqbAM/2PbgaHQ=="], + + "stylehacks": ["stylehacks@5.1.1", "", { "dependencies": { "browserslist": "^4.21.4", "postcss-selector-parser": "^6.0.4" }, "peerDependencies": { "postcss": "^8.2.15" } }, "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw=="], + + "supports-color": ["supports-color@5.5.0", "", { "dependencies": { "has-flag": "^3.0.0" } }, "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow=="], + + "svgo": ["svgo@2.8.2", "", { "dependencies": { "commander": "^7.2.0", "css-select": "^4.1.3", "css-tree": "^1.1.3", "csso": "^4.2.0", "picocolors": "^1.0.0", "sax": "^1.5.0", "stable": "^0.1.8" }, "bin": "./bin/svgo" }, "sha512-TyzE4NVGLUFy+H/Uy4N6c3G0HEeprsVfge6Lmq+0FdQQ/zqoVYB62IsBZORsiL+o96s6ff/V6/3UQo/C0cgCAA=="], + + "through": ["through@2.3.8", "", {}, "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg=="], + + "tinyglobby": ["tinyglobby@0.2.16", "", { "dependencies": { "fdir": "^6.5.0", "picomatch": "^4.0.4" } }, "sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg=="], + + "tinypool": ["tinypool@2.1.0", "", {}, "sha512-Pugqs6M0m7Lv1I7FtxN4aoyToKg1C4tu+/381vH35y8oENM/Ai7f7C4StcoK4/+BSw9ebcS8jRiVrORFKCALLw=="], + + "to-object-path": ["to-object-path@0.3.0", "", { "dependencies": { "kind-of": "^3.0.2" } }, "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg=="], + + "to-regex": ["to-regex@3.0.2", "", { "dependencies": { "define-property": "^2.0.2", "extend-shallow": "^3.0.2", "regex-not": "^1.0.2", "safe-regex": "^1.1.0" } }, "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw=="], + + "to-regex-range": ["to-regex-range@5.0.1", "", { "dependencies": { "is-number": "^7.0.0" } }, "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ=="], + + "toidentifier": ["toidentifier@1.0.1", "", {}, "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA=="], + + "trim-repeated": ["trim-repeated@1.0.0", "", { "dependencies": { "escape-string-regexp": "^1.0.2" } }, "sha512-pkonvlKk8/ZuR0D5tLW8ljt5I8kmxp2XKymhepUeOdCEfKpZaktSArkLHZt76OB1ZvO9bssUsDty4SWhLvZpLg=="], + + "tslib": ["tslib@2.8.1", "", {}, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], + + "undici-types": ["undici-types@7.21.0", "", {}, "sha512-w9IMgQrz4O0YN1LtB7K5P63vhlIOvC7opSmouCJ+ZywlPAlO9gIkJ+otk6LvGpAs2wg4econaCz3TvQ9xPoyuQ=="], + + "union-value": ["union-value@1.0.1", "", { "dependencies": { "arr-union": "^3.1.0", "get-value": "^2.0.6", "is-extendable": "^0.1.1", "set-value": "^2.0.1" } }, "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg=="], + + "universalify": ["universalify@0.1.2", "", {}, "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg=="], + + "unix-crypt-td-js": ["unix-crypt-td-js@1.1.4", "", {}, "sha512-8rMeVYWSIyccIJscb9NdCfZKSRBKYTeVnwmiRYT2ulE3qd1RaDQ0xQDP+rI3ccIWbhu/zuo5cgN8z73belNZgw=="], + + "unpipe": ["unpipe@1.0.0", "", {}, "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ=="], + + "unplugin": ["unplugin@3.0.0", "", { "dependencies": { "@jridgewell/remapping": "^2.3.5", "picomatch": "^4.0.3", "webpack-virtual-modules": "^0.6.2" } }, "sha512-0Mqk3AT2TZCXWKdcoaufeXNukv2mTrEZExeXlHIOZXdqYoHHr4n51pymnwV8x2BOVxwXbK2HLlI7usrqMpycdg=="], + + "unset-value": ["unset-value@1.0.0", "", { "dependencies": { "has-value": "^0.3.1", "isobject": "^3.0.0" } }, "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ=="], + + "upath": ["upath@1.2.0", "", {}, "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg=="], + + "update-browserslist-db": ["update-browserslist-db@1.2.3", "", { "dependencies": { "escalade": "^3.2.0", "picocolors": "^1.1.1" }, "peerDependencies": { "browserslist": ">= 4.21.0" }, "bin": { "update-browserslist-db": "cli.js" } }, "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w=="], + + "urix": ["urix@0.1.0", "", {}, "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg=="], + + "use": ["use@3.1.1", "", {}, "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ=="], + + "util-deprecate": ["util-deprecate@1.0.2", "", {}, "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="], + + "utils-merge": ["utils-merge@1.0.1", "", {}, "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA=="], + + "uuid": ["uuid@3.4.0", "", { "bin": { "uuid": "./bin/uuid" } }, "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A=="], + + "vary": ["vary@1.1.2", "", {}, "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg=="], + + "vite": ["vite@8.0.12", "", { "dependencies": { "lightningcss": "^1.32.0", "picomatch": "^4.0.4", "postcss": "^8.5.14", "rolldown": "1.0.0", "tinyglobby": "^0.2.16" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "@vitejs/devtools": "^0.1.18", "esbuild": "^0.27.0 || ^0.28.0", "jiti": ">=1.21.0", "less": "^4.0.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "@vitejs/devtools", "esbuild", "jiti", "less", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-w2dDofOWv2QB09ZITZBsvKTVAlYvPR4IAmrY/v0ir9KvLs0xybR7i48wxhM1/oyBWO34wPns+bPGw5ZrZqDpZg=="], + + "webpack-virtual-modules": ["webpack-virtual-modules@0.6.2", "", {}, "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ=="], + + "websocket-driver": ["websocket-driver@0.7.4", "", { "dependencies": { "http-parser-js": ">=0.5.1", "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" } }, "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg=="], + + "websocket-extensions": ["websocket-extensions@0.1.4", "", {}, "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg=="], + + "whatwg-mimetype": ["whatwg-mimetype@3.0.0", "", {}, "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q=="], + + "wrappy": ["wrappy@1.0.2", "", {}, "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="], + + "ws": ["ws@8.20.0", "", { "peerDependencies": { "bufferutil": "^4.0.1", "utf-8-validate": ">=5.0.2" }, "optionalPeers": ["bufferutil", "utf-8-validate"] }, "sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA=="], + + "yallist": ["yallist@3.1.1", "", {}, "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="], + + "yaml": ["yaml@1.10.3", "", {}, "sha512-vIYeF1u3CjlhAFekPPAk2h/Kv4T3mAkMox5OymRiJQB0spDP10LHvt+K7G9Ny6NuuMAb25/6n1qyUjAcGNf/AA=="], + + "@babel/generator/@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.31", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw=="], + + "@danielx/civet/unplugin": ["unplugin@2.3.11", "", { "dependencies": { "@jridgewell/remapping": "^2.3.5", "acorn": "^8.15.0", "picomatch": "^4.0.3", "webpack-virtual-modules": "^0.6.2" } }, "sha512-5uKD0nqiYVzlmCRs01Fhs2BdkEgBS3SAVP6ndrBsuK42iC2+JHyxM05Rm9G8+5mkmRtzMZGY8Ct5+mliZxU/Ww=="], + + "@jridgewell/gen-mapping/@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.31", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw=="], + + "@jridgewell/remapping/@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.31", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw=="], + + "accepts/mime-types": ["mime-types@2.1.35", "", { "dependencies": { "mime-db": "1.52.0" } }, "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw=="], + + "anymatch/picomatch": ["picomatch@2.3.2", "", {}, "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA=="], + + "base/define-property": ["define-property@1.0.0", "", { "dependencies": { "is-descriptor": "^1.0.0" } }, "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA=="], + + "chokidar/fsevents": ["fsevents@2.3.3", "", { "os": "darwin" }, "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw=="], + + "class-utils/define-property": ["define-property@0.2.5", "", { "dependencies": { "is-descriptor": "^0.1.0" } }, "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA=="], + + "connect/debug": ["debug@2.6.9", "", { "dependencies": { "ms": "2.0.0" } }, "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA=="], + + "cssnano-preset-default/postcss-calc": ["postcss-calc@8.2.4", "", { "dependencies": { "postcss-selector-parser": "^6.0.9", "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.2.2" } }, "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q=="], + + "csso/css-tree": ["css-tree@1.1.3", "", { "dependencies": { "mdn-data": "2.0.14", "source-map": "^0.6.1" } }, "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q=="], + + "dom-serializer/entities": ["entities@1.1.2", "", {}, "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="], + + "expand-brackets/debug": ["debug@2.6.9", "", { "dependencies": { "ms": "2.0.0" } }, "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA=="], + + "expand-brackets/define-property": ["define-property@0.2.5", "", { "dependencies": { "is-descriptor": "^0.1.0" } }, "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA=="], + + "expand-brackets/extend-shallow": ["extend-shallow@2.0.1", "", { "dependencies": { "is-extendable": "^0.1.0" } }, "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug=="], + + "extglob/define-property": ["define-property@1.0.0", "", { "dependencies": { "is-descriptor": "^1.0.0" } }, "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA=="], + + "extglob/extend-shallow": ["extend-shallow@2.0.1", "", { "dependencies": { "is-extendable": "^0.1.0" } }, "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug=="], + + "filelist/minimatch": ["minimatch@5.1.9", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw=="], + + "finalhandler/debug": ["debug@2.6.9", "", { "dependencies": { "ms": "2.0.0" } }, "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA=="], + + "finalhandler/encodeurl": ["encodeurl@1.0.2", "", {}, "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w=="], + + "finalhandler/statuses": ["statuses@1.5.0", "", {}, "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA=="], + + "globby/pify": ["pify@2.3.0", "", {}, "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog=="], + + "has-values/is-number": ["is-number@3.0.0", "", { "dependencies": { "kind-of": "^3.0.2" } }, "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg=="], + + "has-values/kind-of": ["kind-of@4.0.0", "", { "dependencies": { "is-buffer": "^1.1.5" } }, "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw=="], + + "htmlparser2/entities": ["entities@1.1.2", "", {}, "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="], + + "humanize-url/normalize-url": ["normalize-url@1.9.1", "", { "dependencies": { "object-assign": "^4.0.1", "prepend-http": "^1.0.0", "query-string": "^4.1.0", "sort-keys": "^1.0.0" } }, "sha512-A48My/mtCklowHBlI8Fq2jFWK4tX4lJ5E6ytFsSOq1fzpvT0SQSgKhSg7lN5c2uYFOrUAOQp6zhhJnpp1eMloQ=="], + + "jake/async": ["async@3.2.6", "", {}, "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA=="], + + "live-server/chokidar": ["chokidar@2.1.8", "", { "dependencies": { "anymatch": "^2.0.0", "async-each": "^1.0.1", "braces": "^2.3.2", "glob-parent": "^3.1.0", "inherits": "^2.0.3", "is-binary-path": "^1.0.0", "is-glob": "^4.0.0", "normalize-path": "^3.0.0", "path-is-absolute": "^1.0.0", "readdirp": "^2.2.1", "upath": "^1.1.1" }, "optionalDependencies": { "fsevents": "^1.2.7" } }, "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg=="], + + "micromatch/braces": ["braces@2.3.2", "", { "dependencies": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", "extend-shallow": "^2.0.1", "fill-range": "^4.0.0", "isobject": "^3.0.1", "repeat-element": "^1.1.2", "snapdragon": "^0.8.1", "snapdragon-node": "^2.0.1", "split-string": "^3.0.2", "to-regex": "^3.0.1" } }, "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w=="], + + "morgan/debug": ["debug@2.6.9", "", { "dependencies": { "ms": "2.0.0" } }, "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA=="], + + "object-copy/define-property": ["define-property@0.2.5", "", { "dependencies": { "is-descriptor": "^0.1.0" } }, "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA=="], + + "object-copy/kind-of": ["kind-of@3.2.2", "", { "dependencies": { "is-buffer": "^1.1.5" } }, "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ=="], + + "postcss-calc/postcss": ["postcss@7.0.39", "", { "dependencies": { "picocolors": "^0.2.1", "source-map": "^0.6.1" } }, "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA=="], + + "postcss-copy/mkdirp": ["mkdirp@0.5.6", "", { "dependencies": { "minimist": "^1.2.6" }, "bin": { "mkdirp": "bin/cmd.js" } }, "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw=="], + + "postcss-copy/postcss": ["postcss@6.0.23", "", { "dependencies": { "chalk": "^2.4.1", "source-map": "^0.6.1", "supports-color": "^5.4.0" } }, "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag=="], + + "postcss-copy/postcss-value-parser": ["postcss-value-parser@3.3.1", "", {}, "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ=="], + + "postcss-css-variables/postcss": ["postcss@6.0.23", "", { "dependencies": { "chalk": "^2.4.1", "source-map": "^0.6.1", "supports-color": "^5.4.0" } }, "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag=="], + + "postcss-inline/postcss": ["postcss@5.2.18", "", { "dependencies": { "chalk": "^1.1.3", "js-base64": "^2.1.9", "source-map": "^0.5.6", "supports-color": "^3.2.3" } }, "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg=="], + + "postcss-inline-svg/postcss": ["postcss@7.0.39", "", { "dependencies": { "picocolors": "^0.2.1", "source-map": "^0.6.1" } }, "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA=="], + + "readdirp/picomatch": ["picomatch@2.3.2", "", {}, "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA=="], + + "send/on-finished": ["on-finished@2.4.1", "", { "dependencies": { "ee-first": "1.1.1" } }, "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg=="], + + "serve-index/debug": ["debug@2.6.9", "", { "dependencies": { "ms": "2.0.0" } }, "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA=="], + + "serve-index/http-errors": ["http-errors@1.8.1", "", { "dependencies": { "depd": "~1.1.2", "inherits": "2.0.4", "setprototypeof": "1.2.0", "statuses": ">= 1.5.0 < 2", "toidentifier": "1.0.1" } }, "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g=="], + + "serve-index/mime-types": ["mime-types@2.1.35", "", { "dependencies": { "mime-db": "1.52.0" } }, "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw=="], + + "set-value/extend-shallow": ["extend-shallow@2.0.1", "", { "dependencies": { "is-extendable": "^0.1.0" } }, "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug=="], + + "set-value/is-extendable": ["is-extendable@0.1.1", "", {}, "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw=="], + + "snapdragon/debug": ["debug@2.6.9", "", { "dependencies": { "ms": "2.0.0" } }, "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA=="], + + "snapdragon/define-property": ["define-property@0.2.5", "", { "dependencies": { "is-descriptor": "^0.1.0" } }, "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA=="], + + "snapdragon/extend-shallow": ["extend-shallow@2.0.1", "", { "dependencies": { "is-extendable": "^0.1.0" } }, "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug=="], + + "snapdragon/source-map": ["source-map@0.5.7", "", {}, "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ=="], + + "snapdragon-node/define-property": ["define-property@1.0.0", "", { "dependencies": { "is-descriptor": "^1.0.0" } }, "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA=="], + + "snapdragon-util/kind-of": ["kind-of@3.2.2", "", { "dependencies": { "is-buffer": "^1.1.5" } }, "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ=="], + + "static-extend/define-property": ["define-property@0.2.5", "", { "dependencies": { "is-descriptor": "^0.1.0" } }, "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA=="], + + "svgo/commander": ["commander@7.2.0", "", {}, "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw=="], + + "svgo/css-select": ["css-select@4.3.0", "", { "dependencies": { "boolbase": "^1.0.0", "css-what": "^6.0.1", "domhandler": "^4.3.1", "domutils": "^2.8.0", "nth-check": "^2.0.1" } }, "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ=="], + + "svgo/css-tree": ["css-tree@1.1.3", "", { "dependencies": { "mdn-data": "2.0.14", "source-map": "^0.6.1" } }, "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q=="], + + "to-object-path/kind-of": ["kind-of@3.2.2", "", { "dependencies": { "is-buffer": "^1.1.5" } }, "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ=="], + + "union-value/is-extendable": ["is-extendable@0.1.1", "", {}, "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw=="], + + "unset-value/has-value": ["has-value@0.3.1", "", { "dependencies": { "get-value": "^2.0.3", "has-values": "^0.1.4", "isobject": "^2.0.0" } }, "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q=="], + + "vite/fsevents": ["fsevents@2.3.3", "", { "os": "darwin" }, "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw=="], + + "accepts/mime-types/mime-db": ["mime-db@1.52.0", "", {}, "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="], + + "class-utils/define-property/is-descriptor": ["is-descriptor@0.1.8", "", { "dependencies": { "is-accessor-descriptor": "^1.0.1", "is-data-descriptor": "^1.0.1" } }, "sha512-SceYGWXvdqlWa/OnQ5FQuV+NxvNmMRhMw/w9AHkH71hTzveND4BTYgvp16g+oITK47qbOl/3D0bl0iygehWAWQ=="], + + "connect/debug/ms": ["ms@2.0.0", "", {}, "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="], + + "csso/css-tree/mdn-data": ["mdn-data@2.0.14", "", {}, "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow=="], + + "expand-brackets/debug/ms": ["ms@2.0.0", "", {}, "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="], + + "expand-brackets/define-property/is-descriptor": ["is-descriptor@0.1.8", "", { "dependencies": { "is-accessor-descriptor": "^1.0.1", "is-data-descriptor": "^1.0.1" } }, "sha512-SceYGWXvdqlWa/OnQ5FQuV+NxvNmMRhMw/w9AHkH71hTzveND4BTYgvp16g+oITK47qbOl/3D0bl0iygehWAWQ=="], + + "expand-brackets/extend-shallow/is-extendable": ["is-extendable@0.1.1", "", {}, "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw=="], + + "extglob/extend-shallow/is-extendable": ["is-extendable@0.1.1", "", {}, "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw=="], + + "filelist/minimatch/brace-expansion": ["brace-expansion@2.1.0", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w=="], + + "finalhandler/debug/ms": ["ms@2.0.0", "", {}, "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="], + + "has-values/is-number/kind-of": ["kind-of@3.2.2", "", { "dependencies": { "is-buffer": "^1.1.5" } }, "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ=="], + + "live-server/chokidar/anymatch": ["anymatch@2.0.0", "", { "dependencies": { "micromatch": "^3.1.4", "normalize-path": "^2.1.1" } }, "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw=="], + + "live-server/chokidar/braces": ["braces@2.3.2", "", { "dependencies": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", "extend-shallow": "^2.0.1", "fill-range": "^4.0.0", "isobject": "^3.0.1", "repeat-element": "^1.1.2", "snapdragon": "^0.8.1", "snapdragon-node": "^2.0.1", "split-string": "^3.0.2", "to-regex": "^3.0.1" } }, "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w=="], + + "live-server/chokidar/fsevents": ["fsevents@1.2.13", "", { "dependencies": { "bindings": "^1.5.0", "nan": "^2.12.1" }, "os": "darwin" }, "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw=="], + + "live-server/chokidar/glob-parent": ["glob-parent@3.1.0", "", { "dependencies": { "is-glob": "^3.1.0", "path-dirname": "^1.0.0" } }, "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA=="], + + "live-server/chokidar/is-binary-path": ["is-binary-path@1.0.1", "", { "dependencies": { "binary-extensions": "^1.0.0" } }, "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q=="], + + "live-server/chokidar/readdirp": ["readdirp@2.2.1", "", { "dependencies": { "graceful-fs": "^4.1.11", "micromatch": "^3.1.10", "readable-stream": "^2.0.2" } }, "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ=="], + + "micromatch/braces/extend-shallow": ["extend-shallow@2.0.1", "", { "dependencies": { "is-extendable": "^0.1.0" } }, "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug=="], + + "micromatch/braces/fill-range": ["fill-range@4.0.0", "", { "dependencies": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", "repeat-string": "^1.6.1", "to-regex-range": "^2.1.0" } }, "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ=="], + + "morgan/debug/ms": ["ms@2.0.0", "", {}, "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="], + + "object-copy/define-property/is-descriptor": ["is-descriptor@0.1.8", "", { "dependencies": { "is-accessor-descriptor": "^1.0.1", "is-data-descriptor": "^1.0.1" } }, "sha512-SceYGWXvdqlWa/OnQ5FQuV+NxvNmMRhMw/w9AHkH71hTzveND4BTYgvp16g+oITK47qbOl/3D0bl0iygehWAWQ=="], + + "postcss-calc/postcss/picocolors": ["picocolors@0.2.1", "", {}, "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA=="], + + "postcss-inline-svg/postcss/picocolors": ["picocolors@0.2.1", "", {}, "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA=="], + + "postcss-inline/postcss/chalk": ["chalk@1.1.3", "", { "dependencies": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", "has-ansi": "^2.0.0", "strip-ansi": "^3.0.0", "supports-color": "^2.0.0" } }, "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A=="], + + "postcss-inline/postcss/source-map": ["source-map@0.5.7", "", {}, "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ=="], + + "postcss-inline/postcss/supports-color": ["supports-color@3.2.3", "", { "dependencies": { "has-flag": "^1.0.0" } }, "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A=="], + + "serve-index/debug/ms": ["ms@2.0.0", "", {}, "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="], + + "serve-index/http-errors/depd": ["depd@1.1.2", "", {}, "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ=="], + + "serve-index/http-errors/statuses": ["statuses@1.5.0", "", {}, "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA=="], + + "serve-index/mime-types/mime-db": ["mime-db@1.52.0", "", {}, "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="], + + "snapdragon/debug/ms": ["ms@2.0.0", "", {}, "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="], + + "snapdragon/define-property/is-descriptor": ["is-descriptor@0.1.8", "", { "dependencies": { "is-accessor-descriptor": "^1.0.1", "is-data-descriptor": "^1.0.1" } }, "sha512-SceYGWXvdqlWa/OnQ5FQuV+NxvNmMRhMw/w9AHkH71hTzveND4BTYgvp16g+oITK47qbOl/3D0bl0iygehWAWQ=="], + + "snapdragon/extend-shallow/is-extendable": ["is-extendable@0.1.1", "", {}, "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw=="], + + "static-extend/define-property/is-descriptor": ["is-descriptor@0.1.8", "", { "dependencies": { "is-accessor-descriptor": "^1.0.1", "is-data-descriptor": "^1.0.1" } }, "sha512-SceYGWXvdqlWa/OnQ5FQuV+NxvNmMRhMw/w9AHkH71hTzveND4BTYgvp16g+oITK47qbOl/3D0bl0iygehWAWQ=="], + + "svgo/css-select/css-what": ["css-what@6.2.2", "", {}, "sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA=="], + + "svgo/css-select/domhandler": ["domhandler@4.3.1", "", { "dependencies": { "domelementtype": "^2.2.0" } }, "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ=="], + + "svgo/css-select/domutils": ["domutils@2.8.0", "", { "dependencies": { "dom-serializer": "^1.0.1", "domelementtype": "^2.2.0", "domhandler": "^4.2.0" } }, "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A=="], + + "svgo/css-select/nth-check": ["nth-check@2.1.1", "", { "dependencies": { "boolbase": "^1.0.0" } }, "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w=="], + + "svgo/css-tree/mdn-data": ["mdn-data@2.0.14", "", {}, "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow=="], + + "unset-value/has-value/has-values": ["has-values@0.1.4", "", {}, "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ=="], + + "unset-value/has-value/isobject": ["isobject@2.1.0", "", { "dependencies": { "isarray": "1.0.0" } }, "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA=="], + + "live-server/chokidar/anymatch/normalize-path": ["normalize-path@2.1.1", "", { "dependencies": { "remove-trailing-separator": "^1.0.1" } }, "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w=="], + + "live-server/chokidar/braces/extend-shallow": ["extend-shallow@2.0.1", "", { "dependencies": { "is-extendable": "^0.1.0" } }, "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug=="], + + "live-server/chokidar/braces/fill-range": ["fill-range@4.0.0", "", { "dependencies": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", "repeat-string": "^1.6.1", "to-regex-range": "^2.1.0" } }, "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ=="], + + "live-server/chokidar/glob-parent/is-glob": ["is-glob@3.1.0", "", { "dependencies": { "is-extglob": "^2.1.0" } }, "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw=="], + + "live-server/chokidar/is-binary-path/binary-extensions": ["binary-extensions@1.13.1", "", {}, "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw=="], + + "live-server/chokidar/readdirp/readable-stream": ["readable-stream@2.3.8", "", { "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", "isarray": "~1.0.0", "process-nextick-args": "~2.0.0", "safe-buffer": "~5.1.1", "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } }, "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA=="], + + "micromatch/braces/extend-shallow/is-extendable": ["is-extendable@0.1.1", "", {}, "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw=="], + + "micromatch/braces/fill-range/is-number": ["is-number@3.0.0", "", { "dependencies": { "kind-of": "^3.0.2" } }, "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg=="], + + "micromatch/braces/fill-range/to-regex-range": ["to-regex-range@2.1.1", "", { "dependencies": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" } }, "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg=="], + + "postcss-inline/postcss/chalk/ansi-styles": ["ansi-styles@2.2.1", "", {}, "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA=="], + + "postcss-inline/postcss/chalk/supports-color": ["supports-color@2.0.0", "", {}, "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g=="], + + "postcss-inline/postcss/supports-color/has-flag": ["has-flag@1.0.0", "", {}, "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA=="], + + "svgo/css-select/domhandler/domelementtype": ["domelementtype@2.3.0", "", {}, "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw=="], + + "svgo/css-select/domutils/dom-serializer": ["dom-serializer@1.4.1", "", { "dependencies": { "domelementtype": "^2.0.1", "domhandler": "^4.2.0", "entities": "^2.0.0" } }, "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag=="], + + "svgo/css-select/domutils/domelementtype": ["domelementtype@2.3.0", "", {}, "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw=="], + + "live-server/chokidar/braces/extend-shallow/is-extendable": ["is-extendable@0.1.1", "", {}, "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw=="], + + "live-server/chokidar/braces/fill-range/is-number": ["is-number@3.0.0", "", { "dependencies": { "kind-of": "^3.0.2" } }, "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg=="], + + "live-server/chokidar/braces/fill-range/to-regex-range": ["to-regex-range@2.1.1", "", { "dependencies": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" } }, "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg=="], + + "micromatch/braces/fill-range/is-number/kind-of": ["kind-of@3.2.2", "", { "dependencies": { "is-buffer": "^1.1.5" } }, "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ=="], + + "svgo/css-select/domutils/dom-serializer/entities": ["entities@2.2.0", "", {}, "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A=="], + + "live-server/chokidar/braces/fill-range/is-number/kind-of": ["kind-of@3.2.2", "", { "dependencies": { "is-buffer": "^1.1.5" } }, "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ=="], + } +} diff --git a/bunfig.toml b/bunfig.toml new file mode 100644 index 0000000..e77c92c --- /dev/null +++ b/bunfig.toml @@ -0,0 +1,2 @@ +[test] +pathIgnorePatterns = ["dist/**"] diff --git a/compose.yml b/compose.yml new file mode 100644 index 0000000..5b38bc3 --- /dev/null +++ b/compose.yml @@ -0,0 +1,6 @@ +name: da.nfin.ch +services: + printer: + image: gotenberg/gotenberg:8 + ports: + - "3000:3000" diff --git a/cv.pdf b/cv.pdf new file mode 100644 index 0000000000000000000000000000000000000000..8a65280526eff3f3aa74bfd558c7f0b5a4017e0c GIT binary patch literal 100883 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

Ol+pV?+E1o0&m983T0(XsJ!=BXi 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 bM}RmwnL9W!;y(Z(8Y6M6U$3gE#__)ZCe8sm literal 0 HcmV?d00001 diff --git a/da.nfin.ch.code-workspace b/da.nfin.ch.code-workspace new file mode 100644 index 0000000..e90ad94 --- /dev/null +++ b/da.nfin.ch.code-workspace @@ -0,0 +1,26 @@ +{ + "folders": [ + { + "name": "da.nfin.ch", + "path": ".", + }, + ], + "settings": { + "oxc.path.oxfmt": "node_modules/.bin/oxfmt", + "oxc.path.oxlint": "node_modules/.bin/oxlint", + "files.exclude": { + "**/.git": true, + "**/node_modules": true, + "**/.temp": true, + "**/dist": true, + "**/*.tsbuildinfo": true, + }, + "explorer.fileNesting.enabled": true, + "explorer.fileNesting.patterns": { + "tsconfig.json": "tsconfig.*.json", + "package.json": "bun.lock, bunfig.toml, *.bun.plugin.ts, ox*.config.ts, .gitignore, .mirrorignore, regime.*.json, regime.internal.json, commitlint.config.*, release.config.*js, hypeup.config.*", + "vite.config.ts": "*.vite.plugin.ts", + "README.md": "LICENSE, LICENSE.md", + }, + }, +} diff --git a/errilaz.org/favicon.ico b/errilaz.org/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..63322808fefb57cadb997bb93bd19638be87fb1f GIT binary patch literal 1150 zcmbVLJxc>Y6rAJI8xTYbQKE&QAlmzdV2UVM2vHjm6%>mYLBY-{SXfxt2zH8CS)^4^ z?8HX!2lxXNVkM}>^UdaV**otn+%Va_w=?f%_q_uG{pIt}|8A`3fHnYq3Jqzb8P_Rw zhzNWrsi3GS9u$oTTr*bix&Ar~Lw&R1eCsS3;9iZ~6m302la{OQ=U~pHb`YCV!kJ9t zLWZ%OmZL@wI(Xig=LOu#p5BU&B|IuQ@bge(@5;q{Q8u~_yhsn`qyytJj~m&=r~0Tm zo@%+a_w3>mI5K+95y#A3D8-(mJzFEU$Me$nGM;1+_c2W3*zqF0t*?uhaBlQfG^B!8 z2j(o}+VMO+J-GM?4vgM^S0{=lHiJvY^ZdtZ*N#!Wt1sEYn@r(E#&9SrcsBZetS0rQ zCpA~Benp(h4nB;AzL{?pS4pj@U(^FJ5A+rwlmV>C5Gs;GYf{T+(?8Tlz5nn2^>WZh p>@4)+fqTEcAL=c1-}a>K4c0jG`+aW#?m}QcXhOMv4$Gs4+8-G;Y$pH! literal 0 HcmV?d00001 diff --git a/errilaz.org/favicon.png b/errilaz.org/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..4b9df189dee8975d5a0eb5ad088a8d54f4248791 GIT binary patch literal 7789 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 + + + + errilaz + + + + + + +

+

errilaz

+
+ software thaumaturgy
+
+ +
+ © Dan Finch +
+
+ + \ No newline at end of file diff --git a/hypeup.config.ts b/hypeup.config.ts new file mode 100644 index 0000000..44e8357 --- /dev/null +++ b/hypeup.config.ts @@ -0,0 +1,12 @@ +import { defineConfig } from "hypeup" + +export default defineConfig({ + clean: true, + dir: "src/routes", + vite: { + server: { + allowedHosts: [Bun.env.HOSTNAME!], + host: true, + }, + }, +}) diff --git a/oxfmt.config.ts b/oxfmt.config.ts new file mode 100644 index 0000000..569ec45 --- /dev/null +++ b/oxfmt.config.ts @@ -0,0 +1,24 @@ +import { defineConfig } from "oxfmt" + +export default defineConfig({ + useTabs: false, + tabWidth: 2, + printWidth: 80, + singleQuote: false, + jsxSingleQuote: false, + quoteProps: "as-needed", + trailingComma: "all", + semi: false, + arrowParens: "always", + bracketSameLine: false, + bracketSpacing: true, + ignorePatterns: ["**/*.gen.ts"], + overrides: [ + { + files: ["**/ui/**/*.ts"], + options: { + printWidth: 60, + }, + }, + ], +}) diff --git a/oxlint.config.ts b/oxlint.config.ts new file mode 100644 index 0000000..e75b9b1 --- /dev/null +++ b/oxlint.config.ts @@ -0,0 +1,93 @@ +import { defineConfig } from "oxlint" + +export default defineConfig({ + plugins: ["typescript", "unicorn", "oxc"], + ignorePatterns: ["**/*.gen.ts", "node_modules/**/*"], + categories: { + correctness: "error", + suspicious: "warn", + perf: "warn", + style: "warn", + restriction: "error", + }, + rules: { + "capitalized-comments": "off", + "default-case": "off", + "filename-case": "off", + "func-style": ["error", "declaration", { allowArrowFunctions: true }], + "id-length": "off", + "init-declarations": "off", + "max-params": "off", + "max-statements": "off", + "new-cap": "off", + "no-array-for-each": "off", + "no-async-await": "off", + "no-await-expression-member": "off", + "no-await-in-loop": "off", + "no-bitwise": "off", + "no-console": "off", + "no-continue": "off", + "no-dynamic-delete": "off", + "no-empty-file": "off", + "no-empty-function": "off", + "no-eq-null": "warn", + "no-implicit-coercion": "off", + "no-magic-numbers": "off", + "no-multi-assign": "off", + "no-nested-ternary": "off", + "unicorn/no-nested-ternary": "off", + "no-null": "off", + "no-optional-chaining": "off", + "no-plusplus": "off", + "no-rest-spread-properties": "off", + "no-shadow-restricted-names": "off", + "no-shadow": "off", + "no-ternary": "off", + "no-undefined": "off", + "no-underscore-dangle": "off", + "no-use-before-define": "off", + "unicorn/numeric-separators-style": "off", + "prefer-destructuring": "off", + "prefer-for-of": "off", + "prefer-template": "off", + "prefer-ternary": "off", + "require-module-specifiers": "off", + "sort-imports": "off", + "sort-keys": "off", + "switch-case-braces": "off", + "typescript/consistent-indexed-object-style": "off", + "typescript/consistent-type-definitions": ["error", "type"], + "typescript/explicit-function-return-type": "off", + "typescript/explicit-member-accessibility": "off", + "typescript/explicit-module-boundary-types": "off", + "typescript/no-empty-interface": "off", + "typescript/no-empty-object-type": "off", + "typescript/no-namespace": "off", + "typescript/no-non-null-assertion": "off", + "typescript/prefer-function-type": "off", + "unicorn/no-process-exit": "off", + "unicorn/prefer-string-raw": "off", + "unicorn/text-encoding-identifier-case": "off", + }, + overrides: [ + { + files: ["*.test.ts"], + rules: { + "typescript/no-explicit-any": "off", + "typescript/no-require-imports": "off", + "typescript/no-var-requires": "off", + "unicorn/prefer-module": "off", + "unicorn/consistent-function-scoping": "off", + "func-names": "off", + }, + }, + { + files: ["*.d.ts"], + rules: { + "typescript/no-explicit-any": "off", + "unicorn/consistent-function-scoping": "off", + "typescript/consistent-type-definitions": "off", + }, + }, + ], +}) diff --git a/package.json b/package.json new file mode 100644 index 0000000..c34725c --- /dev/null +++ b/package.json @@ -0,0 +1,51 @@ +{ + "name": "da.nfin.ch", + "private": true, + "type": "module", + "license": "MIT", + "author": { + "name": "Sigitex", + "url": "http://github.com/sigitex" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/sigitex/da.nfin.ch.git" + }, + "files": [ + "src" + ], + "scripts": { + "check": "tsgo --build", + "test": "bun test --pass-with-no-tests --tsconfig-override tsconfig.test.json", + "lint": "oxlint", + "start": "hypeup generate --watch", + "build": "bun run build:site && bun run build:cv", + "build:site": "hypeup generate", + "build:cv": "bun scripts/build-cv.ts", + "publish:site": "rsync -avz --delete dist/ da.nfin.ch:~/da.nfin.ch", + "publish:errilaz": "rsync -avz --delete errilaz.org/ da.nfin.ch:~/errilaz.org", + "publish": "bun run publish:site && bun run publish:errilaz" + }, + "dependencies": { + "98se.css": "/err/98se.css", + "@fontsource/roboto-condensed": "^5.2.8", + "@hypeup/client": "workspace:*", + "@hypeup/lexicon": "workspace:*", + "@hypeup/runtime": "workspace:*", + "hypeup": "workspace:*", + "marked": "^18.0.3", + "marked-gfm-heading-id": "^4.1.4" + }, + "devDependencies": { + "@types/bun": "^1.3.13", + "@typescript/native-preview": "beta", + "oxfmt": "^0.47.0", + "oxlint": "^1.62.0", + "playwright": "^1.54.1" + }, + "workspaces": { + "packages": [ + "/sig/hypeup/packages/*" + ] + } +} diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..cfbb535dc1a3d5d2585e6adc0c02ae76b76eab83 GIT binary patch literal 19518 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 literal 0 HcmV?d00001 diff --git a/public/icons/about.png b/public/icons/about.png new file mode 100644 index 0000000000000000000000000000000000000000..12a3340141f06eb77fc08f59c59ef8f02b86dbbc GIT binary patch literal 470 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vJfvmUKs7M+SzC{oH>NSwWJ?9znhg z3{`3j3=J&|48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6@fgAr#;f;tEpG&~V_uf&c&i zGcW)VgSx?dpot8OB|(0{3=Yq3q=7g|-tI2Uf;>K-fE@M`PhVH|M{H6IT6$9$Cr!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)pT}UnMXwSj}Ky5HFasE6@fgQ54`4;tEpG!0;agX8!-r zaOMmH3k%Et|7rh!f0#KFC~n-=)^^~)fwVN^v^0kQXJ-2P`p%qbd}by?d3pJnGiQ{P zlr%LpH*MNvY;1h@?p;eu%j?&#J2^T12O7)3aE8H{hleLLG&DXwJ}oV6!Ga|-XU<%G z?kfw>R>qPbzhDN3XE)M7oFs2|7p64sniL?1y~NYkmHiQ$gt)MH*@M@S3=B+*JY5_^ zJdRJD^0sP`fqU=nuROQ4H1|~aW$ApDnN3t_cc$#WHS3&jv*EtQ2pYl{ECvmU|9kl-7kYOhhW;Qu|s-e)v zed-?h%u(ff3HdDxOn!KYwAP*xXRK@!anR{#I=^+r+dsc});62TIrToA{;Ma3QM3PF zYVFI`+kB;W4H|;ibV&W)QTLLi$>pPcfvqARUbq|5*zs|q@eAm}_!kptr8B!O1KN$PVo%>2a@m}w@DGUqwPglL# zzv#Zt3a5r$^U}e;sc(wXD#x4Rlec@*v+zagK@At~5=%-&vDfoo38bK8b}{L3Z!3Ozi& zE;~EtJWq-fzm)o=Mh?R!$+n(?J=W!t7F*b@ZRZtr)N(lYFsn2znA!K4VakT<`ZHSP zR3AnZ*pTW^$eLvDUbW?Cg~4Jq}?kAWH(JYD@< J);T3K0RXJ`vp)a; literal 0 HcmV?d00001 diff --git a/public/icons/experience.png b/public/icons/experience.png new file mode 100644 index 0000000000000000000000000000000000000000..7355626f17ac45f89349bb3787db9da2d92049a5 GIT binary patch literal 636 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sEa{HEjtmSN`?>!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)pT}UnMXwSj}Ky5HFasE6@fgVI1HS;tHf^&P+RVW+sqv z;J|^jG~@E}^0v0NA3uJqT{)qlf#J-|w8xJh`}+DCg8;+-|NqPSy{-XOGnNGT1v5B2 zyO9RsBze2L2u$6?s{`b)mw5WRvOi)GW>nx;>6M)Wl(zJAaSZV|es}8aNi7OIF1-SR zF*E=FzwOKMee1LzR&zI<@|KSh%1*nzFX)2j)BCF#dXDAKW|+?M^Pos3$Bo_B4Wu3v zyl*%h#d_gZ#hmAvzB|1b{^S;C^`vi{-+5;VONsAi#ixz>O8W(!)(JnDtz*y_`lQ@U zIO7Ey^IVn#R^i_^n+v+Uo9y#}sba^0X7T+3W)o|+Yb&udxQNu>Dpqq}#56hnTD^kI zww5RVHCLr?lW$thu-<>&t=#LS`vli{@95ibX^OzNsZA;^d)gf|cm653(${9!cx|45YzVL>(iMn16o)^~Gt7&xVIevB1d{{TL zVE>)NbA?TUPjCi4Tj1C6G1jSP{-g&ctsjGhLh9Pzs53Z5p7_Tb?@{-wH*VJdE9 + + + \ No newline at end of file diff --git a/public/icons/linkedin.svg b/public/icons/linkedin.svg new file mode 100644 index 0000000..2208b27 --- /dev/null +++ b/public/icons/linkedin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/icons/projects.png b/public/icons/projects.png new file mode 100644 index 0000000000000000000000000000000000000000..347c443a403bfc65f01daa7ecadb49bf1a409fd2 GIT binary patch literal 523 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vJfvmUKs7M+SzC{oH>NSwWJ?9znhg z3{`3j3=J&|48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6@fgp%~y3;tG^+0OSAv|AUx7 z5(t1q1CZBn;J|@Z7a7WcB8*Ai?k>!NJU*X*9QG1VUsv`=Y!c!E$~Bcf`aq%Qo-U3d z8s~d2?aga85I9iyLRe+(kvRq_>!p;Ynm%2vEvA3r^U_y6BK8cv6-^!+qLMxYAA9il z@YzfMD}McCyWRKMygYkr;k;{M+Q(}vqra?bwS95)U-B!9j@mq}Pk%C85)LVBV68dZ zlwBb3QH874=D%M0LFIpPb1u!8tRe9_iseAyhZn|^=kEB^XDyMOTd^ywLuHZ1WQ`+x zoSU0hOkOq1MNM^H@?DKv20V(I51pKv_ literal 0 HcmV?d00001 diff --git a/public/icons/tech.png b/public/icons/tech.png new file mode 100644 index 0000000000000000000000000000000000000000..e30a9a43aa24d227cd949a308b23823c285436f8 GIT binary patch literal 678 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sEa{HEjtmSN`?>!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)pT}UnMXwSj}Ky5HFasE6@fgVISZV;tHhO+S;B!zjo%# znY6StAosw513!NJU@%TIHa^3UcE*@tCPUi)w3+{bCe55VGc+`G?aB!ZARfd2|NqT? zl{x_RFqQ=Q1v5B2y8$wQG0EHAMP$0j0w|T^vI^ zj<228y{=h7z$LcjE7R7gzyAM^lG9SywECp%rDd7t40Jdwc$PL?xxjJc##DxtQF6OK z)g(8pTz_CbuR-U&fPa%8zK;sNzrZ)gvn;>m;AJ%{pNAV$4rSLp;rX7m!TRj_FRrXHO=}~}4qj84pP=t5 zac}x7>0Rw^MjEAN6WSXleOj!=EaX*Vx~d>VuE?E<`gVC9DZ;ycg@@nf7h|g>srW7=eOE!!ufjFG|q+ZYrCecIg`9^ zUfbt69UkrE8<&xRrb$OzPz1RFG2%r4bOF(o! z&y~;28r%2^AHS?sKDe{iRpH~A-yJMB#Ps)b75sj7qi9v7<<6jOdG&u7>@R38*g4}x z4KUPIOI#yLQW8s2t&)pUffR$0fuV)2fr+l6Wr%^Hm9e>%i6xM0WneJxoR%JnhTQy= Z%(P0}8s1NyGzqAI!PC{xWt~$(69D+5310vJ literal 0 HcmV?d00001 diff --git a/public/pfp.jpg b/public/pfp.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8a1a07f7f865931bafbe69de148560bef120bf83 GIT binary patch literal 64233 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 literal 0 HcmV?d00001 diff --git a/regime.config.json b/regime.config.json new file mode 100644 index 0000000..a5fd2ca --- /dev/null +++ b/regime.config.json @@ -0,0 +1,10 @@ +{ + "templates": [ + "profile/workspace", + "profile/app/hypeup-static", + "!include/license" + ], + "vars": { + "repo": "da.nfin.ch" + } +} \ No newline at end of file diff --git a/scripts/build-cv.ts b/scripts/build-cv.ts new file mode 100644 index 0000000..353402a --- /dev/null +++ b/scripts/build-cv.ts @@ -0,0 +1,42 @@ +#!/usr/bin/env bun +import { mkdir } from "node:fs/promises" +import { dirname } from "node:path" +import { chromium } from "playwright" + +const url = "file:///finch/da.nfin.ch/dist/cv.html" +const output = "dist/cv.pdf" + +await mkdir(dirname(output), { recursive: true }) + +const executablePath = + process.env.CHROMIUM_PATH ?? + Bun.which("thorium-browser") ?? + Bun.which("chromium") ?? + Bun.which("chromium-browser") ?? + Bun.which("google-chrome") ?? + Bun.which("google-chrome-canary") ?? + undefined + +const browser = await chromium.launch({ + executablePath, + headless: true, + args: ["--no-sandbox", "--disable-gpu"], +}) + +try { + const page = await browser.newPage() + + await page.goto(url, { + waitUntil: "networkidle", + timeout: 30_000, + }) + + await page.pdf({ + path: output, + printBackground: true, + displayHeaderFooter: false, + preferCSSPageSize: true, + }) +} finally { + await browser.close() +} diff --git a/src/ambient.d.ts b/src/ambient.d.ts new file mode 100644 index 0000000..e5acad0 --- /dev/null +++ b/src/ambient.d.ts @@ -0,0 +1 @@ +import "@hypeup/lexicon" diff --git a/src/routes/cv.html.ts b/src/routes/cv.html.ts new file mode 100644 index 0000000..6584b06 --- /dev/null +++ b/src/routes/cv.html.ts @@ -0,0 +1 @@ +export { default } from "ui/CV" diff --git a/src/routes/experience.html.ts b/src/routes/experience.html.ts new file mode 100644 index 0000000..2c5ba92 --- /dev/null +++ b/src/routes/experience.html.ts @@ -0,0 +1 @@ +export { default } from "ui/Experience" diff --git a/src/routes/index.html.ts b/src/routes/index.html.ts new file mode 100644 index 0000000..f232a4b --- /dev/null +++ b/src/routes/index.html.ts @@ -0,0 +1 @@ +export { default } from "ui/Home" \ No newline at end of file diff --git a/src/routes/projects.html.ts b/src/routes/projects.html.ts new file mode 100644 index 0000000..bc4e28b --- /dev/null +++ b/src/routes/projects.html.ts @@ -0,0 +1 @@ +export { default } from "ui/Projects" diff --git a/src/routes/tech.html.ts b/src/routes/tech.html.ts new file mode 100644 index 0000000..eb6b820 --- /dev/null +++ b/src/routes/tech.html.ts @@ -0,0 +1 @@ +export { default } from "ui/Tech" diff --git a/src/types.d.ts b/src/types.d.ts new file mode 100644 index 0000000..3ef56ac --- /dev/null +++ b/src/types.d.ts @@ -0,0 +1,4 @@ +declare type Content = any + +declare module "*?raw" { const src: string; export default src } +declare module "*?url" { const src: string; export default src } diff --git a/src/ui/CV/CV.ts b/src/ui/CV/CV.ts new file mode 100644 index 0000000..29b8fe4 --- /dev/null +++ b/src/ui/CV/CV.ts @@ -0,0 +1,192 @@ +import Reset from "ui/Layout/Reset" +import Markdown from "ui/shared/Markdown" +import intro from "ui/Home/intro.md?raw" +import details from "ui/Home/details.md?raw" +import skills from "ui/Home/skills.md?raw" +import experience from "ui/Experience/experience.md?raw" +import * as Tech from "ui/Tech/Sections" +import roboto from "@fontsource/roboto-condensed?url" + +export default function CV() { + return [ + doctype.html5, + html( + head( + link({ rel: "stylesheet", href: roboto }), + Theme(), + ), + body( + main( + article( + Header(), + About(), + Skills(), + Experience(), + Expertise(), + ), + ), + a.pdf.noprint({ href: "cv.pdf" }, "PDF"), + ), + ), + ] +} + +function Header() { + return header( + h1("Dan Finch"), + div.links( + div.www( + a({ href: "https://da.nfin.ch" }, "Website"), + a( + { href: "https://www.sigitex.com" }, + "Open Source", + ), + a( + { + href: "https://www.linkedin.com/in/danfinch", + }, + "LinkedIn", + ), + ), + div.contact( + a( + { href: "mailto:danfinch@outlook.com" }, + "danfinch@outlook.com", + ), + a({ href: "tel:+436645047583" }, "+43 664 5047583"), + ), + ), + ) +} + +function About() { + return section.about( + h2("About Me"), + Markdown(intro), + Markdown(details), + ) +} + +function Skills() { + return section.skills(h2("Skills"), Markdown(skills)) +} + +function Experience() { + return section.experience( + h2("Experience"), + Markdown(experience), + ) +} + +function Expertise() { + return section.expertise( + h2("Expertise"), + div.blocks( + Skillset("Core Languages", Tech.languages), + Skillset("Platforms", Tech.platforms), + Skillset("Frontend", Tech.frontend), + Skillset("Backend", Tech.backend), + Skillset("Data", Tech.data), + Skillset("Principles", Tech.principles), + Skillset("Architecture", Tech.architecture), + Skillset("Delivery", Tech.delivery), + Skillset("Quality", Tech.quality), + Skillset("Collaboration", Tech.collaboration), + ), + ) +} + +function Skillset(name: string, content: string) { + return div.block(h3(name), Markdown(content)) +} + +const Color = { + backdrop: "#f0f0f0", + edge: "#808080", +} as const + +function Theme() { + return style( + Reset(), + rule.pdf( + display.flex, + width("50px"), + height("50px"), + borderRadius("12px"), + backgroundColor("#345c42"), + color.white, + position.fixed, + top("25px"), + right("25px"), + justifyContent.center, + alignItems.center, + fontWeight.bold, + textDecoration.none, + ), + $page( + prop("size", "auto"), + margin("0 0 0 0"), + padding("0.5in"), + ), + rule(body, [ + fontFamily("Roboto Condensed"), + fontSize("12pt"), + display.flex, + justifyContent.center, + backgroundColor(Color.backdrop), + ]), + $media("print", [ + rule(body, backgroundColor.white), + rule.noprint(raw("display: none !important;")), + ]), + rule(main, [ + backgroundColor.white, + width("8.5in"), + display.flex, + justifyContent.center, + paddingBottom("32pt"), + ]), + rule(article, [width("7.0in")]), + rule(header, [ + marginTop("0.5in"), + display.flex, + justifyContent.spaceBetween, + alignItems.flexEnd, + paddingBottom("8pt"), + ]), + rule(h1, fontSize("28pt")), + rule.links( + fontSize("11pt"), + width("2.75in"), + display.flex, + justifyContent.spaceBetween, + alignItems.center, + rule(">div", [ + display.flex, + flexDirection.column, + gap("2pt"), + ]), + ), + rule.contact(alignItems.flexEnd, fontSize("12pt")), + rule(section, [ + borderTop(`double 3px ${Color.edge}`), + paddingTop("16pt"), + paddingBottom("16pt"), + ]), + rule(h2, [marginBottom("12pt")]), + rule(p, [marginTop("12pt")]), + rule(ul, [marginTop("12pt")]), + rule(hr, [margin("12pt 0"), borderColor("#f0f0f0")]), + rule(".experience .content h2", [fontSize("14pt")]), + rule.expertise( + pageBreakInside.avoid, + rule(ul, marginBottom("12pt")), + rule.blocks(columns(3)), + rule.block( + flex(1), + minWidth("3in"), + breakInside.avoid, + ), + ), + ) +} diff --git a/src/ui/CV/index.ts b/src/ui/CV/index.ts new file mode 100644 index 0000000..b57d548 --- /dev/null +++ b/src/ui/CV/index.ts @@ -0,0 +1 @@ +export { default } from "./CV" \ No newline at end of file diff --git a/src/ui/Experience/Experience.ts b/src/ui/Experience/Experience.ts new file mode 100644 index 0000000..032fe65 --- /dev/null +++ b/src/ui/Experience/Experience.ts @@ -0,0 +1,26 @@ +import Layout from "ui/Layout" +import Window from "ui/Layout/Window" +import Markdown from "ui/shared/Markdown" +import experience from "./experience.md?raw" + +const title = "Dan Finch - Experience" + +export default function Experience() { + return [ + backgroundColor.white, + Layout( + { title, url: "/experience" }, + Window( + { title }, + div( + padding("16px"), + div.content( + h1("My Experience"), + hr(), + Markdown(experience), + ), + ), + ), + ), + ] +} diff --git a/src/ui/Experience/experience.md b/src/ui/Experience/experience.md new file mode 100644 index 0000000..1656738 --- /dev/null +++ b/src/ui/Experience/experience.md @@ -0,0 +1,91 @@ +## Dynatrace - Senior Software Engineer +> July 2023 - Present (Graz, Austria - Hybrid) + +- Implemented an array of features and bug fixes for several Business Analytics applications using **React** and **TypeScript**. +- Designed and implemented a strongly-typed embedded DSL to generate the data warehouse queries which power the apps, significantly reducing maintenance overhead. +- Created an end-to-end testing framework suite based on **Playwright** that substantially streamlined writing and running tests. +- Created and integrated a state management framework based on **Zustand** and **Immer** which greatly simplified and optimized front-end code. +- Initiated ongoing effort to improve code quality and project structure. +- Migrated a large project from Bitbucket+Jenkins to Github+Actions. + +--- + +## Independent Consultant +> Dec 2014 - July 2023 (Remote) + +My freelance work in this time included: + +- Created a mobile social network app for a startup conference and shared working space provider. This was written in functional **TypeScript** and **React Native**, with some Python/Django and Postgres on a Heroku backend. +- Consulted on JavaScript and front-end tech for Bitbanger Labs for their ColorSpike hybrid mobile app built on Cordova. +- Wrote a Chrome extension using the **Mithril** framework to inspect advertisements embedded in web pages for Bringhub. +- Designed and prototyped an app and backend for a IOT equipment monitoring startup in Sandpoint, ID using **React**, **ElasticSearch**, and **Postgres**. +- Created an **Electron** app connected to the QuickBooks API to build quotes for a greenhouse manufacturer. + +--- + +## RiskLens - Senior Software Engineer +> Jun 2017 - Dec 2017 (Spokane, WA) + +Helped lead the front-end development of FAIR-U - a **React** + **Redux**-based app backed by **C\#**, Sql Server, and +Azure & transitioned the team to TypeScript and other modern front-end tools. Gained experience with a +security-focused and process-intensive team. + +--- + +## TenX Logic - Contract Developer +> Oct 2015 - Mar 2016 (Remote) + +This project for the oil + gas industry targeted the Mono platform on ARM processors. I designed and +implemented a **C\#**-based driver model to control equipment in the field, with a frontend written in AngularJS. + +--- + +## Kochava - Senior Developer +> Apr 2014 - Nov 2014 (Sandpoint, ID) + +Worked on infrastructure and systems to manage large volumes of real-time analytics data. I tackled +complex challenges requiring constant inventiveness and collaboration to help the company scale at +a rapid rate. + +My work centered around **Node.js**, **Redis**, Linux, and **MongoDB**. I also led the early implementation of a +scalable high-traffic analytics backend. + +--- + +## Coldwater Creek - Web Developer +> Oct 2012 - Apr 2014 (Sandpoint, ID) + +Worked with many teams to finish an amazing number of projects. My work on both internal tooling and +customer experience put the company ahead of its industry in many respects. + +- Implemented a product search which outperformed all competitors, including a novel infinite scrolling method. +- Provided an array of features and user interfaces widgets for website with around one million hits per day. +- Wrote or re-wrote around 30 internal web-driven tools for e-commerce & marketing teams. +- Wrote custom jQuery UI powered framework and widgets for tool suite. +- Initiated effort to significantly improve client-side page load performance. +- Created a framework allowing mutual embedding between MVC and WebForms to allow a smooth transition off of legacy code. + +--- + +## Promitheia - Technical Director +> Sep 2006 - Sep 2012 (Austin, TX) + +As co-founder of this startup I was responsible for software design, programming, project management, +operations, testing, maintenance, and security. + +- Created complex e-commerce website featuring retail and affiliate marketing management. Owner of dozens of projects within the company. +- Configured and managed production web servers including Microsoft IIS and LAMP stack. +- Worked closely with DBA on data-driven applications powered by SQL Server 2008 and ADO.NET. +- Analyzed and selected supporting software and services, including early adoption of technologies such as ASP.NET MVC, jQuery, F#, AWS, and distributed source control. +- Developed solutions using Service Oriented Architecture (SOA), WCF, and Windows services. Integrated software with various cloud data and web service providers, including AWS, Authorize.NET, and Zencoder. +- Studied and implemented e-commerce best practices, web security standards, and PCI compliance. + +--- + +## Mercury ML - Founder +> 2002 - 2004 (Lapeer, MI) + +I got my start right out of high school helping to scale two companies out of working with unwieldy spreadsheets. + +- Released two major versions of a VB6 application to catalog marketing affiliates, track orders, and calculate payouts. +- Wrote and administered affiliate websites in Classic ASP and VBScript. \ No newline at end of file diff --git a/src/ui/Experience/index.ts b/src/ui/Experience/index.ts new file mode 100644 index 0000000..b48a798 --- /dev/null +++ b/src/ui/Experience/index.ts @@ -0,0 +1 @@ +export { default } from "./Experience" diff --git a/src/ui/Home/Home.ts b/src/ui/Home/Home.ts new file mode 100644 index 0000000..13eb093 --- /dev/null +++ b/src/ui/Home/Home.ts @@ -0,0 +1,30 @@ +import Layout from "ui/Layout" +import Markdown from "ui/shared/Markdown" +import intro from "./intro.md?raw" +import details from "./details.md?raw" +import skills from "./skills.md?raw" +import interests from "./interests.md?raw" +import Window from "ui/Layout/Window" + +const title = "Dan Finch - About Me" + +export default function Home() { + return Layout( + { title, url: "/" }, + Window( + { title }, + div.content(padding("8px"), [ + h1("About Me"), + Markdown(intro), + aside.fieldBorderDisabled( + img({ src: "/pfp.jpg", width: "200" }), + ), + Markdown(details), + h2("Skills"), + Markdown(skills), + h2("Interests"), + Markdown(interests), + ]), + ), + ) +} diff --git a/src/ui/Home/details.md b/src/ui/Home/details.md new file mode 100644 index 0000000..a6c1cbb --- /dev/null +++ b/src/ui/Home/details.md @@ -0,0 +1,5 @@ +My first principle is **user experience**. Software is interesting because of what it can do for people, and we all put up with mediocre software every day. This dissatisfaction drives me to set a high standard for our work. + +As a programmer, I've learned to make code **small, simple, and readable**. My aim is prolific and expeditious code output while maintaining quality. I make loosely-coupled components, understandable abstractions, and low-ceremony frameworks. + +As a teammate and leader, I am devoted to **friendliness** and **respect**. I am a good communicator, love sharing my knowledge, and learning from others. I've given talks at local user groups and mentored at work and in my free time. \ No newline at end of file diff --git a/src/ui/Home/index.ts b/src/ui/Home/index.ts new file mode 100644 index 0000000..51b81b5 --- /dev/null +++ b/src/ui/Home/index.ts @@ -0,0 +1 @@ +export { default } from "./Home" diff --git a/src/ui/Home/interests.md b/src/ui/Home/interests.md new file mode 100644 index 0000000..48e4788 --- /dev/null +++ b/src/ui/Home/interests.md @@ -0,0 +1,4 @@ +- Compilers, interpreters & parsers. +- Metaprogramming, language-oriented programming. +- Developer tools - hacking on build tools and bundlers. +- Automating self-hosted cloud tech. \ No newline at end of file diff --git a/src/ui/Home/intro.md b/src/ui/Home/intro.md new file mode 100644 index 0000000..521eb75 --- /dev/null +++ b/src/ui/Home/intro.md @@ -0,0 +1 @@ +I own software end-to-end: building or renewing stacks and evaluating the tools and techniques that will serve the product well. I assist my teams in creating frameworks, automation, standards, and guidance that clear the path to delivering good software and user experiences. I am comfortable working hands-on across code, architecture, UX, and product. \ No newline at end of file diff --git a/src/ui/Home/skills.md b/src/ui/Home/skills.md new file mode 100644 index 0000000..4f83182 --- /dev/null +++ b/src/ui/Home/skills.md @@ -0,0 +1,8 @@ +- Consciousness of mainstream & emerging technology and trends. +- Quickly vetting and adapting to new technologies - building and improving stacks. +- High standards for great user and developer experiences. +- Interacting directly and empathetically with stakeholders and end users. +- Managing work through all phases of a development cycle. +- Eliminating friction in processes through automation. +- Understanding all the areas of a codebase and recognizing where waste can be reduced. +- Coordinating large, complex upgrades and refactors. \ No newline at end of file diff --git a/src/ui/Layout/Head.ts b/src/ui/Layout/Head.ts new file mode 100644 index 0000000..d04df4a --- /dev/null +++ b/src/ui/Layout/Head.ts @@ -0,0 +1,18 @@ +const DEFAULT_TITLE = "Dan Finch" + +export default function Head(props: { title: string }, ...contents: Content[]) { + return head( + meta({ charset: "utf-8" }), + meta({ + name: "viewport", + content: "width=device-width, initial-scale=1.0", + }), + link({ + rel: "shortcut icon", + type: "image/png", + href: "/favicon.png", + }), + title(props.title || DEFAULT_TITLE), + contents, + ) +} diff --git a/src/ui/Layout/Layout.ts b/src/ui/Layout/Layout.ts new file mode 100644 index 0000000..dbe55e9 --- /dev/null +++ b/src/ui/Layout/Layout.ts @@ -0,0 +1,50 @@ +import Head from "./Head" +import background from "assets/background.js?raw" +import css98 from "98se.css?url" +import Taskbar from "ui/Layout/Taskbar" +import Theme from "ui/Layout/Theme" + +export default function Layout( + props: { title: string, url: string }, + ...contents: Content[] +) { + return [ + doctype.html5, + html( + Head(props, [ + link({ rel: "stylesheet", href: css98 }), + style(Theme()), + ]), + body( + backgroundColor.black, + canvas( + { id: "background" }, + display.block, + position.fixed, + width("100%"), + height("100%"), + left(0), + top(0), + zIndex(-1), + ), + div( + display.flex, + flexDirection.column, + height("100dvh"), + nav( + height.maxContent, + Taskbar({ url: props.url }), + ), + main( + flex(1), + overflowY.hidden, + display.flex, + justifyContent.center, + contents, + ) + ) + ), + script(raw(background)), + ), + ] +} diff --git a/src/ui/Layout/Reset.ts b/src/ui/Layout/Reset.ts new file mode 100644 index 0000000..0721ec5 --- /dev/null +++ b/src/ui/Layout/Reset.ts @@ -0,0 +1,14 @@ +export default function Reset() { + return [ + rule("*, *::before, *::after", [boxSizing.borderBox]), + rule("*:not(dialog)", [margin(0)]), + rule( + "input, button, textarea, select", + font("inherit"), + ), + rule( + "p, h1, h2, h3, h4, h5, h6", + overflowWrap.breakWord, + ), + ] +} diff --git a/src/ui/Layout/Taskbar.ts b/src/ui/Layout/Taskbar.ts new file mode 100644 index 0000000..40cc7be --- /dev/null +++ b/src/ui/Layout/Taskbar.ts @@ -0,0 +1,101 @@ +import favicon from "public/favicon.png?url" +import linkedin from "public/icons/linkedin.svg?raw" +import github from "public/icons/github.svg?raw" +import aboutIcon from "public/icons/about.png?url" +import experienceIcon from "public/icons/experience.png?url" +import projectsIcon from "public/icons/projects.png?url" +import techIcon from "public/icons/tech.png?url" + +const vr = hr(height("20px"), margin("0px 2px")) + +export default function Taskbar({ url }: { url: string }) { + return div.taskbar.window( + textWrapMode.nowrap, + overflowX.hidden, + margin("10px"), + div( + display.flex, + alignItems.center, + gap("2px"), + div( + display.flex, + paddingLeft("4px"), + img( + { src: favicon }, + width("12px"), + height("12px"), + marginRight("4px"), + ), + div(fontWeight.bold, "Dan Finch"), + ), + vr, + a( + { title: "LinkedIn" }, + { href: "https://www.linkedin.com/in/danfinch/" }, + raw(linkedin), + ), + a( + { title: "GitHub" }, + { href: "https://github.com/errilaz" }, + raw(github), + ), + vr, + Task({ + icon: aboutIcon, + title: "About", + href: "/", + active: url === "/", + }), + Task({ + icon: projectsIcon, + title: "Projects", + href: "/projects", + active: url === "/projects", + }), + Task({ + icon: experienceIcon, + title: "Experience", + href: "/experience", + active: url === "/experience", + }), + Task({ + icon: techIcon, + title: "Tech", + href: "/tech", + active: url === "/tech", + }), + ), + ) +} + +function Task({ + icon, + title, + href, + active, +}: { + icon: string + title: Content + href?: string + active?: boolean +}) { + return a.button( + { href }, + active && className("active"), + padding("0 4px"), + textAlign.left, + div( + width("100%"), + gap("4px"), + display.flex, + justifyContent.flexStart, + img( + { src: icon }, + width("12px"), + height("12px"), + marginRight("4px"), + ), + span(title), + ), + ) +} diff --git a/src/ui/Layout/Theme.ts b/src/ui/Layout/Theme.ts new file mode 100644 index 0000000..0416fa7 --- /dev/null +++ b/src/ui/Layout/Theme.ts @@ -0,0 +1,39 @@ +import Reset from "./Reset" + +export default function Theme() { + return [ + Reset(), + $media( + "(max-width: 468px)", + rule( + ".taskbar .button", + minWidth("unset"), + rule("img", display.none), + ), + ), + rule("a.button", [ + textDecoration.none, + cursor._default, + display.flex, + alignItems.center, + ]), + rule(h1, fontSize("20px")), + rule(h2, fontSize("16px")), + rule(ul, paddingInlineStart("30px")), + rule.content( + textAlign.justify, + fontFamily("Arial"), + fontSize("14px"), + rule(h1, fontSize("28px")), + rule(h2, fontSize("20px")), + rule(h3, fontSize("14px"),paddingLeft("30px")), + rule(aside, + float.right, + marginLeft("20px"), + paddingBottom(0), + ), + rule("p, h1, h2, h3, ul", margin("12px 0")), + ), + rule(iframe, border(0)), + ] +} diff --git a/src/ui/Layout/Window.ts b/src/ui/Layout/Window.ts new file mode 100644 index 0000000..14814e9 --- /dev/null +++ b/src/ui/Layout/Window.ts @@ -0,0 +1,32 @@ +const DEFAULT_WIDTH = "770px" + +export default function Window( + props: { title: Content; width?: Content; flat?: boolean }, + ...contents: Content[] +) { + return article.window( + opacity(0.9), + marginTop("16px"), + marginBottom("24px"), + marginLeft("10px"), + marginRight("10px"), + width(props.width ?? DEFAULT_WIDTH), + maxWidth(props.width ?? DEFAULT_WIDTH), + display.flex, + flexDirection.column, + div.titleBar( + div.titleBarText(props.title), + div.titleBarControls( + button({ "aria-label": "Minimize" }), + button({ "aria-label": "Maximize" }), + button({ "aria-label": "Close" }), + ), + ), + div.windowBody( + props.flat ? null : className("field-border"), + flex(1), + overflowY.auto, + contents, + ), + ) +} diff --git a/src/ui/Layout/index.ts b/src/ui/Layout/index.ts new file mode 100644 index 0000000..130d8dc --- /dev/null +++ b/src/ui/Layout/index.ts @@ -0,0 +1 @@ +export { default } from "./Layout" diff --git a/src/ui/Projects/Projects.ts b/src/ui/Projects/Projects.ts new file mode 100644 index 0000000..6e1cdd9 --- /dev/null +++ b/src/ui/Projects/Projects.ts @@ -0,0 +1,21 @@ +import Layout from "ui/Layout" +import Window from "ui/Layout/Window" + +const title = "Dan Finch - Projects" +const sigitex = "https://sigitex.com" + +export default function Projects() { + return Layout( + { title, url: "/projects" }, + Window( + { + title: span(title, " (", a({ href: sigitex }, color.yellow, "SIGITEX.COM"), ")") + }, + backgroundColor.black, + display.flex, + iframe({ src: "https://sigitex.com" }, + flex(1) + ), + ), + ) +} diff --git a/src/ui/Projects/index.ts b/src/ui/Projects/index.ts new file mode 100644 index 0000000..68d8ed0 --- /dev/null +++ b/src/ui/Projects/index.ts @@ -0,0 +1 @@ +export { default } from "./Projects" diff --git a/src/ui/Tech/Sections.ts b/src/ui/Tech/Sections.ts new file mode 100644 index 0000000..5af8b1e --- /dev/null +++ b/src/ui/Tech/Sections.ts @@ -0,0 +1,122 @@ +export const languages = ` +- TypeScript +- JavaScript +- C# +- F# +- SQL +- HTML +- CSS +` + +export const platforms = ` +- Node.js +- Deno +- Bun +- Linux +- Electron +- Browser Extensions +- React Native +- .NET Core +- .NET Framework +` + +export const frontend = ` +- React +- Vite +- Zustand +- Immer +- Webpack +- Parcel +- Emotion +- Styled Components +- Mithril +- Redux +- React Router +- React Query +- Vanilla Extract +- CSS Modules +- SCSS, Stylus, Less +` + +export const backend = ` +- Express +- Koa +- ASP.NET +- Fastify +- Hapi +- NestJS +- Docker +- Cloudflare +- Firebase +- Supabase +- AWS +- GitHub Actions +` + +export const data = ` +- Postgres +- Redis +- Sqlite +- MongoDB +- MySQL +- ElasticSearch +- SQL Server +` + +export const principles = ` +- DDD +- FP +- Immutability +- Explicit data flow +- Modular design +- Testable boundaries +- Composability +- Separation of concerns +- SOLID +- DRY +- KISS +- YAGNI +` + +export const architecture = ` +- Domain modeling +- API design +- REST +- Event-driven systems +- Service boundaries +- State management +- Caching +- Data modeling +- Progressive enhancement +` + +export const delivery = ` +- CI/CD +- Build and release automation +- IaC +- Containers +- Feature flags +- Observability +` + +export const quality = ` +- TDD +- Unit testing +- Integration testing +- E2E testing +- Code review +- Refactoring +- Accessibility +- Responsive design +` + +export const collaboration = ` +- Async-first +- Agile +- Pairing +- Mentoring +- Technical leadership +- Product collaboration +- Design collaboration +- Documentation +` \ No newline at end of file diff --git a/src/ui/Tech/Tech.ts b/src/ui/Tech/Tech.ts new file mode 100644 index 0000000..2367e05 --- /dev/null +++ b/src/ui/Tech/Tech.ts @@ -0,0 +1,48 @@ +import Layout from "ui/Layout" +import Window from "ui/Layout/Window" +import Markdown from "ui/shared/Markdown" +import * as Sections from "./Sections" + +const title = "Dan Finch - Expertise" + +export default function Expertise() { + return Layout( + { title, url: "/tech" }, + Window( + { title, flat: true }, + div( + [ + display.flex, + flexWrap.wrap, + marginRight("8px"), + paddingBottom("16px"), + gap("8px"), + ], + Skillset("Core Languages", Sections.languages), + Skillset("Platforms", Sections.platforms), + Skillset("Frontend", Sections.frontend), + Skillset("Backend", Sections.backend), + Skillset("Data", Sections.data), + Skillset("Principles", Sections.principles), + Skillset("Architecture", Sections.architecture), + Skillset("Delivery", Sections.delivery), + Skillset("Quality", Sections.quality), + Skillset("Collaboration", Sections.collaboration), + ), + ), + ) +} + +function Skillset(title: string, markdown: Content) { + return div( + [ + flex(1), + minWidth("250px"), + display.flex, + flexDirection.column, + gap("4px"), + ], + h2(title), + div.fieldBorder(flex(1), Markdown(markdown)), + ) +} diff --git a/src/ui/Tech/index.ts b/src/ui/Tech/index.ts new file mode 100644 index 0000000..e0d66ac --- /dev/null +++ b/src/ui/Tech/index.ts @@ -0,0 +1 @@ +export { default } from "./Tech" diff --git a/src/ui/shared/Markdown.ts b/src/ui/shared/Markdown.ts new file mode 100644 index 0000000..d4ac340 --- /dev/null +++ b/src/ui/shared/Markdown.ts @@ -0,0 +1,9 @@ +import { Marked } from "marked" +import { gfmHeadingId } from "marked-gfm-heading-id" + +export default function Markdown(md: string) { + return div.content(raw(marked.parse(md))) +} + +const marked = new Marked({ gfm: true }) +marked.use(gfmHeadingId()) diff --git a/tsconfig.base.json b/tsconfig.base.json new file mode 100644 index 0000000..b561c88 --- /dev/null +++ b/tsconfig.base.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "module": "esnext", + "target": "esnext", + "lib": [ + "esnext" + ], + "types": [], + "moduleResolution": "bundler", + "esModuleInterop": true, + "skipDefaultLibCheck": true, + "skipLibCheck": true, + "strict": true, + "outDir": "dist" + } +} diff --git a/tsconfig.config.json b/tsconfig.config.json new file mode 100644 index 0000000..eed6a13 --- /dev/null +++ b/tsconfig.config.json @@ -0,0 +1,15 @@ +{ + "extends": "./tsconfig.base.json", + "compilerOptions": { + "composite": true, + "types": [ + "bun" + ] + }, + "include": [ + "*.config.ts", + "*.config.cjs", + "scripts/*.ts" + ], + "files": [] +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..9dcb6f8 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,14 @@ +{ + "files": [], + "references": [ + { + "path": "./tsconfig.src.json" + }, + { + "path": "./tsconfig.test.json" + }, + { + "path": "./tsconfig.config.json" + } + ] +} diff --git a/tsconfig.src.json b/tsconfig.src.json new file mode 100644 index 0000000..58605e3 --- /dev/null +++ b/tsconfig.src.json @@ -0,0 +1,23 @@ +{ + "extends": "./tsconfig.base.json", + "compilerOptions": { + "composite": true, + "paths": { + "ui/*": [ + "./src/ui/*" + ], + "shared/*": [ + "./src/shared/*" + ], + "assets/*": [ + "./assets/*" + ], + "public/*": [ + "./public/*" + ] + } + }, + "include": [ + "src" + ] +} diff --git a/tsconfig.test.json b/tsconfig.test.json new file mode 100644 index 0000000..281b538 --- /dev/null +++ b/tsconfig.test.json @@ -0,0 +1,18 @@ +{ + "extends": "./tsconfig.base.json", + "references": [ + { + "path": "./tsconfig.src.json" + } + ], + "compilerOptions": { + "composite": true, + "types": [ + "bun" + ] + }, + "include": [ + "tests" + ], + "files": [] +}