-
-
setRepoUrl(e.target.value)}
- required
- />
+
+
+
+
+
setRepoUrl(e.target.value)}
+ required
+ />
+
+
+
+
+
-
-
-
+
+ onCustomReverseCheckboxChange(e.target.checked)
+ }
+ />
+ Manuel Kontrol
+
+ {customReverse ? (
+
+ ) : null}
-
-
- Try example repos:
-
- {HOME_EXAMPLES.map(({ label, url }) => (
-
-
-
+ {manualStatusLine}
+
+ ) : (
+
+ )}
+
+ ) : (
+
+
+ Örnek depoları deneyin
+
+ {HOME_EXAMPLES.map(({ label, url }) => (
+
+
+
+
+ ))}
+
+ )}
{rateLimited ? (
-
Sorry, we're a bit overwhelmed right now.
+
Üzgünüz, biz' şuanda baya hararetli durumdayız, sonra gel olurmu?
-
Come back in a couple of hours, or check out what others have already generated:
+
Bir kaç saat içinde geri gelin, yada zaten oluşturduğumuz komut istemlerine bakın.
- Browse the library
+ Kütüphaneyi gez
@@ -422,7 +762,7 @@ export function ReversePromptHome({
- Reverse engineered prompt
+ Tersine mühendislikle oluşturulan komut
{reverseEngineeredRepo ? (
@@ -459,7 +799,7 @@ export function ReversePromptHome({
onClick={copyPrompt}
className="relative z-10 rounded border-[3px] border-zinc-900 bg-[#ffc480] px-3 py-1.5 text-xs font-medium text-zinc-900 transition-transform group-hover:-translate-x-px group-hover:-translate-y-px"
>
- {copied ? "Copied!" : "Copy"}
+ {copied ? "Kopyalandı!" : "Copy"}
@@ -467,6 +807,26 @@ export function ReversePromptHome({
{prompt}
+ {!lastResultWasCustom && !loading ? (
+
+ Biraz daha derinlikmi?{" "}
+
+ void runCustomReverse(repoUrl.trim(), { mode: "deep" })
+ }
+ onKeyDown={(e) => {
+ if (e.key !== "Enter" && e.key !== " ") return;
+ e.preventDefault();
+ void runCustomReverse(repoUrl.trim(), { mode: "deep" });
+ }}
+ >
+ Derin Tersine Mühendislik
+
+
+ ) : null}
) : null}
@@ -489,7 +849,7 @@ export function ReversePromptHome({
>
- Discord
+ Discord Sunucumuz
diff --git a/lib/file-tree-formatter.ts b/lib/file-tree-formatter.ts
index 91c4f69..784e2b2 100644
--- a/lib/file-tree-formatter.ts
+++ b/lib/file-tree-formatter.ts
@@ -1,5 +1,5 @@
/**
- * Formats GitHub file tree data into a readable directory structure.
+ * GitHub dosya ağacı verisini okunabilir formata dönüştürür.
*/
interface FileTreeItem {
diff --git a/lib/focus-fingerprint.ts b/lib/focus-fingerprint.ts
new file mode 100644
index 0000000..d57f09d
--- /dev/null
+++ b/lib/focus-fingerprint.ts
@@ -0,0 +1,9 @@
+import { createHash } from "node:crypto";
+
+/** UTF-8 formatındaki focus öğesinin MD5 onaltılık değeri — Postgres’teki `md5(focus::text)` ile eşleşmelidir (`focus_fingerprint`). */
+export function focusFingerprint(focus: string): string {
+ return createHash("md5").update(focus, "utf8").digest("hex");
+}
+
+/** Deep Reverse için akış / önbellek anahtarı. */
+export const DEEP_REVERSE_FOCUS = "[deep] whole codebase";
diff --git a/lib/github-client.ts b/lib/github-client.ts
index 0571e09..21d9cb4 100644
--- a/lib/github-client.ts
+++ b/lib/github-client.ts
@@ -1,5 +1,5 @@
/**
- * GitHub API Client — native fetch.
+ * GitHub API İstemcisi - Native Fetch
*/
const GITHUB_API = "https://api.github.com";
diff --git a/lib/home-example-repos.ts b/lib/home-example-repos.ts
index 65b14f8..98f19ef 100644
--- a/lib/home-example-repos.ts
+++ b/lib/home-example-repos.ts
@@ -1,6 +1,6 @@
import { normalizeRepoSegment, parseGitHubRepoInput } from "@/lib/parse-github-repo";
-/** Hero “Try example repos” — excluded from view-count tracking so usage stats stay representative. */
+/** Hero “Örnek Depoları deneyin” — görüntüleme sayımı izlemesinden hariç tutulmuştur; böylece kullanım istatistikleri temsil edici kalır.*/
export const HOME_EXAMPLES = [
{ label: "Next.js", url: "https://github.com/vercel/next.js" },
{ label: "Openclaw", url: "https://github.com/openclaw/openclaw" },
diff --git a/lib/parse-github-repo.ts b/lib/parse-github-repo.ts
index 2654b03..9e40804 100644
--- a/lib/parse-github-repo.ts
+++ b/lib/parse-github-repo.ts
@@ -20,7 +20,7 @@ export function parseGitHubRepoInput(
return { owner: parts[0], repo: withoutGit(parts[1]) };
}
} catch {
- // fall through to owner/repo form
+ // Sahip/Depo formuna doğru düş
}
const parts = s.split("/").filter(Boolean);
@@ -31,12 +31,12 @@ export function parseGitHubRepoInput(
return null;
}
-/** Strip trailing `.git` for path validation (URL segment may include it). */
+/** Yol Doğrulaması (.git) (URL parçası bunu dahil edebilir). */
export function normalizeRepoSegment(repo: string): string {
return repo.trim().replace(/\.git$/i, "");
}
-/** Validates dynamic route segments for `/[owner]/[repo]`. */
+/** `/[owner]/[repo]` için dinamik yol parçalarını doğrular. */
export function isValidGitHubRepoPath(owner: string, repo: string): boolean {
const o = owner.trim();
const r = normalizeRepoSegment(repo);
diff --git a/lib/supabase.ts b/lib/supabase.ts
index 6816278..0e93d6d 100644
--- a/lib/supabase.ts
+++ b/lib/supabase.ts
@@ -2,7 +2,7 @@ import { createClient, type SupabaseClient } from "@supabase/supabase-js";
let cached: SupabaseClient | null = null;
-/** Server-side Supabase client; returns null if env is not configured (cache disabled). */
+/** Sunucu Tarafı Supabase istemcisi; ortam ayarlanmamışsa "null" döner. (cache disabled). */
export function getSupabase(): SupabaseClient | null {
const url = process.env.SUPABASE_URL?.trim();
const key = process.env.SUPABASE_PUBLISHABLE_KEY?.trim();
diff --git a/lib/system-prompt.ts b/lib/system-prompt.ts
index d8b2a81..ee7d852 100644
--- a/lib/system-prompt.ts
+++ b/lib/system-prompt.ts
@@ -1,32 +1,32 @@
/**
- * System prompt: synthesize one user-facing prompt from repo context (README, tree, metadata).
+ * Sistem Promptu: depo içeriğinden kullanıcıya yönelik komut istemi oluşturma. (README, tree, metadata).
*/
-export const SYSTEM_PROMPT = `You are an expert at inferring how people actually prompt modern coding agents.
+export const SYSTEM_PROMPT = `Sen modern kodlama ajanlarının insanların gerçekte nasıl prompt yazdığını çıkarsamada uzmansın.
-## Task
+## Görev
-You are given **repository metadata**, a **root file tree** (depth 1), and the **README** for a public GitHub project. Output **one synthetic user message**: the kind of prompt a **non-technical or lightly technical** person might paste into Cursor, Claude Code, Codex, ChatGPT code mode, or v0 to get this project built in one "vibe coding" pass.
+Sana bir public GitHub projesinin repository metadatası, kök dosya ağacı (1. derinlik) ve README dosyası verilecek. Bir sentetik kullanıcı mesajı yaz: Cursor, Claude Code, Codex, ChatGPT kod modu veya v0 gibi araçlara tek bir "vibe coding" geçişinde bu projeyi yaptırmak için teknik olmayan ya da hafif teknik bir kişinin yapıştırabileceği türden bir prompt.
-## What the output must be
+## Çıktının özellikleri
-- **Plain language.** Sounds like a real request ("Build me…", "I want…"), not an architecture doc.
-- **Outcome focused.** Describe what the app or library should *do* for a user using words a normal person would use.
-- **Honest scope.** Only claim features or stacks you infer from the README and tree you received. If the README was missing, empty, or uninformative, say so implicitly by keeping claims vague or limited to what the metadata suggests.
-- **Length:** about **120 to 200 words**, usually one short paragraph or a few tight sentences. Not a bullet list of file paths or dependencies.
-- **Tone:** natural and conversational. Use contractions when they fit. No preamble ("Sure, here is…"), no meta ("As an AI…"), no filler.
+- Sade dil. Gerçek bir istek gibi ses çıkarsın ("Bana şunu yap…", "İstiyorum ki…"), mimari belge gibi değil.
+- Sonuç odaklı. Uygulamanın ya da kütüphanenin kullanıcı için ne yapacağını sıradan bir insanın kullanacağı kelimelerle anlat.
+- Dürüst kapsam. Sadece README'den ve ağaçtan çıkarsadığın özellikleri ya da teknoloji yığınlarını öne sür. README eksikse, boşsa ya da bilgi vermiyorsa bunu dolaylı olarak yansıt; iddiaları muğlak bırak ya da yalnızca metadatanın ima ettikleriyle sınırla.
+- Uzunluk: yaklaşık 120 ile 200 kelime, genellikle kısa bir paragraf ya da birkaç sıkı cümle. Dosya yolları veya bağımlılıkların madde listesi olmasın.
+- Ton: doğal ve sohbet havasında. Uygun düştüğünde kısaltma kullan. Giriş cümlesi yok ("Tabii, işte…"), meta yorum yok ("Bir yapay zeka olarak…"), dolgu yok.
-## What to avoid
+## Kaçınılacaklar
-- Dumping framework jargon, exact package names, or folder structure unless the README clearly shows the user cared about that.
-- Writing agent *system* instructions, markdown specs, or pseudo-code blocks.
-- Inventing features that are not supported by the evidence in the context.
+- README'de kullanıcının önemsediği açıkça gösterilmiyorsa framework jargonu, tam paket adları veya klasör yapısı dökme.
+- Ajan sistem talimatları, markdown spesifikasyonları veya sözde kod blokları yazma.
+- Bağlamdan desteklenmeyen özellikler icat etme.
-## Context you can assume about tools
+## Araçlar hakkında varsayılabilecek bağlam
-Many agents today can **search the web**, **read docs**, and iterate in the IDE. It is fine for the synthetic prompt to include **one short line** like "look up current docs online if you need to" when that matches how people actually work. Do not turn the whole prompt into a product tutorial.
+Günümüzdeki pek çok ajan web'de arama yapabilir, dokümantasyon okuyabilir ve IDE içinde iterasyon yapabilir. İnsanların gerçekten böyle çalıştığıyla örtüşüyorsa, sentetik prompta "gerekirse güncel dokümanlara internetten bakabilirsin" gibi kısa bir satır eklemek uygundur. Promptun tamamını ürün anlatısına dönüştürme.
-## Output format
+## Çıktı formatı
-Reply with **only** the synthetic user message. No title, no quotes around it, no explanation before or after.
+Yalnızca sentetik kullanıcı mesajını yaz. Başlık yok, etrafında tırnak yok, önce ya da sonra açıklama yok.
`;
diff --git a/next.config.ts b/next.config.ts
index e9ffa30..9fc09aa 100644
--- a/next.config.ts
+++ b/next.config.ts
@@ -1,7 +1,7 @@
import type { NextConfig } from "next";
const nextConfig: NextConfig = {
- /* config options here */
+ /* Yapılandırma ayarları buraya! */
};
export default nextConfig;
diff --git a/package.json b/package.json
index b5b672c..e70a84c 100644
--- a/package.json
+++ b/package.json
@@ -13,7 +13,8 @@
"@vercel/analytics": "^2.0.1",
"next": "16.2.1",
"react": "19.2.4",
- "react-dom": "19.2.4"
+ "react-dom": "19.2.4",
+ "undici": "^8.1.0"
},
"devDependencies": {
"@tailwindcss/postcss": "^4",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 3b1c3a1..e05fb9e 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -23,6 +23,9 @@ importers:
react-dom:
specifier: 19.2.4
version: 19.2.4(react@19.2.4)
+ undici:
+ specifier: ^8.1.0
+ version: 8.1.0
devDependencies:
'@tailwindcss/postcss':
specifier: ^4
@@ -215,105 +218,89 @@ packages:
resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==}
cpu: [arm64]
os: [linux]
- libc: [glibc]
'@img/sharp-libvips-linux-arm@1.2.4':
resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==}
cpu: [arm]
os: [linux]
- libc: [glibc]
'@img/sharp-libvips-linux-ppc64@1.2.4':
resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==}
cpu: [ppc64]
os: [linux]
- libc: [glibc]
'@img/sharp-libvips-linux-riscv64@1.2.4':
resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==}
cpu: [riscv64]
os: [linux]
- libc: [glibc]
'@img/sharp-libvips-linux-s390x@1.2.4':
resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==}
cpu: [s390x]
os: [linux]
- libc: [glibc]
'@img/sharp-libvips-linux-x64@1.2.4':
resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==}
cpu: [x64]
os: [linux]
- libc: [glibc]
'@img/sharp-libvips-linuxmusl-arm64@1.2.4':
resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==}
cpu: [arm64]
os: [linux]
- libc: [musl]
'@img/sharp-libvips-linuxmusl-x64@1.2.4':
resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==}
cpu: [x64]
os: [linux]
- libc: [musl]
'@img/sharp-linux-arm64@0.34.5':
resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
os: [linux]
- libc: [glibc]
'@img/sharp-linux-arm@0.34.5':
resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm]
os: [linux]
- libc: [glibc]
'@img/sharp-linux-ppc64@0.34.5':
resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [ppc64]
os: [linux]
- libc: [glibc]
'@img/sharp-linux-riscv64@0.34.5':
resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [riscv64]
os: [linux]
- libc: [glibc]
'@img/sharp-linux-s390x@0.34.5':
resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [s390x]
os: [linux]
- libc: [glibc]
'@img/sharp-linux-x64@0.34.5':
resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [x64]
os: [linux]
- libc: [glibc]
'@img/sharp-linuxmusl-arm64@0.34.5':
resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
os: [linux]
- libc: [musl]
'@img/sharp-linuxmusl-x64@0.34.5':
resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [x64]
os: [linux]
- libc: [musl]
'@img/sharp-wasm32@0.34.5':
resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==}
@@ -380,28 +367,24 @@ packages:
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- libc: [glibc]
'@next/swc-linux-arm64-musl@16.2.1':
resolution: {integrity: sha512-ssKq6iMRnHdnycGp9hCuGnXJZ0YPr4/wNwrfE5DbmvEcgl9+yv97/Kq3TPVDfYome1SW5geciLB9aiEqKXQjlQ==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- libc: [musl]
'@next/swc-linux-x64-gnu@16.2.1':
resolution: {integrity: sha512-HQm7SrHRELJ30T1TSmT706IWovFFSRGxfgUkyWJZF/RKBMdbdRWJuFrcpDdE5vy9UXjFOx6L3mRdqH04Mmx0hg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
- libc: [glibc]
'@next/swc-linux-x64-musl@16.2.1':
resolution: {integrity: sha512-aV2iUaC/5HGEpbBkE+4B8aHIudoOy5DYekAKOMSHoIYQ66y/wIVeaRx8MS2ZMdxe/HIXlMho4ubdZs/J8441Tg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
- libc: [musl]
'@next/swc-win32-arm64-msvc@16.2.1':
resolution: {integrity: sha512-IXdNgiDHaSk0ZUJ+xp0OQTdTgnpx1RCfRTalhn3cjOP+IddTMINwA7DXZrwTmGDO8SUr5q2hdP/du4DcrB1GxA==}
@@ -506,28 +489,24 @@ packages:
engines: {node: '>= 20'}
cpu: [arm64]
os: [linux]
- libc: [glibc]
'@tailwindcss/oxide-linux-arm64-musl@4.2.2':
resolution: {integrity: sha512-oCfG/mS+/+XRlwNjnsNLVwnMWYH7tn/kYPsNPh+JSOMlnt93mYNCKHYzylRhI51X+TbR+ufNhhKKzm6QkqX8ag==}
engines: {node: '>= 20'}
cpu: [arm64]
os: [linux]
- libc: [musl]
'@tailwindcss/oxide-linux-x64-gnu@4.2.2':
resolution: {integrity: sha512-rTAGAkDgqbXHNp/xW0iugLVmX62wOp2PoE39BTCGKjv3Iocf6AFbRP/wZT/kuCxC9QBh9Pu8XPkv/zCZB2mcMg==}
engines: {node: '>= 20'}
cpu: [x64]
os: [linux]
- libc: [glibc]
'@tailwindcss/oxide-linux-x64-musl@4.2.2':
resolution: {integrity: sha512-XW3t3qwbIwiSyRCggeO2zxe3KWaEbM0/kW9e8+0XpBgyKU4ATYzcVSMKteZJ1iukJ3HgHBjbg9P5YPRCVUxlnQ==}
engines: {node: '>= 20'}
cpu: [x64]
os: [linux]
- libc: [musl]
'@tailwindcss/oxide-wasm32-wasi@4.2.2':
resolution: {integrity: sha512-eKSztKsmEsn1O5lJ4ZAfyn41NfG7vzCg496YiGtMDV86jz1q/irhms5O0VrY6ZwTUkFy/EKG3RfWgxSI3VbZ8Q==}
@@ -684,49 +663,41 @@ packages:
resolution: {integrity: sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==}
cpu: [arm64]
os: [linux]
- libc: [glibc]
'@unrs/resolver-binding-linux-arm64-musl@1.11.1':
resolution: {integrity: sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==}
cpu: [arm64]
os: [linux]
- libc: [musl]
'@unrs/resolver-binding-linux-ppc64-gnu@1.11.1':
resolution: {integrity: sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==}
cpu: [ppc64]
os: [linux]
- libc: [glibc]
'@unrs/resolver-binding-linux-riscv64-gnu@1.11.1':
resolution: {integrity: sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==}
cpu: [riscv64]
os: [linux]
- libc: [glibc]
'@unrs/resolver-binding-linux-riscv64-musl@1.11.1':
resolution: {integrity: sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==}
cpu: [riscv64]
os: [linux]
- libc: [musl]
'@unrs/resolver-binding-linux-s390x-gnu@1.11.1':
resolution: {integrity: sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==}
cpu: [s390x]
os: [linux]
- libc: [glibc]
'@unrs/resolver-binding-linux-x64-gnu@1.11.1':
resolution: {integrity: sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==}
cpu: [x64]
os: [linux]
- libc: [glibc]
'@unrs/resolver-binding-linux-x64-musl@1.11.1':
resolution: {integrity: sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==}
cpu: [x64]
os: [linux]
- libc: [musl]
'@unrs/resolver-binding-wasm32-wasi@1.11.1':
resolution: {integrity: sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==}
@@ -1516,28 +1487,24 @@ packages:
engines: {node: '>= 12.0.0'}
cpu: [arm64]
os: [linux]
- libc: [glibc]
lightningcss-linux-arm64-musl@1.32.0:
resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==}
engines: {node: '>= 12.0.0'}
cpu: [arm64]
os: [linux]
- libc: [musl]
lightningcss-linux-x64-gnu@1.32.0:
resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==}
engines: {node: '>= 12.0.0'}
cpu: [x64]
os: [linux]
- libc: [glibc]
lightningcss-linux-x64-musl@1.32.0:
resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==}
engines: {node: '>= 12.0.0'}
cpu: [x64]
os: [linux]
- libc: [musl]
lightningcss-win32-arm64-msvc@1.32.0:
resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==}
@@ -1975,6 +1942,10 @@ packages:
undici-types@6.21.0:
resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==}
+ undici@8.1.0:
+ resolution: {integrity: sha512-E9MkTS4xXLnRPYqxH2e6Hr2/49e7WFDKczKcCaFH4VaZs2iNvHMqeIkyUAD9vM8kujy9TjVrRlQ5KkdEJxB2pw==}
+ engines: {node: '>=22.19.0'}
+
unrs-resolver@1.11.1:
resolution: {integrity: sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==}
@@ -4122,6 +4093,8 @@ snapshots:
undici-types@6.21.0: {}
+ undici@8.1.0: {}
+
unrs-resolver@1.11.1:
dependencies:
napi-postinstall: 0.3.4