8 files changed,
+1441,
-0
+11,
-0
1@@ -0,0 +1,11 @@
2+# Devenv
3+.devenv*
4+devenv.local.nix
5+devenv.local.yaml
6+
7+# direnv
8+.direnv
9+
10+# pre-commit
11+.pre-commit-config.yaml
12+node_modules
+11,
-0
1@@ -0,0 +1,11 @@
2+This is a simple application monitoring webapp that uses Cloudflare workers and durable objects to monitor health endpoints for my deployed apps. Health endpoints look like a list of URLs: https://mymood.at/healthz, https://infra.sovrn.at/healthz. These endpoints return a JSON object with details about the health of their services and use status codes to indicate issues that need attention.
3+
4+The app should create several durable objects in different regions: western north america, eastern north america, eastern europe, western europe, asia pacific. Using Durable Object alarms, each should wake up every 3 minutes (configurable), send GET requests to the list of monitoring endpoints, and save the status code, time of response, request duration, and JSON response to the local Sqlite storage. A trigger on the Sqlite database deletes rows older than 14 days.
5+
6+A status code of 200 from a health endpoint indicates that everything is fine for that application. Any other status or a failed response due to a timeout indicates an issue with that application, and the durable object should use Cloudflare's email service to send an alert email to [email protected] (allowed destination address) with the status response and the JSON payload in the body of the email.
7+
8+A homepage available on https://monitor.rtw.run should contact each durable object via RPC stub and retrieve the lateststatus available, presented in a table with the status, time of response, and request duration (latency). Each should be similar to a details/summary element, where clicking the row opens more information about the response, which shows the most recent JSON response pretty-printed. A link at the end of each row allows opening a separate page to that particular health endpoint that shows paginated responses, with optional filters to show only non-200 responses. All pages are protected with basic auth.
9+
10+Design aesthetics are not important, but UX is a priority and it should work on both desktop and mobile screens. You may use any framework except React to build the UI. Simplicity is paramount: the goal is a robust application that requires little maintenance (fewer dependencies is better). You must use Cloudflare services and deploy via wrangler (already installed in this environment and logged in).
11+
12+You should discuss your design choices and present options with a rationale before building anything.
+238,
-0
1@@ -0,0 +1,238 @@
2+{
3+ "nodes": {
4+ "bug": {
5+ "inputs": {
6+ "flake-utils": "flake-utils",
7+ "nixpkgs": "nixpkgs"
8+ },
9+ "locked": {
10+ "lastModified": 1789299135,
11+ "narHash": "sha256-eU2EKLWUG7+LOdd6xlLELcXaK9yGyS4Hi1NWWuJPyj0=",
12+ "ref": "refs/heads/main",
13+ "rev": "c150b552f4b084877dd7386a5543934d7ad0c7e9",
14+ "revCount": 12,
15+ "type": "git",
16+ "url": "https://git.kilimanjaro.io/bug"
17+ },
18+ "original": {
19+ "type": "git",
20+ "url": "https://git.kilimanjaro.io/bug"
21+ }
22+ },
23+ "devenv": {
24+ "locked": {
25+ "dir": "src/modules",
26+ "lastModified": 1791549372,
27+ "narHash": "sha256-5Vu2oKeImB5wQWLFSEcWXsF0Oajm4/5MV7UlnOdelmg=",
28+ "owner": "cachix",
29+ "repo": "devenv",
30+ "rev": "a73c5b84c9527760f009232988466763068f9f61",
31+ "type": "github"
32+ },
33+ "original": {
34+ "dir": "src/modules",
35+ "owner": "cachix",
36+ "repo": "devenv",
37+ "type": "github"
38+ }
39+ },
40+ "flake-utils": {
41+ "inputs": {
42+ "systems": "systems"
43+ },
44+ "locked": {
45+ "lastModified": 1731533236,
46+ "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
47+ "owner": "numtide",
48+ "repo": "flake-utils",
49+ "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
50+ "type": "github"
51+ },
52+ "original": {
53+ "owner": "numtide",
54+ "repo": "flake-utils",
55+ "type": "github"
56+ }
57+ },
58+ "flake-utils_2": {
59+ "inputs": {
60+ "systems": "systems_2"
61+ },
62+ "locked": {
63+ "lastModified": 1731533236,
64+ "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
65+ "owner": "numtide",
66+ "repo": "flake-utils",
67+ "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
68+ "type": "github"
69+ },
70+ "original": {
71+ "owner": "numtide",
72+ "repo": "flake-utils",
73+ "type": "github"
74+ }
75+ },
76+ "local-code-review": {
77+ "inputs": {
78+ "nixpkgs": "nixpkgs_2"
79+ },
80+ "locked": {
81+ "lastModified": 1790664642,
82+ "narHash": "sha256-Pl7zVsnoxxrbrg/up/5Ue2a9ajtROQptM4AOuo7AYts=",
83+ "ref": "refs/heads/main",
84+ "rev": "95ae244a839007c6aa89fa5230be193d878ee56e",
85+ "revCount": 17,
86+ "type": "git",
87+ "url": "https://git.kilimanjaro.io/local-code-review"
88+ },
89+ "original": {
90+ "type": "git",
91+ "url": "https://git.kilimanjaro.io/local-code-review"
92+ }
93+ },
94+ "nixpkgs": {
95+ "locked": {
96+ "lastModified": 1789149629,
97+ "narHash": "sha256-H6GwaZzZf+4npqv0tph94w9tZddSjFjmQrVsW0z78uk=",
98+ "owner": "NixOS",
99+ "repo": "nixpkgs",
100+ "rev": "eaad089433ca2bb662274377d33df3d0e51ef28b",
101+ "type": "github"
102+ },
103+ "original": {
104+ "owner": "NixOS",
105+ "ref": "nixos-unstable",
106+ "repo": "nixpkgs",
107+ "type": "github"
108+ }
109+ },
110+ "nixpkgs-src": {
111+ "flake": false,
112+ "locked": {
113+ "lastModified": 1789370336,
114+ "narHash": "sha256-6RSEDHIWQtesQKWSu5qRai8L2h4KgCgMEfJHstW99G4=",
115+ "owner": "NixOS",
116+ "repo": "nixpkgs",
117+ "rev": "c7def046b9a883d46974757852106483d741586f",
118+ "type": "github"
119+ },
120+ "original": {
121+ "owner": "NixOS",
122+ "ref": "nixpkgs-unstable",
123+ "repo": "nixpkgs",
124+ "type": "github"
125+ }
126+ },
127+ "nixpkgs_2": {
128+ "locked": {
129+ "lastModified": 1790323409,
130+ "narHash": "sha256-VVTPf+Hyd5ebpjBMHmrLMSBIeW6ls48Bqtosj7CNKLA=",
131+ "owner": "NixOS",
132+ "repo": "nixpkgs",
133+ "rev": "e94cb152ed51bd6e24eb4a41f1460252beb52cd2",
134+ "type": "github"
135+ },
136+ "original": {
137+ "owner": "NixOS",
138+ "ref": "nixos-unstable",
139+ "repo": "nixpkgs",
140+ "type": "github"
141+ }
142+ },
143+ "nixpkgs_3": {
144+ "inputs": {
145+ "nixpkgs-src": "nixpkgs-src"
146+ },
147+ "locked": {
148+ "lastModified": 1789506231,
149+ "narHash": "sha256-vNkJbtmqyBfFhn/HnzQo4ROuoyYWuy/allqTfJb4kMY=",
150+ "owner": "cachix",
151+ "repo": "devenv-nixpkgs",
152+ "rev": "c2f38fe7f9e04d9aadd354d380f2bd40531d9737",
153+ "type": "github"
154+ },
155+ "original": {
156+ "owner": "cachix",
157+ "ref": "rolling",
158+ "repo": "devenv-nixpkgs",
159+ "type": "github"
160+ }
161+ },
162+ "nixpkgs_4": {
163+ "locked": {
164+ "lastModified": 1790578696,
165+ "narHash": "sha256-ZoxIApko70jCdbH3l20HWXOBaT2HZd87orzd2yJ9dVE=",
166+ "owner": "NixOS",
167+ "repo": "nixpkgs",
168+ "rev": "7a0f122f5090cf4c2ade2a13a0e229d4e19ba71f",
169+ "type": "github"
170+ },
171+ "original": {
172+ "owner": "NixOS",
173+ "ref": "nixos-unstable",
174+ "repo": "nixpkgs",
175+ "type": "github"
176+ }
177+ },
178+ "root": {
179+ "inputs": {
180+ "bug": "bug",
181+ "devenv": "devenv",
182+ "local-code-review": "local-code-review",
183+ "nixpkgs": "nixpkgs_3",
184+ "secrets": "secrets"
185+ }
186+ },
187+ "secrets": {
188+ "inputs": {
189+ "flake-utils": "flake-utils_2",
190+ "nixpkgs": "nixpkgs_4"
191+ },
192+ "locked": {
193+ "lastModified": 1790680131,
194+ "narHash": "sha256-p3xPff0d3O4T8AW0Zbv7sZDZcJk61f5LEHRKcSTRF58=",
195+ "ref": "refs/heads/main",
196+ "rev": "96a2b2da934d769c76c19073e89e19e231964868",
197+ "revCount": 1,
198+ "type": "git",
199+ "url": "https://git.kilimanjaro.io/secrets"
200+ },
201+ "original": {
202+ "type": "git",
203+ "url": "https://git.kilimanjaro.io/secrets"
204+ }
205+ },
206+ "systems": {
207+ "locked": {
208+ "lastModified": 1681028828,
209+ "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
210+ "owner": "nix-systems",
211+ "repo": "default",
212+ "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
213+ "type": "github"
214+ },
215+ "original": {
216+ "owner": "nix-systems",
217+ "repo": "default",
218+ "type": "github"
219+ }
220+ },
221+ "systems_2": {
222+ "locked": {
223+ "lastModified": 1681028828,
224+ "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
225+ "owner": "nix-systems",
226+ "repo": "default",
227+ "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
228+ "type": "github"
229+ },
230+ "original": {
231+ "owner": "nix-systems",
232+ "repo": "default",
233+ "type": "github"
234+ }
235+ }
236+ },
237+ "root": "root",
238+ "version": 7
239+}
+83,
-0
1@@ -0,0 +1,83 @@
2+{
3+ pkgs,
4+ lib,
5+ config,
6+ inputs,
7+ ...
8+}:
9+
10+{
11+ # https://devenv.sh/basics/
12+ env.GREET = "devenv";
13+
14+ # https://devenv.sh/packages/
15+ packages = [
16+ pkgs.git
17+ pkgs.bash
18+ pkgs.bash-completion
19+ pkgs.bashInteractive
20+ pkgs.just
21+ pkgs.curl
22+ pkgs.jq
23+
24+ # custom tools
25+ inputs.bug.packages.${pkgs.system}.bug
26+ inputs.local-code-review.packages.${pkgs.system}.default
27+ inputs.secrets.packages.${pkgs.system}.default
28+ ];
29+
30+ # https://devenv.sh/languages/
31+ languages.javascript.enable = true;
32+ languages.javascript.corepack.enable = true;
33+
34+ # https://devenv.sh/processes/
35+ # processes.dev.exec = "${lib.getExe pkgs.watchexec} -n -- ls -la";
36+
37+ # https://devenv.sh/services/
38+ # services.postgres.enable = true;
39+
40+
41+ enterShell = ''
42+ # Configure bash with fish-like features
43+ bind 'set completion-ignore-case on' # Case-insensitive completion
44+ bind 'set show-all-if-ambiguous on' # Show all completions on first tab
45+ bind 'set menu-complete-display-prefix on'
46+ bind 'TAB:menu-complete' # Tab cycles through completions
47+ bind '\e[A:history-search-backward' # Up arrow searches history
48+ bind '\e[B:history-search-forward' # Down arrow searches history
49+ bind 'set colored-completion-prefix on' # Color the completion prefix
50+ bind 'set colored-stats on' # Color the completion stats
51+
52+ # Enable bash-completion if available
53+ if [ -f ${pkgs.bash-completion}/etc/profile.d/bash_completion.sh ]; then
54+ source ${pkgs.bash-completion}/etc/profile.d/bash_completion.sh
55+ fi
56+
57+ # Better directory navigation
58+ shopt -s autocd 2>/dev/null # Type directory name to cd
59+ shopt -s dirspell 2>/dev/null # Correct spelling of dir names
60+ shopt -s cdspell 2>/dev/null # Correct spelling of cd args
61+
62+ # Enable ** globbing for recursive directory matching
63+ shopt -s globstar 2>/dev/null
64+
65+ # Use correct Cloudflare context
66+ export CF_ACCOUNT_ID=$(secrets decrypt cloudflare/account_id)
67+ export CLOUDFLARE_API_TOKEN=$(secrets decrypt cloudflare/workers_api_key)
68+ '';
69+
70+# https://devenv.sh/tasks/
71+ # tasks = {
72+ # "myproj:setup".exec = "mytool build";
73+ # "devenv:enterShell".after = [ "myproj:setup" ];
74+ # };
75+
76+ # https://devenv.sh/tests/
77+ enterTest = ''
78+ '';
79+
80+ # https://devenv.sh/git-hooks/
81+ # git-hooks.hooks.shellcheck.enable = true;
82+
83+ # See full reference at https://devenv.sh/reference/options/
84+}
+24,
-0
1@@ -0,0 +1,24 @@
2+# yaml-language-server: $schema=https://devenv.sh/devenv.schema.json
3+inputs:
4+ nixpkgs:
5+ url: github:cachix/devenv-nixpkgs/rolling
6+ bug:
7+ url: git+https://git.kilimanjaro.io/bug
8+ local-code-review:
9+ url: git+https://git.kilimanjaro.io/local-code-review
10+ secrets:
11+ url: git+https://git.kilimanjaro.io/secrets
12+reload: false
13+# If you're using non-OSS software, you can set allow_unfree to true.
14+# allow_unfree: true
15+
16+# If you're not willing to allow unsupported packages:
17+# allow_unsupported_system: false
18+
19+# If you're willing to use a package that's vulnerable
20+# permitted_insecure_packages:
21+# - "openssl-1.1.1w"
22+
23+# If you have more than one devenv you can merge them
24+#imports:
25+# - ./backend
+17,
-0
1@@ -0,0 +1,17 @@
2+{
3+ "name": "monitor",
4+ "version": "1.0.0",
5+ "description": "",
6+ "main": "index.js",
7+ "scripts": {
8+ "test": "echo \"Error: no test specified\" && exit 1"
9+ },
10+ "keywords": [],
11+ "author": "",
12+ "license": "ISC",
13+ "packageManager": "[email protected]+sha512.ba40a37eb1a370d60fea8c4cf1d364c13bcccef518e98ad2bcee954f539d38da37458e58261a3fa55e06523450ea0ffff9f497b135be41f2c15c1642bacace6c",
14+ "type": "module",
15+ "devDependencies": {
16+ "wrangler": "^4.149.0"
17+ }
18+}
+1053,
-0
1@@ -0,0 +1,1053 @@
2+---
3+lockfileVersion: '9.0'
4+
5+importers:
6+
7+ .:
8+ configDependencies: {}
9+ packageManagerDependencies:
10+ pnpm:
11+ specifier: 12.10.1
12+ version: 12.10.1
13+
14+packages:
15+
16+ '@pnpm/[email protected]':
17+ resolution: {integrity: sha512-CVTlHPwNvadQCJD9bGSMzWIhFX8QpjtqC2c27dhdnn/9iKzEjZ3qL62o3gHpKbIuo6qn4WxTKRoaokgNdReBig==}
18+ cpu: [arm64]
19+ os: [android]
20+
21+ '@pnpm/[email protected]':
22+ resolution: {integrity: sha512-NFiYLIaodY7da0XIebwcU3JoP7IK/lzF7zgKSSP+9H+QcFnQ1GDfBkuBKCYJzZ+Xu0WH54neIPLBBCaOjaaauA==}
23+ cpu: [x64]
24+ os: [android]
25+
26+ '@pnpm/[email protected]':
27+ resolution: {integrity: sha512-0O8tdQ8ijlPJudXspLMTcitMkdBEz6uUflazL5uQE0WMs85oQIp0U+5hfEktMFB64QqEhjqlvvujTwbzdr9oMg==}
28+ cpu: [arm64]
29+ os: [darwin]
30+
31+ '@pnpm/[email protected]':
32+ resolution: {integrity: sha512-ud+1/uZOKEo8P/AsPynOJc/LNwfI0j6WwCElibj71rU9l4nIBnsSn+wWTIPZPkZ4BBSH5+82azSnAARMyJ1lNA==}
33+ cpu: [x64]
34+ os: [darwin]
35+
36+ '@pnpm/[email protected]':
37+ resolution: {integrity: sha512-mj9PE5rf8uAfQQ2K66HSATMSut+lNiB4eSqFd5+azFVCMnxNSy/32xpZQJT21PhnN3Y4qbK+iKHe5nWAxSuRhw==}
38+ cpu: [x64]
39+ os: [freebsd]
40+
41+ '@pnpm/[email protected]':
42+ resolution: {integrity: sha512-xba+00wZJ8Um6rBJJjWl88uJj0tydB8dtomvjlCLvi0uL32vpa9CRP8Vv26FIXvbiZ1bo2RCzYt/eChxJVV52w==}
43+ cpu: [arm64]
44+ os: [linux]
45+ libc: [musl]
46+
47+ '@pnpm/[email protected]':
48+ resolution: {integrity: sha512-oBdMp69ScC9UnniG4qZAQVr2fBDSXjm4yk/72vkEVyrlwS23yMxcRQl7Qdo3sgXPAygY6TWnPRKm4rXzjoyW7w==}
49+ cpu: [arm64]
50+ os: [linux]
51+ libc: [glibc]
52+
53+ '@pnpm/[email protected]':
54+ resolution: {integrity: sha512-Yyb3wu09h3c7mLme270uHFiVaAIUHC411Ru9LIU2BKUIstrGlXa9OqqVWoXaRgYRdFdOFknkwG7GNn6ygwLbnw==}
55+ cpu: [ppc64]
56+ os: [linux]
57+ libc: [glibc]
58+
59+ '@pnpm/[email protected]':
60+ resolution: {integrity: sha512-PdkeUFFkybknnGkWP0H22eMpIiS4OZXL5BcQzF4lh+vmrW3IaC2HOkbANKgot/PKO0Kl77pzA/6PKFxgbgfXIQ==}
61+ cpu: [riscv64]
62+ os: [linux]
63+ libc: [glibc]
64+
65+ '@pnpm/[email protected]':
66+ resolution: {integrity: sha512-1okKuHKJwJPAbofDxfhZWAUxEWtee4ZSf7Pah8kcvocaJkf2WxFJ5KVTiNIvDml5GLidDQsgf7Pcf/WHbCak7Q==}
67+ cpu: [s390x]
68+ os: [linux]
69+ libc: [glibc]
70+
71+ '@pnpm/[email protected]':
72+ resolution: {integrity: sha512-e6IqzVNkPa7srFKJKnY23uWJ+qz0LaRWiTUo/sHfFXRRMRzB5uNOr6qWWip/jqhdGwU91n9J7LrEYZ6e0tRczw==}
73+ cpu: [x64]
74+ os: [linux]
75+ libc: [musl]
76+
77+ '@pnpm/[email protected]':
78+ resolution: {integrity: sha512-ZByV0DRgWzGaDSjT5ddRBASdwz+r/qPMYh7o6RGmPQjtRGNFbSl94xY2DcAM8mqCOZJUUDtAXQ+wpBXcdpKlkg==}
79+ cpu: [x64]
80+ os: [linux]
81+ libc: [glibc]
82+
83+ '@pnpm/[email protected]':
84+ resolution: {integrity: sha512-I7QZHcjioG7orFeCRUFUHByJ1G0zFPnAlaGGyrUvb6MGkv5oeNwNPl7t+Gp+7zHfnMcgLGJ1a+Wfim0IDw3lOw==}
85+ cpu: [arm64]
86+ os: [win32]
87+
88+ '@pnpm/[email protected]':
89+ resolution: {integrity: sha512-4WJFdp58EKlCj0zLobrXU0vpszSZIr4X/3y/uNbAQqGW0zE+VdruZB0gFc3L2kzsUzVwTYbaCn+XEhnCYSAlTg==}
90+ cpu: [x64]
91+ os: [win32]
92+
93+ [email protected]:
94+ resolution: {integrity: sha512-ukCjfrGjcNYP6oxM8dNkwTvMzvUY6YrSvO6VT1OdONo3RY5YJho/pV4GUjRQ6g//+fSXsTW+QfLBXBZCusrObA==}
95+ engines: {node: '>=18.*'}
96+ hasBin: true
97+
98+snapshots:
99+
100+ '@pnpm/[email protected]':
101+ optional: true
102+
103+ '@pnpm/[email protected]':
104+ optional: true
105+
106+ '@pnpm/[email protected]':
107+ optional: true
108+
109+ '@pnpm/[email protected]':
110+ optional: true
111+
112+ '@pnpm/[email protected]':
113+ optional: true
114+
115+ '@pnpm/[email protected]':
116+ optional: true
117+
118+ '@pnpm/[email protected]':
119+ optional: true
120+
121+ '@pnpm/[email protected]':
122+ optional: true
123+
124+ '@pnpm/[email protected]':
125+ optional: true
126+
127+ '@pnpm/[email protected]':
128+ optional: true
129+
130+ '@pnpm/[email protected]':
131+ optional: true
132+
133+ '@pnpm/[email protected]':
134+ optional: true
135+
136+ '@pnpm/[email protected]':
137+ optional: true
138+
139+ '@pnpm/[email protected]':
140+ optional: true
141+
142+ [email protected]:
143+ optionalDependencies:
144+ '@pnpm/exe.android-arm64': 12.10.1
145+ '@pnpm/exe.android-x64': 12.10.1
146+ '@pnpm/exe.darwin-arm64': 12.10.1
147+ '@pnpm/exe.darwin-x64': 12.10.1
148+ '@pnpm/exe.freebsd-x64': 12.10.1
149+ '@pnpm/exe.linux-arm64': 12.10.1
150+ '@pnpm/exe.linux-arm64-musl': 12.10.1
151+ '@pnpm/exe.linux-ppc64': 12.10.1
152+ '@pnpm/exe.linux-riscv64': 12.10.1
153+ '@pnpm/exe.linux-s390x': 12.10.1
154+ '@pnpm/exe.linux-x64': 12.10.1
155+ '@pnpm/exe.linux-x64-musl': 12.10.1
156+ '@pnpm/exe.win32-arm64': 12.10.1
157+ '@pnpm/exe.win32-x64': 12.10.1
158+
159+---
160+lockfileVersion: '9.0'
161+
162+settings:
163+ autoInstallPeers: true
164+ excludeLinksFromLockfile: false
165+
166+importers:
167+
168+ .:
169+ devDependencies:
170+ wrangler:
171+ specifier: ^4.149.0
172+ version: 4.149.0
173+
174+packages:
175+
176+ '@cloudflare/[email protected]':
177+ resolution: {integrity: sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg==}
178+ engines: {node: '>=22.0.0'}
179+
180+ '@cloudflare/[email protected]':
181+ resolution: {integrity: sha512-JBP1+Z7ZSNG/d4mRP+y8VC5dka3tZVMLEZRvS+rzQ4DGV1EoxRFQckcJTTkXbHSQiTj0DtNI01Zwb/V2fX0mvQ==}
182+ peerDependencies:
183+ unenv: 2.0.0-rc.24
184+ workerd: '>1.20260305.0 <2.0.0-0'
185+ peerDependenciesMeta:
186+ workerd:
187+ optional: true
188+
189+ '@cloudflare/[email protected]':
190+ resolution: {integrity: sha512-lCX6avJO2It9AyDEYitjmOtJRVp/xmaW0TziyoLAnfxlzozyyRbSFfIIMMCiDx/sTP1++E4VLbV+7BHSD33f0Q==}
191+ engines: {node: '>=16'}
192+ cpu: [x64]
193+ os: [darwin]
194+
195+ '@cloudflare/[email protected]':
196+ resolution: {integrity: sha512-PyFGjOaldtppnLuKsdkoYWXfLVpDjuf8u+uoykX+1Xvxo2EPmCVViq0iDKm+U7c7PRno85ehS3/MPVXyk2HwHw==}
197+ engines: {node: '>=16'}
198+ cpu: [arm64]
199+ os: [darwin]
200+
201+ '@cloudflare/[email protected]':
202+ resolution: {integrity: sha512-Ntf9S8eesmVufdjaT2kzWlz6Ng9XGYTc6cHQVRKAg59lFufwsIabGeMT6U4KkrpEeSIxgHq8aPtuLbZXE19tCA==}
203+ engines: {node: '>=16'}
204+ cpu: [x64]
205+ os: [linux]
206+
207+ '@cloudflare/[email protected]':
208+ resolution: {integrity: sha512-JyeDBymVWw5tVRebSsVE8ojDYxd6UlZrAseHU8G+NpIyd5wF61tXlF/axLeCUqu0pOhBFHb8I5QKi0jwrCK41Q==}
209+ engines: {node: '>=16'}
210+ cpu: [arm64]
211+ os: [linux]
212+
213+ '@cloudflare/[email protected]':
214+ resolution: {integrity: sha512-nWP0URNqOBN9fa/gZ7eh/w051DwjOXN8j4lDZDYVXyQPsux6sV3DfyYZT+CjR/rt9nKBSmJT9QE9/bWT18+84w==}
215+ engines: {node: '>=16'}
216+ cpu: [x64]
217+ os: [win32]
218+
219+ '@cspotcode/[email protected]':
220+ resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==}
221+ engines: {node: '>=12'}
222+
223+ '@emnapi/[email protected]':
224+ resolution: {integrity: sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA==}
225+
226+ '@esbuild/[email protected]':
227+ resolution: {integrity: sha512-XExcO+dvLKvVtNTibSTBej1NCAbaGhWn9Ww1ZPx80qsahhPFe/8jgWP0IchNe0F3HwkU7n8ejhH8bjonqht8mQ==}
228+ engines: {node: '>=18'}
229+ cpu: [ppc64]
230+ os: [aix]
231+
232+ '@esbuild/[email protected]':
233+ resolution: {integrity: sha512-5YfKeeI8qWfBZIX+u2xZC3Zlb3Os/gLS2sbEKM+I4ZOcsWmHS2WLysCcQZDAFRslDUU5Oiq44gf6PYN1vGwG5A==}
234+ engines: {node: '>=18'}
235+ cpu: [arm64]
236+ os: [android]
237+
238+ '@esbuild/[email protected]':
239+ resolution: {integrity: sha512-kXXoiPVVGQcnIYGOeaovwOURpniDBpSq4A03qkQ+BMQqtGG6HYap3xne9C1O1yo4TR3qxlCX5IqqmX6fFo2Lqg==}
240+ engines: {node: '>=18'}
241+ cpu: [arm]
242+ os: [android]
243+
244+ '@esbuild/[email protected]':
245+ resolution: {integrity: sha512-O387ite7SzUyCcy3JQX4P4bLtEA7bLLkx+esve5JHnyYfNTxcVpXZo9jhdB0lTKN44gztELTdU7nS8Nr16Fs1Q==}
246+ engines: {node: '>=18'}
247+ cpu: [x64]
248+ os: [android]
249+
250+ '@esbuild/[email protected]':
251+ resolution: {integrity: sha512-n4KqkOQrraxHJcgjM1RvwbigfQKIKJVpM7xp+KsxiyUSrRdIXnt73VhrPAx0fV44hgfmIVKjxMN9J1t5jySVkw==}
252+ engines: {node: '>=18'}
253+ cpu: [arm64]
254+ os: [darwin]
255+
256+ '@esbuild/[email protected]':
257+ resolution: {integrity: sha512-uq6suIWYP37qzGddBKPw5QEQPi6HiLGsO7UmkpfyaYNQ3D+rN6w6WfwH+nuqcGXWvawGwxOEroO4YGnFh95azw==}
258+ engines: {node: '>=18'}
259+ cpu: [x64]
260+ os: [darwin]
261+
262+ '@esbuild/[email protected]':
263+ resolution: {integrity: sha512-n+I0BTSRIoy+d6RPKnEVwql5UwBJolytvY4mAOIEJorKlqgPII8ix6slVVrfZ5Tnj7glIZvloylbB/EJPMWEXw==}
264+ engines: {node: '>=18'}
265+ cpu: [arm64]
266+ os: [freebsd]
267+
268+ '@esbuild/[email protected]':
269+ resolution: {integrity: sha512-78XJTJkvPs0kz2w61301PJjXl4g7q3JqiYMZ/M/yVI73EHBrCRTgkhu9oqG7vPqq+a/yadEW8aD+agKlk5xrmg==}
270+ engines: {node: '>=18'}
271+ cpu: [x64]
272+ os: [freebsd]
273+
274+ '@esbuild/[email protected]':
275+ resolution: {integrity: sha512-pW4AC0P3it8c7do9MVM4p51FzHzdM/TZrerurgRcHJ2WTa1VQ1CIq18xncfpBJw4ojkiZZrKW2yIBWBP92j6Ug==}
276+ engines: {node: '>=18'}
277+ cpu: [arm64]
278+ os: [linux]
279+
280+ '@esbuild/[email protected]':
281+ resolution: {integrity: sha512-XlDnu2q5yoqems+xay6wSAcg9DDD7K9RLKZEBOMZm3ckNpJBvOX20tSfby8KfrrhINDyv9V2YVZKY/SpoGJI8w==}
282+ engines: {node: '>=18'}
283+ cpu: [arm]
284+ os: [linux]
285+
286+ '@esbuild/[email protected]':
287+ resolution: {integrity: sha512-CYbnj78HsIeA+DhgUKgFCfvNsTHFhMMrinUrMZpDXJXKN8T3XViTZ/+wtHeVxEWY8ewSzTFN+nRmSwO2tZaLUQ==}
288+ engines: {node: '>=18'}
289+ cpu: [ia32]
290+ os: [linux]
291+
292+ '@esbuild/[email protected]':
293+ resolution: {integrity: sha512-buwkd8nsph4R+ajRvw0qM5Hja/TXQow3ptzWO2EbG/cqcIkHloRrdlBtQlshyYGTNFvfkfJ5tpPLVkY4DtsPfQ==}
294+ engines: {node: '>=18'}
295+ cpu: [loong64]
296+ os: [linux]
297+
298+ '@esbuild/[email protected]':
299+ resolution: {integrity: sha512-ZVykbDyk7519VwiNb9Lcj9m8XM6v5V9uKPvrEMkkEedVewf+0itkhahp4HDpgERXhwLRpWFypsGbG/J8s0QjJA==}
300+ engines: {node: '>=18'}
301+ cpu: [mips64el]
302+ os: [linux]
303+
304+ '@esbuild/[email protected]':
305+ resolution: {integrity: sha512-CAXl+Dtd9UUuJd8pKKdwh6MLm3MUMiqMPmhZ3tTSXPqfyQ3vDl6R5hZdZ/kYojK4ofXtdfSv1tFq8XzWx3heNQ==}
306+ engines: {node: '>=18'}
307+ cpu: [ppc64]
308+ os: [linux]
309+
310+ '@esbuild/[email protected]':
311+ resolution: {integrity: sha512-GeXCej4IQtU1B+QlDV8W/RRvbzI3O/Stss+/bCXv4lZls5WGRtu2a+3JkA3i4qIUlMXpcHebWpF8AkJhATowuA==}
312+ engines: {node: '>=18'}
313+ cpu: [riscv64]
314+ os: [linux]
315+
316+ '@esbuild/[email protected]':
317+ resolution: {integrity: sha512-3H1weTYZPxt/WOhByszQZybS9w5lKzUn1FDMsgEChbHWQwHYQQRfBxgCcZvPhjHfKyJjIievvMmEUawJrdY9Dg==}
318+ engines: {node: '>=18'}
319+ cpu: [s390x]
320+ os: [linux]
321+
322+ '@esbuild/[email protected]':
323+ resolution: {integrity: sha512-4xTZr1FUmSoQW4XIWmit3tzQrUTZM+N3P0XV8xROKYF50XfI7xeO90+1bZvNwxIufQ9hDQVRJH5YhgPVF8A/HQ==}
324+ engines: {node: '>=18'}
325+ cpu: [x64]
326+ os: [linux]
327+
328+ '@esbuild/[email protected]':
329+ resolution: {integrity: sha512-sSATRjPeDBg3pdgHoQfoYBob11Kk1FGa9lui5RIHZCoCkJa9QKlvl3/vKz2usCmYYjs7ymJR/2Nnsqe+Hjt5nw==}
330+ engines: {node: '>=18'}
331+ cpu: [arm64]
332+ os: [netbsd]
333+
334+ '@esbuild/[email protected]':
335+ resolution: {integrity: sha512-lqnzCV+mM0gIADaKihiCg6ifgfU2L3h5E33rNQBN1Y4MaVGnzryzmvvf7UHxprpQdE8hpqLolJ9Rl+SkIRDpyw==}
336+ engines: {node: '>=18'}
337+ cpu: [x64]
338+ os: [netbsd]
339+
340+ '@esbuild/[email protected]':
341+ resolution: {integrity: sha512-AL2qJILH7lNjrDmCQDvdxMfAUIv8KMNZOvrwAQ8i8//ntL9FflhOyMJ8OZSMBb8/AWXe3/5v5S20y3zCoZWKoQ==}
342+ engines: {node: '>=18'}
343+ cpu: [arm64]
344+ os: [openbsd]
345+
346+ '@esbuild/[email protected]':
347+ resolution: {integrity: sha512-QtiuPytchRyC4rwUKhexJdQKvDuZ6hWloi3igqPQNUJCS1/v9EiO3UTOXR6A3FoMo4fnAKbWJdqaIwhOzh8qEw==}
348+ engines: {node: '>=18'}
349+ cpu: [x64]
350+ os: [openbsd]
351+
352+ '@esbuild/[email protected]':
353+ resolution: {integrity: sha512-WkhYDmpTjLvGlScA1rwjRUmhl4k8oXR3cIbtqWmELgU/dFeHHlEllxDvdWcNJV9rbzCexB5vz8gtNewWLgCT7Q==}
354+ engines: {node: '>=18'}
355+ cpu: [arm64]
356+ os: [openharmony]
357+
358+ '@esbuild/[email protected]':
359+ resolution: {integrity: sha512-GPMSkTOtMnv2U2F8gxe4Io6qmVs+YKyp832Etqqxr0hFngmXQ3rzwytelm3GIn7T4VviRUlf3sOgBOiTdvaf7g==}
360+ engines: {node: '>=18'}
361+ cpu: [x64]
362+ os: [sunos]
363+
364+ '@esbuild/[email protected]':
365+ resolution: {integrity: sha512-PIhhEkE9uPBleRBrQEJpUn7MBnibZzbGzYWPmY3x+YoVg/95zbjB4CxPPOQ8l5tYYM4mMaCthF8/1DIfBQQyWQ==}
366+ engines: {node: '>=18'}
367+ cpu: [arm64]
368+ os: [win32]
369+
370+ '@esbuild/[email protected]':
371+ resolution: {integrity: sha512-YmJbfTlvU7Sdn9BB+4PRES4oB6pxgS37MAONj+hBr/cpXS1aBPKXxNnDbu+QCWPj0o9dgyxeq79g6c5P8KeuYA==}
372+ engines: {node: '>=18'}
373+ cpu: [ia32]
374+ os: [win32]
375+
376+ '@esbuild/[email protected]':
377+ resolution: {integrity: sha512-5ebpxr3nWMzrL/rnUI755Jkuee0bHL/Gq0WTF9lvcpv73wAp5eu8MfBUgWK9bhWvZjj7yX8etf/8tI8Ney695g==}
378+ engines: {node: '>=18'}
379+ cpu: [x64]
380+ os: [win32]
381+
382+ '@img/[email protected]':
383+ resolution: {integrity: sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==}
384+ engines: {node: '>=18'}
385+
386+ '@img/[email protected]':
387+ resolution: {integrity: sha512-QRUlFQ0WxvdWyqqG/WtI3iupfD5rBzmCHXSdPsY91sAtVtTo7Q4cb6zOccZ3gqEqkr0f1As1ehLqmEpDsRf+lg==}
388+ engines: {node: '>=20.9.0'}
389+ cpu: [arm64]
390+ os: [darwin]
391+
392+ '@img/[email protected]':
393+ resolution: {integrity: sha512-+BR255RhDlpygUpOc/Jdt1nT6DQ3XG/ERo5wbcdOf5Q320dKtPCKPLR1LJs9VGXRaMa8l1uUa0tkCNOXiAxZUw==}
394+ engines: {node: '>=20.9.0'}
395+ cpu: [x64]
396+ os: [darwin]
397+
398+ '@img/[email protected]':
399+ resolution: {integrity: sha512-Y/z91nEZ4uIBX5X3nfTovjU9lHNKFYbL2lpHCLVNmXQK03VIZvXBBt0KxbPGp2SdGSF+2mQU4e+hQaWOt86iAw==}
400+ engines: {node: '>=20.9.0'}
401+ os: [freebsd]
402+
403+ '@img/[email protected]':
404+ resolution: {integrity: sha512-5R89nBYiRdUlSWJxPhO+GVtaXzXSxKnRu/xqMn3KTA3L9EB9Oy/P+Nn2f2vlhPuUdy/Zusb2DarbyTpGCfEDuw==}
405+ cpu: [arm64]
406+ os: [darwin]
407+
408+ '@img/[email protected]':
409+ resolution: {integrity: sha512-iR2OKH80yi0U+dUplyh3/xdpFvps6YkCwsXenIJxqxR1v9o+xtKTGbS9H7cps+2Vxjc8B1j96p75NmTGjIhtpQ==}
410+ cpu: [x64]
411+ os: [darwin]
412+
413+ '@img/[email protected]':
414+ resolution: {integrity: sha512-Y3dgX/6lE2QhQb+Gxy0WZxfg9MEm/JBjamZpS2IklP7xIQoKN4hzAm7KcMVGtaVDt3neE9OKBC7vAfonA/Lr1A==}
415+ cpu: [arm64]
416+ os: [linux]
417+ libc: [glibc]
418+
419+ '@img/[email protected]':
420+ resolution: {integrity: sha512-LmRtTsOHuvM2+wlO2Db37dx5MiZhB0FvSunciw48YjdOkZz9KAiRbm8ujeMOA1INqmei5NapFxYEK1D1ZSidmw==}
421+ cpu: [arm]
422+ os: [linux]
423+ libc: [glibc]
424+
425+ '@img/[email protected]':
426+ resolution: {integrity: sha512-Le6boB8Tai0Nis+gIxIpKx68UDVVIqdR8Tin5Yf1z2LJJQLDJvCDRqRu+jC2qCoD+eIomonmOwB4smBRxfVpYQ==}
427+ cpu: [ppc64]
428+ os: [linux]
429+ libc: [glibc]
430+
431+ '@img/[email protected]':
432+ resolution: {integrity: sha512-aHkkIEHPRdQEegJN20MLmGtxYD9R2wQr3Cwpddnu5+YKMt6Uzax7S9h5gpZTo8wyrGuZSlfQ63OevL5mTyOC7Q==}
433+ cpu: [riscv64]
434+ os: [linux]
435+ libc: [glibc]
436+
437+ '@img/[email protected]':
438+ resolution: {integrity: sha512-ra/mB6MikESDUO7Yg+Mi95bFBb9GsObURuhnOv3OqknjGe9sZrG8tCe9q0xSIGrtLgvgw0gKnFWcK4blSgQOuQ==}
439+ cpu: [s390x]
440+ os: [linux]
441+ libc: [glibc]
442+
443+ '@img/[email protected]':
444+ resolution: {integrity: sha512-GJ//SSXbnwSDes02umB3nDJLFcQzw8a18V8fyhqr6tV515tOEMdImjjxj1AoafMRz56F3PHgftnj1QEKSU1zkw==}
445+ cpu: [x64]
446+ os: [linux]
447+ libc: [glibc]
448+
449+ '@img/[email protected]':
450+ resolution: {integrity: sha512-hvulFwtjUcagsis6BBxHwGFwWoNZjgYmULGVrZcyfNbjA8hKILbRxGg15/7w5HDyXHXUos/j6baAWqnCyQ2DWA==}
451+ cpu: [arm64]
452+ os: [linux]
453+ libc: [musl]
454+
455+ '@img/[email protected]':
456+ resolution: {integrity: sha512-6zXKeE/p39I1AmA3cJG35eyBGNqNddLnUXjhwBnsGjFPWqf5VKkDBEqaEkPDoTEtkxwi2vv8Tcr2mDyP4So7Fg==}
457+ cpu: [x64]
458+ os: [linux]
459+ libc: [musl]
460+
461+ '@img/[email protected]':
462+ resolution: {integrity: sha512-LYVx5JTsOM2CBzmxreh+nl64/3H6Xb09iSLknqH47z2T2DFFxDeFLP5y4dJwe6H7uGQlHPyEEtIqyo3DYsRwdQ==}
463+ engines: {node: '>=20.9.0'}
464+ cpu: [arm64]
465+ os: [linux]
466+ libc: [glibc]
467+
468+ '@img/[email protected]':
469+ resolution: {integrity: sha512-LEaXK2WdXVK5ykcw0buWyPMsmLLL2vpHLD6yrNSW+JGEL3BZPA4tpKN6iaMc4AxTTAoaX/sU1rOL51lcIz48ZQ==}
470+ engines: {node: '>=20.9.0'}
471+ cpu: [arm]
472+ os: [linux]
473+ libc: [glibc]
474+
475+ '@img/[email protected]':
476+ resolution: {integrity: sha512-QVxAAq8evVRI9ia2vqgwrmWucn5Dfv+JdWzj75pD8omHLPSP7f8p20O8jxzjCcuCEQEOtYOZUmX1hkiZ0kdevA==}
477+ engines: {node: '>=20.9.0'}
478+ cpu: [ppc64]
479+ os: [linux]
480+ libc: [glibc]
481+
482+ '@img/[email protected]':
483+ resolution: {integrity: sha512-LtdreXguaavKODPIfzJ4kffx7UNt1omwtK0rch4EBbbSTXPnxWmYSayXdLJw0fJzQ97kHt1gL/yh4tvU+nCyRQ==}
484+ engines: {node: '>=20.9.0'}
485+ cpu: [riscv64]
486+ os: [linux]
487+ libc: [glibc]
488+
489+ '@img/[email protected]':
490+ resolution: {integrity: sha512-UZasTOFiYzotTsGOCu42BfUzP6Tu6Do/947iRm1RsLKvlllxwGcn4RN27LibGWceix4Y+Pmw3jsnTcCQIgWjqA==}
491+ engines: {node: '>=20.9.0'}
492+ cpu: [s390x]
493+ os: [linux]
494+ libc: [glibc]
495+
496+ '@img/[email protected]':
497+ resolution: {integrity: sha512-SxFtLTeJInhAA9Q836kux2vZNeOBQEx658qvbboZScr0wIARym3IcGmW7KpVD5sbVg0Ojy+udFQdayYIZyoNog==}
498+ engines: {node: '>=20.9.0'}
499+ cpu: [x64]
500+ os: [linux]
501+ libc: [glibc]
502+
503+ '@img/[email protected]':
504+ resolution: {integrity: sha512-9HbMclmI1zlNkFRs3z9/eBtDjfD0sGlrX1z6b1qwmiFY5ElDLh4BC0LPBdVp7z1DXFiKlIcznf+ZlsuZzLxQqg==}
505+ engines: {node: '>=20.9.0'}
506+ cpu: [arm64]
507+ os: [linux]
508+ libc: [musl]
509+
510+ '@img/[email protected]':
511+ resolution: {integrity: sha512-4KOphqB035HrVdqLZfCgMzzERrQkkzOwRhl4OAkRO1YCldbaFjySXMaK534Mo0V+LndnlJk+sbUyLeU0ULyD1A==}
512+ engines: {node: '>=20.9.0'}
513+ cpu: [x64]
514+ os: [linux]
515+ libc: [musl]
516+
517+ '@img/[email protected]':
518+ resolution: {integrity: sha512-Ptsga1su4tQx+LLF1ECS9U6nz5kmrXKo6XVbtR48Ke3ZRxxgaWBu7IDtEe1quo8hiupwm6WFqxVlXaSf7IINGQ==}
519+ engines: {node: '>=20.9.0'}
520+
521+ '@img/[email protected]':
522+ resolution: {integrity: sha512-hfhF/FmoQyTUkA0bIKFOtw536BQSeBMe6BF6QyWlrPxT754+TFLaZ7sKKTfvvM0yJgKgaYTwnFCIZ/GuDw5SUA==}
523+ engines: {node: '>=20.9.0'}
524+ cpu: [wasm32]
525+
526+ '@img/[email protected]':
527+ resolution: {integrity: sha512-X4t7g+7ZA5DKblCBEXGjUqqemj4vczING/5viFwAL8h4N3qYeyjwdCvRLHi4EdOUI+2Z7UFlp1VM+p/AuEtm6Q==}
528+ engines: {node: '>=20.9.0'}
529+ cpu: [arm64]
530+ os: [win32]
531+
532+ '@img/[email protected]':
533+ resolution: {integrity: sha512-5Zm82LoBc43nhwNybZlG7Y1KO//Zhsn306fQl29ZOuStHLGTo3BWL83q3cznX0poxSAMuYL1On/BHBxkBeKr6A==}
534+ engines: {node: ^20.9.0}
535+ cpu: [ia32]
536+ os: [win32]
537+
538+ '@img/[email protected]':
539+ resolution: {integrity: sha512-x76eH0vEiHlcMQu8Y8IenntaACtddpT6W0wmXtWrnKcnKI7ME5DdgqhAD6SEWOEl1v2zDvkZDhFA9KnURwpfqg==}
540+ engines: {node: '>=20.9.0'}
541+ cpu: [x64]
542+ os: [win32]
543+
544+ '@jridgewell/[email protected]':
545+ resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
546+ engines: {node: '>=6.0.0'}
547+
548+ '@jridgewell/[email protected]':
549+ resolution: {integrity: sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==}
550+
551+ '@jridgewell/[email protected]':
552+ resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
553+
554+ '@poppinss/[email protected]':
555+ resolution: {integrity: sha512-H9xkIdFswbS8n1d6vmRd8+c10t2Qe+rZITbbDHHkQixH5+2x1FDGmi/0K+WgWiqQFKPSlIYB7jlH6Kpfn6Fleg==}
556+
557+ '@poppinss/[email protected]':
558+ resolution: {integrity: sha512-NBdYIb90J7LfOI32dOewKI1r7wnkiH6m920puQ3qHUeZkxNkQiFnXVWoE6YtFSv6QOiPPf7ys6i+HWWecDz7sw==}
559+
560+ '@poppinss/[email protected]':
561+ resolution: {integrity: sha512-dCED+QRChTVatE9ibtoaxc+WkdzOSjYTKi/+uacHWIsfodVfpsueo3+DKpgU5Px8qXjgmXkSvhXvSCz3fnP9lw==}
562+
563+ '@sindresorhus/[email protected]':
564+ resolution: {integrity: sha512-P1Cz1dWaFfR4IR+U13mqqiGsLFf1KbayybWwdd2vfctdV6hDpUkgCY0nKOLLTMSoRd/jJNjtbqzf13K8DCCXQw==}
565+ engines: {node: '>=18'}
566+
567+ '@speed-highlight/[email protected]':
568+ resolution: {integrity: sha512-qeW2e1l78afw8VhRPfPQ1Gjj+KU5XFQ/OFV5ti6eTa9bruO7mJyZtA4vw0ofqmA3tKCkROE9xLk3VZoeRc98nw==}
569+
570+ [email protected]:
571+ resolution: {integrity: sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==}
572+
573+ [email protected]:
574+ resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==}
575+ engines: {node: '>=18'}
576+
577+ [email protected]:
578+ resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==}
579+ engines: {node: '>=8'}
580+
581+ [email protected]:
582+ resolution: {integrity: sha512-5qucVt2XcuGMcEGgWI7i+yZpmpByQ8J1lHhcL7PwqCwu9FPP3VUXzT4ltHe5i2z9dePwEHcDVOAfSnHsOlCXRA==}
583+
584+ [email protected]:
585+ resolution: {integrity: sha512-HKVLS8dvII+xoKW9kmqxbRKrnWEXfJJr/FZhhJmiqIB0e053QNYFqOBouTMO/k5sID4MvCiUCvv8b9M4h32wIA==}
586+ engines: {node: '>=18'}
587+ hasBin: true
588+
589+ [email protected]:
590+ resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
591+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
592+ os: [darwin]
593+
594+ [email protected]:
595+ resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
596+ engines: {node: '>=6'}
597+
598+ [email protected]:
599+ resolution: {integrity: sha512-6ylv8tamkrspDI2R/cAYfv+YWmfGNdXe76Pi9TauEUWsFVXn3LNF9Yk8oduzf1a+TYsSRYTqlOE7+nGGRsMHdw==}
600+ engines: {node: '>=22.0.0'}
601+
602+ [email protected]:
603+ resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==}
604+
605+ [email protected]:
606+ resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==}
607+
608+ [email protected]:
609+ resolution: {integrity: sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==}
610+ engines: {node: '>=10'}
611+ hasBin: true
612+
613+ [email protected]:
614+ resolution: {integrity: sha512-Ywn4OnzGukp7CDMrp08RQ50YKmuwG47brZgIVPTvBaaAfQlRlygrRqSrxdCiL9M+LlzLBiJ68IR1QqvzHyjC7g==}
615+ engines: {node: '>=20.9.0'}
616+ peerDependencies:
617+ '@types/node': '*'
618+ peerDependenciesMeta:
619+ '@types/node':
620+ optional: true
621+
622+ [email protected]:
623+ resolution: {integrity: sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==}
624+ engines: {node: '>=18'}
625+
626+ [email protected]:
627+ resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
628+
629+ [email protected]:
630+ resolution: {integrity: sha512-RYONW2MeafgYlkVOKYKkA/Ag7BmXqgIWCa8t1m0JcxrQg9pI9lEqRhAOruOBCbAohOa/gkCF+iPi9hrgvTzu6Q==}
631+ engines: {node: '>=20.18.1'}
632+
633+ [email protected]:
634+ resolution: {integrity: sha512-i7qRCmY42zmCwnYlh9H2SvLEypEFGye5iRmEMKjcGi7zk9UquigRjFtTLz0TYqr0ZGLZhaMHl/foy1bZR+Cwlw==}
635+
636+ [email protected]:
637+ resolution: {integrity: sha512-8MadBuffZ5NdpLwZjUmsqT5QlaKXq4gjgT6wzcKeynZTICNXyePhc+5QVoKiK7+MMhFTLNrRO2KXLlpk8Q6BkA==}
638+ engines: {node: '>=16'}
639+ hasBin: true
640+
641+ [email protected]:
642+ resolution: {integrity: sha512-OzK7xmB5r5iLKb3cIT3783g13fe6T7xyeKu9LEdUyl+DKAM2KP/jkjnE0OUhyw+mB/XJM9ycjgF3MWm8PR9amg==}
643+ engines: {node: '>=22.0.0'}
644+ hasBin: true
645+ peerDependencies:
646+ '@cloudflare/workers-types': ^5.20261006.1
647+ peerDependenciesMeta:
648+ '@cloudflare/workers-types':
649+ optional: true
650+
651+ [email protected]:
652+ resolution: {integrity: sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==}
653+ engines: {node: '>=10.0.0'}
654+ peerDependencies:
655+ bufferutil: ^4.0.1
656+ utf-8-validate: '>=5.0.2'
657+ peerDependenciesMeta:
658+ bufferutil:
659+ optional: true
660+ utf-8-validate:
661+ optional: true
662+
663+ [email protected]:
664+ resolution: {integrity: sha512-ho7XuGjLaJ2hWHoK8yFnsUGy2Y5uDpqSTq1FkHLK4/oqKtyUU1AFbOOxY4IpC9f0fTLjwYbslUz0Po5BpD1wrA==}
665+
666+ [email protected]:
667+ resolution: {integrity: sha512-rLfVLB4FgQneDr0dv1oddCVZmKjcJ6yX6mS4pU82Mq/Dt9a3cLZQ62pDBL4AUO+uVrCvtWz3ZFUL2HFAFJ/BXQ==}
668+
669+snapshots:
670+
671+ '@cloudflare/[email protected]': {}
672+
673+ '@cloudflare/[email protected]([email protected])([email protected])':
674+ dependencies:
675+ unenv: 2.0.0-rc.24
676+ optionalDependencies:
677+ workerd: 1.20261006.1
678+
679+ '@cloudflare/[email protected]':
680+ optional: true
681+
682+ '@cloudflare/[email protected]':
683+ optional: true
684+
685+ '@cloudflare/[email protected]':
686+ optional: true
687+
688+ '@cloudflare/[email protected]':
689+ optional: true
690+
691+ '@cloudflare/[email protected]':
692+ optional: true
693+
694+ '@cspotcode/[email protected]':
695+ dependencies:
696+ '@jridgewell/trace-mapping': 0.3.9
697+
698+ '@emnapi/[email protected]':
699+ dependencies:
700+ tslib: 2.8.1
701+ optional: true
702+
703+ '@esbuild/[email protected]':
704+ optional: true
705+
706+ '@esbuild/[email protected]':
707+ optional: true
708+
709+ '@esbuild/[email protected]':
710+ optional: true
711+
712+ '@esbuild/[email protected]':
713+ optional: true
714+
715+ '@esbuild/[email protected]':
716+ optional: true
717+
718+ '@esbuild/[email protected]':
719+ optional: true
720+
721+ '@esbuild/[email protected]':
722+ optional: true
723+
724+ '@esbuild/[email protected]':
725+ optional: true
726+
727+ '@esbuild/[email protected]':
728+ optional: true
729+
730+ '@esbuild/[email protected]':
731+ optional: true
732+
733+ '@esbuild/[email protected]':
734+ optional: true
735+
736+ '@esbuild/[email protected]':
737+ optional: true
738+
739+ '@esbuild/[email protected]':
740+ optional: true
741+
742+ '@esbuild/[email protected]':
743+ optional: true
744+
745+ '@esbuild/[email protected]':
746+ optional: true
747+
748+ '@esbuild/[email protected]':
749+ optional: true
750+
751+ '@esbuild/[email protected]':
752+ optional: true
753+
754+ '@esbuild/[email protected]':
755+ optional: true
756+
757+ '@esbuild/[email protected]':
758+ optional: true
759+
760+ '@esbuild/[email protected]':
761+ optional: true
762+
763+ '@esbuild/[email protected]':
764+ optional: true
765+
766+ '@esbuild/[email protected]':
767+ optional: true
768+
769+ '@esbuild/[email protected]':
770+ optional: true
771+
772+ '@esbuild/[email protected]':
773+ optional: true
774+
775+ '@esbuild/[email protected]':
776+ optional: true
777+
778+ '@esbuild/[email protected]':
779+ optional: true
780+
781+ '@img/[email protected]': {}
782+
783+ '@img/[email protected]':
784+ optionalDependencies:
785+ '@img/sharp-libvips-darwin-arm64': 1.3.4
786+ optional: true
787+
788+ '@img/[email protected]':
789+ optionalDependencies:
790+ '@img/sharp-libvips-darwin-x64': 1.3.4
791+ optional: true
792+
793+ '@img/[email protected]':
794+ dependencies:
795+ '@img/sharp-wasm32': 0.35.5
796+ optional: true
797+
798+ '@img/[email protected]':
799+ optional: true
800+
801+ '@img/[email protected]':
802+ optional: true
803+
804+ '@img/[email protected]':
805+ optional: true
806+
807+ '@img/[email protected]':
808+ optional: true
809+
810+ '@img/[email protected]':
811+ optional: true
812+
813+ '@img/[email protected]':
814+ optional: true
815+
816+ '@img/[email protected]':
817+ optional: true
818+
819+ '@img/[email protected]':
820+ optional: true
821+
822+ '@img/[email protected]':
823+ optional: true
824+
825+ '@img/[email protected]':
826+ optional: true
827+
828+ '@img/[email protected]':
829+ optionalDependencies:
830+ '@img/sharp-libvips-linux-arm64': 1.3.4
831+ optional: true
832+
833+ '@img/[email protected]':
834+ optionalDependencies:
835+ '@img/sharp-libvips-linux-arm': 1.3.4
836+ optional: true
837+
838+ '@img/[email protected]':
839+ optionalDependencies:
840+ '@img/sharp-libvips-linux-ppc64': 1.3.4
841+ optional: true
842+
843+ '@img/[email protected]':
844+ optionalDependencies:
845+ '@img/sharp-libvips-linux-riscv64': 1.3.4
846+ optional: true
847+
848+ '@img/[email protected]':
849+ optionalDependencies:
850+ '@img/sharp-libvips-linux-s390x': 1.3.4
851+ optional: true
852+
853+ '@img/[email protected]':
854+ optionalDependencies:
855+ '@img/sharp-libvips-linux-x64': 1.3.4
856+ optional: true
857+
858+ '@img/[email protected]':
859+ optionalDependencies:
860+ '@img/sharp-libvips-linuxmusl-arm64': 1.3.4
861+ optional: true
862+
863+ '@img/[email protected]':
864+ optionalDependencies:
865+ '@img/sharp-libvips-linuxmusl-x64': 1.3.4
866+ optional: true
867+
868+ '@img/[email protected]':
869+ dependencies:
870+ '@emnapi/runtime': 1.11.3
871+ optional: true
872+
873+ '@img/[email protected]':
874+ dependencies:
875+ '@img/sharp-wasm32': 0.35.5
876+ optional: true
877+
878+ '@img/[email protected]':
879+ optional: true
880+
881+ '@img/[email protected]':
882+ optional: true
883+
884+ '@img/[email protected]':
885+ optional: true
886+
887+ '@jridgewell/[email protected]': {}
888+
889+ '@jridgewell/[email protected]': {}
890+
891+ '@jridgewell/[email protected]':
892+ dependencies:
893+ '@jridgewell/resolve-uri': 3.1.2
894+ '@jridgewell/sourcemap-codec': 1.6.0
895+
896+ '@poppinss/[email protected]':
897+ dependencies:
898+ kleur: 4.1.5
899+
900+ '@poppinss/[email protected]':
901+ dependencies:
902+ '@poppinss/colors': 4.1.6
903+ '@sindresorhus/is': 7.2.0
904+ supports-color: 10.2.2
905+
906+ '@poppinss/[email protected]': {}
907+
908+ '@sindresorhus/[email protected]': {}
909+
910+ '@speed-highlight/[email protected]': {}
911+
912+ [email protected]: {}
913+
914+ [email protected]: {}
915+
916+ [email protected]: {}
917+
918+ [email protected]: {}
919+
920+ [email protected]:
921+ optionalDependencies:
922+ '@esbuild/aix-ppc64': 0.28.2
923+ '@esbuild/android-arm': 0.28.2
924+ '@esbuild/android-arm64': 0.28.2
925+ '@esbuild/android-x64': 0.28.2
926+ '@esbuild/darwin-arm64': 0.28.2
927+ '@esbuild/darwin-x64': 0.28.2
928+ '@esbuild/freebsd-arm64': 0.28.2
929+ '@esbuild/freebsd-x64': 0.28.2
930+ '@esbuild/linux-arm': 0.28.2
931+ '@esbuild/linux-arm64': 0.28.2
932+ '@esbuild/linux-ia32': 0.28.2
933+ '@esbuild/linux-loong64': 0.28.2
934+ '@esbuild/linux-mips64el': 0.28.2
935+ '@esbuild/linux-ppc64': 0.28.2
936+ '@esbuild/linux-riscv64': 0.28.2
937+ '@esbuild/linux-s390x': 0.28.2
938+ '@esbuild/linux-x64': 0.28.2
939+ '@esbuild/netbsd-arm64': 0.28.2
940+ '@esbuild/netbsd-x64': 0.28.2
941+ '@esbuild/openbsd-arm64': 0.28.2
942+ '@esbuild/openbsd-x64': 0.28.2
943+ '@esbuild/openharmony-arm64': 0.28.2
944+ '@esbuild/sunos-x64': 0.28.2
945+ '@esbuild/win32-arm64': 0.28.2
946+ '@esbuild/win32-ia32': 0.28.2
947+ '@esbuild/win32-x64': 0.28.2
948+
949+ [email protected]:
950+ optional: true
951+
952+ [email protected]: {}
953+
954+ [email protected]:
955+ dependencies:
956+ '@cspotcode/source-map-support': 0.8.1
957+ sharp: 0.35.5
958+ undici: 7.29.1
959+ workerd: 1.20261006.1
960+ ws: 8.21.0
961+ youch: 4.1.0-beta.10
962+ transitivePeerDependencies:
963+ - '@types/node'
964+ - bufferutil
965+ - utf-8-validate
966+
967+ [email protected]: {}
968+
969+ [email protected]: {}
970+
971+ [email protected]: {}
972+
973+ [email protected]:
974+ dependencies:
975+ '@img/colour': 1.1.0
976+ detect-libc: 2.1.2
977+ semver: 7.8.5
978+ optionalDependencies:
979+ '@img/sharp-darwin-arm64': 0.35.5
980+ '@img/sharp-darwin-x64': 0.35.5
981+ '@img/sharp-freebsd-wasm32': 0.35.5
982+ '@img/sharp-libvips-darwin-arm64': 1.3.4
983+ '@img/sharp-libvips-darwin-x64': 1.3.4
984+ '@img/sharp-libvips-linux-arm': 1.3.4
985+ '@img/sharp-libvips-linux-arm64': 1.3.4
986+ '@img/sharp-libvips-linux-ppc64': 1.3.4
987+ '@img/sharp-libvips-linux-riscv64': 1.3.4
988+ '@img/sharp-libvips-linux-s390x': 1.3.4
989+ '@img/sharp-libvips-linux-x64': 1.3.4
990+ '@img/sharp-libvips-linuxmusl-arm64': 1.3.4
991+ '@img/sharp-libvips-linuxmusl-x64': 1.3.4
992+ '@img/sharp-linux-arm': 0.35.5
993+ '@img/sharp-linux-arm64': 0.35.5
994+ '@img/sharp-linux-ppc64': 0.35.5
995+ '@img/sharp-linux-riscv64': 0.35.5
996+ '@img/sharp-linux-s390x': 0.35.5
997+ '@img/sharp-linux-x64': 0.35.5
998+ '@img/sharp-linuxmusl-arm64': 0.35.5
999+ '@img/sharp-linuxmusl-x64': 0.35.5
1000+ '@img/sharp-webcontainers-wasm32': 0.35.5
1001+ '@img/sharp-win32-arm64': 0.35.5
1002+ '@img/sharp-win32-ia32': 0.35.5
1003+ '@img/sharp-win32-x64': 0.35.5
1004+
1005+ [email protected]: {}
1006+
1007+ [email protected]:
1008+ optional: true
1009+
1010+ [email protected]: {}
1011+
1012+ [email protected]:
1013+ dependencies:
1014+ pathe: 2.0.3
1015+
1016+ [email protected]:
1017+ optionalDependencies:
1018+ '@cloudflare/workerd-darwin-64': 1.20261006.1
1019+ '@cloudflare/workerd-darwin-arm64': 1.20261006.1
1020+ '@cloudflare/workerd-linux-64': 1.20261006.1
1021+ '@cloudflare/workerd-linux-arm64': 1.20261006.1
1022+ '@cloudflare/workerd-windows-64': 1.20261006.1
1023+
1024+ [email protected]:
1025+ dependencies:
1026+ '@cloudflare/kv-asset-handler': 0.5.0
1027+ '@cloudflare/unenv-preset': 2.16.2([email protected])([email protected])
1028+ blake3-wasm: 2.1.5
1029+ esbuild: 0.28.2
1030+ miniflare: 5.20261006.1-alpha
1031+ path-to-regexp: 6.3.0
1032+ unenv: 2.0.0-rc.24
1033+ workerd: 1.20261006.1
1034+ optionalDependencies:
1035+ fsevents: 2.3.3
1036+ transitivePeerDependencies:
1037+ - '@types/node'
1038+ - bufferutil
1039+ - utf-8-validate
1040+
1041+ [email protected]: {}
1042+
1043+ [email protected]:
1044+ dependencies:
1045+ '@poppinss/exception': 1.2.3
1046+ error-stack-parser-es: 1.0.5
1047+
1048+ [email protected]:
1049+ dependencies:
1050+ '@poppinss/colors': 4.1.6
1051+ '@poppinss/dumper': 0.6.5
1052+ '@speed-highlight/core': 1.2.24
1053+ cookie: 1.1.1
1054+ youch-core: 0.3.3
+4,
-0
1@@ -0,0 +1,4 @@
2+allowBuilds:
3+ esbuild: true
4+ workerd: true
5+ pnpm: true