spec-cat 0.1.28 → 0.1.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.output/nitro.json +1 -1
- package/.output/public/_nuxt/{DykekIOz.js → BYSSU_C5.js} +1 -1
- package/.output/public/_nuxt/{DXzkgxwX.js → BuAdOXGq.js} +1 -1
- package/.output/public/_nuxt/BvFtAA65.js +85 -0
- package/.output/public/_nuxt/{DJnEVOKq.js → C3xB8Cgs.js} +1 -1
- package/.output/public/_nuxt/{DSUO3OjT.js → C7HUOCmf.js} +1 -1
- package/.output/public/_nuxt/{BnjcVEL-.js → CjahVUNV.js} +1 -1
- package/.output/public/_nuxt/{XuDblT7a.js → DHRTMwte.js} +1 -1
- package/.output/public/_nuxt/{BRd9HFwL.js → DJrEvjo-.js} +2 -2
- package/.output/public/_nuxt/{C6ilGlzF.js → DL_gJOgv.js} +1 -1
- package/.output/public/_nuxt/{2nXTHzKg.js → DWfl6VER.js} +1 -1
- package/.output/public/_nuxt/{DWeUOMg4.js → Dpc_a9DZ.js} +1 -1
- package/.output/public/_nuxt/{80f7bXLB.js → WBf5CG5l.js} +1 -1
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/65ae0c7c-58de-4f20-a97f-c1be9bfe34bb.json +1 -0
- package/.output/public/_nuxt/{default.D3bZ26KV.css → default.D9amvrGI.css} +1 -1
- package/.output/public/_nuxt/entry.D8StCG4P.css +1 -0
- package/.output/public/_nuxt/ggQsoUsu.js +1 -0
- package/.output/server/chunks/_/aiProviderSelection.mjs +1 -1
- package/.output/server/chunks/_/claude.mjs +1 -1
- package/.output/server/chunks/_/claudeService.mjs +1 -1
- package/.output/server/chunks/_/conversationStore.mjs +1 -1
- package/.output/server/chunks/build/client.precomputed.mjs +1 -1
- package/.output/server/chunks/build/client.precomputed.mjs.map +1 -1
- package/.output/server/chunks/nitro/nitro.mjs +657 -657
- package/.output/server/chunks/routes/api/conversations/_conversationId/archive.post.mjs +1 -1
- package/.output/server/chunks/routes/api/conversations/archives/_archiveId/restore.post.mjs +1 -1
- package/.output/server/chunks/routes/api/conversations/archives/_archiveId_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/git/commit/_id_.get.mjs +1 -1
- package/.output/server/chunks/routes/api/git/tag/_name_.get.mjs +1 -1
- package/.output/server/chunks/routes/api/jobs/_id/cancel.post.mjs +1 -1
- package/.output/server/chunks/routes/api/jobs/_id_.get.mjs +1 -1
- package/.output/server/chunks/routes/api/rebase/ai-resolve.post.mjs +208 -32
- package/.output/server/chunks/routes/api/rebase/ai-resolve.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings.get.mjs +1 -1
- package/.output/server/chunks/routes/api/settings.post.mjs +1 -1
- package/.output/server/chunks/routes/api/skills/_skillId/prompt.post.mjs +1 -1
- package/.output/server/chunks/routes/api/specs/_featureId/_...filename_.get.mjs +1 -1
- package/.output/server/chunks/routes/api/specs/_featureId/_...filename_.put.mjs +1 -1
- package/.output/server/chunks/routes/api/specs/traceability/_featureId_.get.mjs +1 -1
- package/.output/server/chunks/routes/api/worktrees/_name/switch.post.mjs +1 -1
- package/.output/server/chunks/routes/api/worktrees/_name_.delete.mjs +1 -1
- package/.output/server/node_modules/onnxruntime-node/bin/napi-v3/linux/x64/libonnxruntime.so.1.14.0 +0 -0
- package/.output/server/package.json +1 -1
- package/package.json +1 -1
- package/.output/public/_nuxt/CoA0shxq.js +0 -93
- package/.output/public/_nuxt/builds/meta/28d9e18f-8df1-4f6c-a452-5573f8625b68.json +0 -1
- package/.output/public/_nuxt/entry.B1b8QW5b.css +0 -1
- package/.output/public/_nuxt/xtHaEzqj.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, c as createError, e as getProjectDir, l as logger } from '../../../../nitro/nitro.mjs';
|
|
2
2
|
import { exec } from 'node:child_process';
|
|
3
3
|
import { existsSync } from 'node:fs';
|
|
4
4
|
import { rm } from 'node:fs/promises';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, b as readBody, c as createError, e as getProjectDir, l as logger } from '../../../../../nitro/nitro.mjs';
|
|
2
2
|
import { exec } from 'node:child_process';
|
|
3
3
|
import { promisify } from 'node:util';
|
|
4
4
|
import { r as readConversationStorageState, a as generateConversationId, w as writeConversationStorageState } from '../../../../../_/conversationStore.mjs';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, c as createError } from '../../../../nitro/nitro.mjs';
|
|
2
2
|
import { r as readConversationStorageState, w as writeConversationStorageState } from '../../../../_/conversationStore.mjs';
|
|
3
3
|
import 'node:http';
|
|
4
4
|
import 'node:https';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, c as createError } from '../../../../nitro/nitro.mjs';
|
|
2
2
|
import { h as getCommitDetail } from '../../../../_/git.mjs';
|
|
3
3
|
import { a as resolveWorkingDirectoryFromQuery, h as handleGitApiError } from '../../../../_/gitApiHelpers.mjs';
|
|
4
4
|
import 'node:http';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, c as createError } from '../../../../nitro/nitro.mjs';
|
|
2
2
|
import { V as getTagDetail } from '../../../../_/git.mjs';
|
|
3
3
|
import { a as resolveWorkingDirectoryFromQuery, h as handleGitApiError } from '../../../../_/gitApiHelpers.mjs';
|
|
4
4
|
import 'node:http';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, c as createError } from '../../../../nitro/nitro.mjs';
|
|
2
2
|
import { j as jobQueue } from '../../../../_/jobQueue.mjs';
|
|
3
3
|
import 'node:http';
|
|
4
4
|
import 'node:https';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, c as createError, f as getQuery } from '../../../nitro/nitro.mjs';
|
|
2
2
|
import { j as jobQueue } from '../../../_/jobQueue.mjs';
|
|
3
3
|
import 'node:http';
|
|
4
4
|
import 'node:https';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { d as defineEventHandler, b as readBody, c as createError } from '../../../nitro/nitro.mjs';
|
|
1
|
+
import { d as defineEventHandler, b as readBody, c as createError, l as logger } from '../../../nitro/nitro.mjs';
|
|
2
2
|
import { v as validateWorktreePath, a as validateFilePath } from '../../../_/validateWorktree.mjs';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { g as getServerProviderSelection } from '../../../_/aiProviderSelection.mjs';
|
|
4
|
+
import { a as getClaudeCliPath, g as getClaudeModelId } from '../../../_/claude.mjs';
|
|
5
|
+
import { spawn } from 'node:child_process';
|
|
5
6
|
import 'node:http';
|
|
6
7
|
import 'node:https';
|
|
7
8
|
import 'node:crypto';
|
|
@@ -23,10 +24,182 @@ import 'node:os';
|
|
|
23
24
|
import 'node:module';
|
|
24
25
|
import 'node:fs/promises';
|
|
25
26
|
import 'node:url';
|
|
26
|
-
import 'node:child_process';
|
|
27
|
-
import '../../../_/claude.mjs';
|
|
28
27
|
import '../../../_/aiProviderRegistry.mjs';
|
|
29
28
|
|
|
29
|
+
const CONTEXT_LINES = 5;
|
|
30
|
+
function extractConflictBlocks(content) {
|
|
31
|
+
const lines = content.split("\n");
|
|
32
|
+
const blocks = [];
|
|
33
|
+
let i = 0;
|
|
34
|
+
while (i < lines.length) {
|
|
35
|
+
if (/^<{7}\s/.test(lines[i])) {
|
|
36
|
+
const startLine = i;
|
|
37
|
+
let separatorLine = -1;
|
|
38
|
+
let endLine = -1;
|
|
39
|
+
for (let j = i + 1; j < lines.length; j++) {
|
|
40
|
+
if (/^={7}$/.test(lines[j]) && separatorLine === -1) {
|
|
41
|
+
separatorLine = j;
|
|
42
|
+
} else if (/^>{7}\s/.test(lines[j])) {
|
|
43
|
+
endLine = j;
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
if (separatorLine !== -1 && endLine !== -1) {
|
|
48
|
+
const ctxStart = Math.max(0, startLine - CONTEXT_LINES);
|
|
49
|
+
const ctxEnd = Math.min(lines.length - 1, endLine + CONTEXT_LINES);
|
|
50
|
+
const contextLines = lines.slice(ctxStart, ctxEnd + 1);
|
|
51
|
+
const ours = lines.slice(startLine + 1, separatorLine).join("\n");
|
|
52
|
+
const theirs = lines.slice(separatorLine + 1, endLine).join("\n");
|
|
53
|
+
blocks.push({
|
|
54
|
+
startLine,
|
|
55
|
+
endLine,
|
|
56
|
+
contextSnippet: contextLines.join("\n"),
|
|
57
|
+
ours,
|
|
58
|
+
theirs
|
|
59
|
+
});
|
|
60
|
+
i = endLine + 1;
|
|
61
|
+
continue;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
i++;
|
|
65
|
+
}
|
|
66
|
+
return { lines, blocks };
|
|
67
|
+
}
|
|
68
|
+
async function resolveWithCli(prompt, cwd, modelKey) {
|
|
69
|
+
const cliPath = getClaudeCliPath();
|
|
70
|
+
const modelId = getClaudeModelId(modelKey);
|
|
71
|
+
const args = [
|
|
72
|
+
"-p",
|
|
73
|
+
prompt,
|
|
74
|
+
"--output-format",
|
|
75
|
+
"stream-json",
|
|
76
|
+
"--verbose",
|
|
77
|
+
"--model",
|
|
78
|
+
modelId,
|
|
79
|
+
"--max-turns",
|
|
80
|
+
"1",
|
|
81
|
+
"--dangerously-skip-permissions"
|
|
82
|
+
];
|
|
83
|
+
const proc = spawn(cliPath, args, {
|
|
84
|
+
cwd,
|
|
85
|
+
env: { ...process.env, NODE_NO_WARNINGS: "1" },
|
|
86
|
+
stdio: ["pipe", "pipe", "pipe"]
|
|
87
|
+
});
|
|
88
|
+
proc.stdin.end();
|
|
89
|
+
let lineBuffer = "";
|
|
90
|
+
let resultText = "";
|
|
91
|
+
const parseLine = (line) => {
|
|
92
|
+
if (!line.trim()) return;
|
|
93
|
+
try {
|
|
94
|
+
const msg = JSON.parse(line);
|
|
95
|
+
if (msg.type === "assistant" && typeof msg.message === "object" && msg.message) {
|
|
96
|
+
const message = msg.message;
|
|
97
|
+
if (Array.isArray(message.content)) {
|
|
98
|
+
for (const block of message.content) {
|
|
99
|
+
if (block.type === "text" && block.text) {
|
|
100
|
+
resultText += block.text;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
} catch {
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
proc.stdout.on("data", (chunk) => {
|
|
109
|
+
lineBuffer += chunk.toString();
|
|
110
|
+
const lines = lineBuffer.split("\n");
|
|
111
|
+
lineBuffer = lines.pop() || "";
|
|
112
|
+
for (const line of lines) parseLine(line);
|
|
113
|
+
});
|
|
114
|
+
const errorChunks = [];
|
|
115
|
+
proc.stderr.on("data", (chunk) => {
|
|
116
|
+
errorChunks.push(chunk.toString());
|
|
117
|
+
});
|
|
118
|
+
return await new Promise((resolve) => {
|
|
119
|
+
proc.on("close", (code) => {
|
|
120
|
+
if (lineBuffer.trim()) parseLine(lineBuffer);
|
|
121
|
+
if (code === 0) {
|
|
122
|
+
resolve({ success: true, text: resultText });
|
|
123
|
+
} else {
|
|
124
|
+
const stderr = errorChunks.join("").trim();
|
|
125
|
+
resolve({ success: false, error: `CLI exited with code ${code}: ${stderr}`, text: resultText });
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
function extractResolved(raw, marker) {
|
|
131
|
+
const startTag = `===BLOCK_${marker}_START===`;
|
|
132
|
+
const endTag = `===BLOCK_${marker}_END===`;
|
|
133
|
+
const startIdx = raw.indexOf(startTag);
|
|
134
|
+
const endIdx = raw.indexOf(endTag);
|
|
135
|
+
if (startIdx !== -1 && endIdx !== -1 && endIdx > startIdx) {
|
|
136
|
+
return raw.slice(startIdx + startTag.length, endIdx).replace(/^\n/, "").replace(/\n$/, "");
|
|
137
|
+
}
|
|
138
|
+
const codeBlockMatch = raw.match(/```[\w]*\n([\s\S]*?)\n```/);
|
|
139
|
+
if (codeBlockMatch) {
|
|
140
|
+
return codeBlockMatch[1];
|
|
141
|
+
}
|
|
142
|
+
if (/^<{7}\s/m.test(raw)) {
|
|
143
|
+
return null;
|
|
144
|
+
}
|
|
145
|
+
const trimmed = raw.trim();
|
|
146
|
+
if (/^(Now |Here |Let me |I'll |I can |I've |The |This |Looking |Analyzing |Resolved |Conflict )/i.test(trimmed)) {
|
|
147
|
+
return null;
|
|
148
|
+
}
|
|
149
|
+
if (/^\*\*/.test(trimmed) || /^#+\s/.test(trimmed)) {
|
|
150
|
+
return null;
|
|
151
|
+
}
|
|
152
|
+
return trimmed || null;
|
|
153
|
+
}
|
|
154
|
+
function buildBlockPrompt(filePath, blocks, userGuidance) {
|
|
155
|
+
const guidanceLine = userGuidance ? `
|
|
156
|
+
User guidance: ${userGuidance}` : "";
|
|
157
|
+
if (blocks.length === 1) {
|
|
158
|
+
const b = blocks[0];
|
|
159
|
+
return `Resolve this Git merge conflict. Output ONLY the resolved code between the markers.
|
|
160
|
+
|
|
161
|
+
RULES:
|
|
162
|
+
- Remove ALL conflict markers (<<<<<<< ======= >>>>>>>)
|
|
163
|
+
- Merge both sides, preserving the intent of both changes
|
|
164
|
+
- Output only the replacement for the conflict block, not the surrounding context
|
|
165
|
+
${guidanceLine}
|
|
166
|
+
|
|
167
|
+
OUTPUT FORMAT (strict):
|
|
168
|
+
===BLOCK_1_START===
|
|
169
|
+
<resolved code replacing the conflict>
|
|
170
|
+
===BLOCK_1_END===
|
|
171
|
+
|
|
172
|
+
No text before ===BLOCK_1_START=== or after ===BLOCK_1_END===.
|
|
173
|
+
|
|
174
|
+
File: ${filePath}
|
|
175
|
+
Conflict with context:
|
|
176
|
+
${b.contextSnippet}`;
|
|
177
|
+
}
|
|
178
|
+
const blockSections = blocks.map((b, i) => {
|
|
179
|
+
return `--- CONFLICT ${i + 1} ---
|
|
180
|
+
${b.contextSnippet}`;
|
|
181
|
+
}).join("\n\n");
|
|
182
|
+
const outputFormat = blocks.map((_, i) => {
|
|
183
|
+
return `===BLOCK_${i + 1}_START===
|
|
184
|
+
<resolved code for conflict ${i + 1}>
|
|
185
|
+
===BLOCK_${i + 1}_END===`;
|
|
186
|
+
}).join("\n");
|
|
187
|
+
return `Resolve ${blocks.length} Git merge conflicts in file "${filePath}". Output ONLY the resolved code for each block between its markers.
|
|
188
|
+
|
|
189
|
+
RULES:
|
|
190
|
+
- Remove ALL conflict markers (<<<<<<< ======= >>>>>>>)
|
|
191
|
+
- Merge both sides, preserving the intent of both changes
|
|
192
|
+
- Output only the replacement for each conflict block, not surrounding context
|
|
193
|
+
- Maintain output order matching the conflict order
|
|
194
|
+
${guidanceLine}
|
|
195
|
+
|
|
196
|
+
OUTPUT FORMAT (strict \u2014 one section per conflict):
|
|
197
|
+
${outputFormat}
|
|
198
|
+
|
|
199
|
+
No text before the first marker or after the last marker. No explanations.
|
|
200
|
+
|
|
201
|
+
${blockSections}`;
|
|
202
|
+
}
|
|
30
203
|
const aiResolve_post = defineEventHandler(async (event) => {
|
|
31
204
|
const body = await readBody(event);
|
|
32
205
|
if (!(body == null ? void 0 : body.worktreePath) || !(body == null ? void 0 : body.filePath) || !(body == null ? void 0 : body.conflictContent)) {
|
|
@@ -35,36 +208,39 @@ const aiResolve_post = defineEventHandler(async (event) => {
|
|
|
35
208
|
validateWorktreePath(body.worktreePath);
|
|
36
209
|
validateFilePath(body.filePath);
|
|
37
210
|
const selection = await getServerProviderSelection();
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
- \`=======\` separates the two versions
|
|
44
|
-
- \`>>>>>>> ...\` marks the end of "theirs" (incoming branch) changes
|
|
45
|
-
|
|
46
|
-
Your task:
|
|
47
|
-
1. Analyze both sides of each conflict
|
|
48
|
-
2. Produce the best merged result that preserves the intent of both changes
|
|
49
|
-
3. If both sides add different things, include both in a logical order
|
|
50
|
-
4. If both sides modify the same thing differently, choose the most complete/correct version or combine them
|
|
51
|
-
5. Remove ALL conflict markers (<<<<<<, =======, >>>>>>>)
|
|
52
|
-
|
|
53
|
-
IMPORTANT: Output ONLY the complete resolved file content. No explanations, no markdown code blocks, no comments about the resolution. Just the raw file content.
|
|
54
|
-
|
|
55
|
-
File content with conflicts:
|
|
56
|
-
${body.conflictContent}`;
|
|
211
|
+
const { lines, blocks } = extractConflictBlocks(body.conflictContent);
|
|
212
|
+
if (blocks.length === 0) {
|
|
213
|
+
return { success: true, resolvedContent: body.conflictContent };
|
|
214
|
+
}
|
|
215
|
+
const prompt = buildBlockPrompt(body.filePath, blocks, body.userGuidance);
|
|
57
216
|
try {
|
|
58
|
-
const result = await
|
|
59
|
-
if (result.success
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
217
|
+
const result = await resolveWithCli(prompt, body.worktreePath, selection.modelKey);
|
|
218
|
+
if (!result.success || !result.text) {
|
|
219
|
+
return { success: false, error: result.error || "AI resolution failed" };
|
|
220
|
+
}
|
|
221
|
+
const resolvedBlocks = [];
|
|
222
|
+
for (let i = 0; i < blocks.length; i++) {
|
|
223
|
+
const resolved = extractResolved(result.text, String(i + 1));
|
|
224
|
+
if (resolved === null) {
|
|
225
|
+
logger.chat.error("Failed to extract resolved block from AI response", {
|
|
226
|
+
filePath: body.filePath,
|
|
227
|
+
blockIndex: i,
|
|
228
|
+
responsePreview: result.text.slice(0, 300)
|
|
229
|
+
});
|
|
230
|
+
return {
|
|
231
|
+
success: false,
|
|
232
|
+
error: `Failed to extract resolved content for conflict block ${i + 1}/${blocks.length}. AI may have output commentary instead of code.`
|
|
233
|
+
};
|
|
64
234
|
}
|
|
65
|
-
|
|
235
|
+
resolvedBlocks.push(resolved);
|
|
236
|
+
}
|
|
237
|
+
const resultLines = [...lines];
|
|
238
|
+
for (let i = blocks.length - 1; i >= 0; i--) {
|
|
239
|
+
const block = blocks[i];
|
|
240
|
+
const replacementLines = resolvedBlocks[i].split("\n");
|
|
241
|
+
resultLines.splice(block.startLine, block.endLine - block.startLine + 1, ...replacementLines);
|
|
66
242
|
}
|
|
67
|
-
return { success:
|
|
243
|
+
return { success: true, resolvedContent: resultLines.join("\n") };
|
|
68
244
|
} catch (error) {
|
|
69
245
|
const message = error instanceof Error ? error.message : String(error);
|
|
70
246
|
return { success: false, error: message };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-resolve.post.mjs","sources":["../../../../../../server/api/rebase/ai-resolve.post.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ai-resolve.post.mjs","sources":["../../../../../../server/api/rebase/ai-resolve.post.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, h as readSpecCatStore } from '../../nitro/nitro.mjs';
|
|
2
2
|
import { r as resolveServerProviderSelection, D as DEFAULT_MODEL_KEY, c as DEFAULT_PROVIDER_ID } from '../../_/aiProviderSelection.mjs';
|
|
3
3
|
import 'node:http';
|
|
4
4
|
import 'node:https';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler, b as readBody, c as createError,
|
|
1
|
+
import { d as defineEventHandler, b as readBody, c as createError, h as readSpecCatStore, w as writeSpecCatStore } from '../../nitro/nitro.mjs';
|
|
2
2
|
import { r as resolveServerProviderSelection, c as DEFAULT_PROVIDER_ID } from '../../_/aiProviderSelection.mjs';
|
|
3
3
|
import 'node:http';
|
|
4
4
|
import 'node:https';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, c as createError, b as readBody, e as getProjectDir } from '../../../../nitro/nitro.mjs';
|
|
2
2
|
import { readdir } from 'node:fs/promises';
|
|
3
3
|
import { existsSync } from 'node:fs';
|
|
4
4
|
import { resolve, join } from 'node:path';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, c as createError, e as getProjectDir } from '../../../../nitro/nitro.mjs';
|
|
2
2
|
import { readFile } from 'node:fs/promises';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
4
|
import 'node:http';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, c as createError, b as readBody, e as getProjectDir } from '../../../../nitro/nitro.mjs';
|
|
2
2
|
import { writeFile } from 'node:fs/promises';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
4
|
import 'node:http';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, c as createError, e as getProjectDir } from '../../../../nitro/nitro.mjs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
3
|
import { b as buildTraceabilityResponse } from '../../../../_/traceability.mjs';
|
|
4
4
|
import 'node:http';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, f as getQuery, e as getProjectDir, c as createError, l as logger } from '../../../../nitro/nitro.mjs';
|
|
2
2
|
import { exec } from 'node:child_process';
|
|
3
3
|
import { promisify } from 'node:util';
|
|
4
4
|
import 'node:http';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { d as defineEventHandler,
|
|
1
|
+
import { d as defineEventHandler, i as getRouterParam, f as getQuery, e as getProjectDir, c as createError, l as logger } from '../../../nitro/nitro.mjs';
|
|
2
2
|
import { exec } from 'node:child_process';
|
|
3
3
|
import { promisify } from 'node:util';
|
|
4
4
|
import { existsSync } from 'node:fs';
|
package/.output/server/node_modules/onnxruntime-node/bin/napi-v3/linux/x64/libonnxruntime.so.1.14.0
CHANGED
|
Binary file
|