fixdog 0.1.8 → 0.1.11
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/bin/cli.js +4 -0
- package/dist/cli/index.d.ts +47 -2
- package/dist/cli/index.js +224 -22
- package/dist/cli/index.js.map +1 -1
- package/package.json +1 -1
package/bin/cli.js
CHANGED
|
@@ -16,6 +16,8 @@ Options:
|
|
|
16
16
|
--projectId, --project-id, -p <id> Project ID (non-interactive mode)
|
|
17
17
|
--yes, -y Skip confirmation prompt
|
|
18
18
|
--silent, -s Silent mode (no output except errors)
|
|
19
|
+
--update, -u Update existing integration with new project ID
|
|
20
|
+
--local, -l Use local development endpoints (localhost)
|
|
19
21
|
--help, -h Show this help message
|
|
20
22
|
|
|
21
23
|
Examples:
|
|
@@ -23,6 +25,8 @@ Examples:
|
|
|
23
25
|
npx fixdog init --projectId my-project
|
|
24
26
|
npx fixdog init --projectId my-project --yes
|
|
25
27
|
npx fixdog init -p my-project -y
|
|
28
|
+
npx fixdog init -p new-project-id --update
|
|
29
|
+
npx fixdog init -p my-project --local # For local fixdog development
|
|
26
30
|
`);
|
|
27
31
|
};
|
|
28
32
|
|
package/dist/cli/index.d.ts
CHANGED
|
@@ -1,7 +1,52 @@
|
|
|
1
|
-
|
|
1
|
+
export declare const SCRIPT_URL = "https://unpkg.com/fixdog/dist/fixdog.esm.js";
|
|
2
|
+
export declare const LOCAL_SCRIPT_URL = "http://localhost:3030/fixdog.esm.js";
|
|
3
|
+
export declare const LOCAL_AUTH_URL = "http://localhost:4005/sdk/auth";
|
|
4
|
+
export declare const LOCAL_API_ENDPOINT = "http://localhost:8005";
|
|
5
|
+
export declare const VITE_SNIPPET: (projectId: string, options?: {
|
|
6
|
+
local?: boolean;
|
|
7
|
+
}) => string;
|
|
8
|
+
export declare const NEXT_SCRIPT_SNIPPET: (projectId: string, options?: {
|
|
9
|
+
local?: boolean;
|
|
10
|
+
}) => string;
|
|
11
|
+
export declare function detectFramework(): "next" | "vite" | null;
|
|
12
|
+
export declare function detectNextRouter(): "app" | "pages" | null;
|
|
13
|
+
export declare function findFile(paths: string[]): string | null;
|
|
14
|
+
export declare function extractProjectIdFromContent(content: string): string | null;
|
|
15
|
+
export interface InjectionResult {
|
|
16
|
+
file: string;
|
|
17
|
+
before: string;
|
|
18
|
+
after: string;
|
|
19
|
+
}
|
|
20
|
+
export declare function injectViteHtml(projectId: string, options?: {
|
|
21
|
+
update?: boolean;
|
|
22
|
+
currentProjectId?: string;
|
|
23
|
+
local?: boolean;
|
|
24
|
+
}): InjectionResult | null;
|
|
25
|
+
export declare function injectViteConfig(projectId: string, options?: {
|
|
26
|
+
update?: boolean;
|
|
27
|
+
currentProjectId?: string;
|
|
28
|
+
local?: boolean;
|
|
29
|
+
}): InjectionResult | null;
|
|
30
|
+
export declare function injectNextApp(projectId: string, options?: {
|
|
31
|
+
update?: boolean;
|
|
32
|
+
currentProjectId?: string;
|
|
33
|
+
local?: boolean;
|
|
34
|
+
}): InjectionResult | null;
|
|
35
|
+
export declare function injectNextPages(projectId: string, options?: {
|
|
36
|
+
update?: boolean;
|
|
37
|
+
currentProjectId?: string;
|
|
38
|
+
local?: boolean;
|
|
39
|
+
}): InjectionResult | null;
|
|
40
|
+
export declare function checkExistingIntegration(): {
|
|
41
|
+
exists: boolean;
|
|
42
|
+
projectId: string | null;
|
|
43
|
+
file: string | null;
|
|
44
|
+
};
|
|
45
|
+
export interface CliOptions {
|
|
2
46
|
projectId?: string;
|
|
3
47
|
yes?: boolean;
|
|
4
48
|
silent?: boolean;
|
|
49
|
+
update?: boolean;
|
|
50
|
+
local?: boolean;
|
|
5
51
|
}
|
|
6
52
|
export declare function main(options?: CliOptions): Promise<void>;
|
|
7
|
-
export {};
|
package/dist/cli/index.js
CHANGED
|
@@ -1,10 +1,33 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
|
-
import { intro,
|
|
2
|
+
import { intro, outro, spinner, text, confirm } from '@clack/prompts';
|
|
3
3
|
import color from 'picocolors';
|
|
4
4
|
import { diffLines } from 'diff';
|
|
5
5
|
|
|
6
6
|
const SCRIPT_URL = "https://unpkg.com/fixdog/dist/fixdog.esm.js";
|
|
7
|
-
|
|
7
|
+
// Local development URLs
|
|
8
|
+
const LOCAL_SCRIPT_URL = "http://localhost:3030/fixdog.esm.js";
|
|
9
|
+
const LOCAL_AUTH_URL = "http://localhost:4005/sdk/auth";
|
|
10
|
+
const LOCAL_API_ENDPOINT = "http://localhost:8005";
|
|
11
|
+
// ============================================
|
|
12
|
+
// Snippet Generation (exported for backend)
|
|
13
|
+
// ============================================
|
|
14
|
+
const VITE_SNIPPET = (projectId, options) => {
|
|
15
|
+
if (options?.local) {
|
|
16
|
+
return `<script type="module">
|
|
17
|
+
if (import.meta.env.DEV) {
|
|
18
|
+
const params = new URLSearchParams({
|
|
19
|
+
projectId: "${projectId}",
|
|
20
|
+
authUrl: "${LOCAL_AUTH_URL}",
|
|
21
|
+
apiEndpoint: "${LOCAL_API_ENDPOINT}",
|
|
22
|
+
});
|
|
23
|
+
import(
|
|
24
|
+
/* @vite-ignore */
|
|
25
|
+
\`${LOCAL_SCRIPT_URL}?\${params}\`
|
|
26
|
+
);
|
|
27
|
+
}
|
|
28
|
+
</script>`;
|
|
29
|
+
}
|
|
30
|
+
return `<script type="module">
|
|
8
31
|
if (import.meta.env.DEV) {
|
|
9
32
|
import(
|
|
10
33
|
/* @vite-ignore */
|
|
@@ -12,14 +35,25 @@ const VITE_SNIPPET = (projectId) => `<script type="module">
|
|
|
12
35
|
);
|
|
13
36
|
}
|
|
14
37
|
</script>`;
|
|
15
|
-
|
|
38
|
+
};
|
|
39
|
+
const NEXT_SCRIPT_SNIPPET = (projectId, options) => {
|
|
40
|
+
if (options?.local) {
|
|
41
|
+
return `{process.env.NODE_ENV === "development" && (
|
|
42
|
+
<script
|
|
43
|
+
type="module"
|
|
44
|
+
src={\`${LOCAL_SCRIPT_URL}?projectId=${projectId}&authUrl=${encodeURIComponent(LOCAL_AUTH_URL)}&apiEndpoint=${encodeURIComponent(LOCAL_API_ENDPOINT)}\`}
|
|
45
|
+
/>
|
|
46
|
+
)}`;
|
|
47
|
+
}
|
|
48
|
+
return `{process.env.NODE_ENV === "development" && (
|
|
16
49
|
<script
|
|
17
50
|
type="module"
|
|
18
51
|
src="${SCRIPT_URL}?projectId=${projectId}"
|
|
19
52
|
/>
|
|
20
53
|
)}`;
|
|
54
|
+
};
|
|
21
55
|
// ============================================
|
|
22
|
-
// Framework Detection
|
|
56
|
+
// Framework Detection (exported for backend)
|
|
23
57
|
// ============================================
|
|
24
58
|
function detectFramework() {
|
|
25
59
|
if (!fs.existsSync("package.json"))
|
|
@@ -55,21 +89,58 @@ function findFile(paths) {
|
|
|
55
89
|
return paths.find((p) => fs.existsSync(p)) || null;
|
|
56
90
|
}
|
|
57
91
|
// ============================================
|
|
58
|
-
//
|
|
92
|
+
// Project ID Extraction
|
|
59
93
|
// ============================================
|
|
60
|
-
function
|
|
94
|
+
function extractProjectIdFromContent(content) {
|
|
95
|
+
// Match patterns for both production and local mode snippets:
|
|
96
|
+
// - Production: fixdog.esm.js?projectId=abc123
|
|
97
|
+
// - Local URLSearchParams: projectId: "abc123"
|
|
98
|
+
// - Next.js: src="...?projectId=abc123..."
|
|
99
|
+
const patterns = [
|
|
100
|
+
/fixdog\.esm\.js\?projectId=([a-zA-Z0-9-_]+)/,
|
|
101
|
+
/projectId:\s*["']([a-zA-Z0-9-_]+)["']/,
|
|
102
|
+
/projectId=([a-zA-Z0-9-_]+)/,
|
|
103
|
+
];
|
|
104
|
+
for (const pattern of patterns) {
|
|
105
|
+
const match = content.match(pattern);
|
|
106
|
+
if (match)
|
|
107
|
+
return match[1];
|
|
108
|
+
}
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
// ============================================
|
|
112
|
+
// Vite Injections (exported for backend)
|
|
113
|
+
// ============================================
|
|
114
|
+
function injectViteHtml(projectId, options) {
|
|
61
115
|
const file = findFile(["index.html", "public/index.html"]);
|
|
62
116
|
if (!file)
|
|
63
117
|
return null;
|
|
64
118
|
const before = fs.readFileSync(file, "utf-8");
|
|
65
|
-
if
|
|
119
|
+
// Check if already integrated
|
|
120
|
+
if (before.includes("fixdog")) {
|
|
121
|
+
if (options?.update && options.currentProjectId) {
|
|
122
|
+
// Update mode: replace old project ID with new one
|
|
123
|
+
// Handle both production format (projectId=xxx) and local format (projectId: "xxx")
|
|
124
|
+
let after = before;
|
|
125
|
+
// Replace production format: projectId=oldId
|
|
126
|
+
after = after.replace(new RegExp(`projectId=${options.currentProjectId}`, "g"), `projectId=${projectId}`);
|
|
127
|
+
// Replace local URLSearchParams format: projectId: "oldId"
|
|
128
|
+
after = after.replace(new RegExp(`projectId:\\s*["']${options.currentProjectId}["']`, "g"), `projectId: "${projectId}"`);
|
|
129
|
+
if (after === before)
|
|
130
|
+
return null;
|
|
131
|
+
return { file, before, after };
|
|
132
|
+
}
|
|
66
133
|
return null;
|
|
67
|
-
|
|
134
|
+
}
|
|
135
|
+
const after = before.replace("</head>", ` ${VITE_SNIPPET(projectId, { local: options?.local })}\n </head>`);
|
|
68
136
|
if (after === before)
|
|
69
137
|
return null;
|
|
70
138
|
return { file, before, after };
|
|
71
139
|
}
|
|
72
|
-
function injectViteConfig(projectId) {
|
|
140
|
+
function injectViteConfig(projectId, options) {
|
|
141
|
+
// Skip vite.config changes in local mode - not needed for localhost
|
|
142
|
+
if (options?.local)
|
|
143
|
+
return null;
|
|
73
144
|
const file = findFile([
|
|
74
145
|
"vite.config.ts",
|
|
75
146
|
"vite.config.js",
|
|
@@ -79,6 +150,16 @@ function injectViteConfig(projectId) {
|
|
|
79
150
|
return null;
|
|
80
151
|
const before = fs.readFileSync(file, "utf-8");
|
|
81
152
|
const allowedHost = `${projectId}.fix.dog`;
|
|
153
|
+
// Check for update mode
|
|
154
|
+
if (options?.update && options.currentProjectId) {
|
|
155
|
+
const oldHost = `${options.currentProjectId}.fix.dog`;
|
|
156
|
+
if (before.includes(oldHost)) {
|
|
157
|
+
const after = before.replace(new RegExp(oldHost.replace(/\./g, "\\."), "g"), allowedHost);
|
|
158
|
+
if (after === before)
|
|
159
|
+
return null;
|
|
160
|
+
return { file, before, after };
|
|
161
|
+
}
|
|
162
|
+
}
|
|
82
163
|
// Already has this host
|
|
83
164
|
if (before.includes(allowedHost))
|
|
84
165
|
return null;
|
|
@@ -118,9 +199,9 @@ function injectViteConfig(projectId) {
|
|
|
118
199
|
return { file, before, after };
|
|
119
200
|
}
|
|
120
201
|
// ============================================
|
|
121
|
-
// Next.js Injections
|
|
202
|
+
// Next.js Injections (exported for backend)
|
|
122
203
|
// ============================================
|
|
123
|
-
function injectNextApp(projectId) {
|
|
204
|
+
function injectNextApp(projectId, options) {
|
|
124
205
|
const file = findFile([
|
|
125
206
|
"app/layout.tsx",
|
|
126
207
|
"app/layout.js",
|
|
@@ -130,20 +211,35 @@ function injectNextApp(projectId) {
|
|
|
130
211
|
if (!file)
|
|
131
212
|
return null;
|
|
132
213
|
const before = fs.readFileSync(file, "utf-8");
|
|
133
|
-
if
|
|
214
|
+
// Check if already integrated
|
|
215
|
+
if (before.includes("fixdog")) {
|
|
216
|
+
if (options?.update && options.currentProjectId) {
|
|
217
|
+
// Update mode: replace old project ID with new one
|
|
218
|
+
// Handle both production format (projectId=xxx) and local format (projectId: "xxx")
|
|
219
|
+
let after = before;
|
|
220
|
+
// Replace production format: projectId=oldId
|
|
221
|
+
after = after.replace(new RegExp(`projectId=${options.currentProjectId}`, "g"), `projectId=${projectId}`);
|
|
222
|
+
// Replace local URLSearchParams format: projectId: "oldId"
|
|
223
|
+
after = after.replace(new RegExp(`projectId:\\s*["']${options.currentProjectId}["']`, "g"), `projectId: "${projectId}"`);
|
|
224
|
+
if (after === before)
|
|
225
|
+
return null;
|
|
226
|
+
return { file, before, after };
|
|
227
|
+
}
|
|
134
228
|
return null;
|
|
229
|
+
}
|
|
135
230
|
let after = before;
|
|
231
|
+
const snippet = NEXT_SCRIPT_SNIPPET(projectId, { local: options?.local });
|
|
136
232
|
// Case 1: <head> exists - inject inside it
|
|
137
233
|
if (/<head[^>]*>/.test(before)) {
|
|
138
|
-
after = before.replace(/<head([^>]*)>/, `<head$1>\n ${
|
|
234
|
+
after = before.replace(/<head([^>]*)>/, `<head$1>\n ${snippet}`);
|
|
139
235
|
}
|
|
140
236
|
// Case 2: <Head> (capital) exists - inject inside it
|
|
141
237
|
else if (/<Head[^>]*>/.test(before)) {
|
|
142
|
-
after = before.replace(/<Head([^>]*)>/, `<Head$1>\n ${
|
|
238
|
+
after = before.replace(/<Head([^>]*)>/, `<Head$1>\n ${snippet}`);
|
|
143
239
|
}
|
|
144
240
|
// Case 3: No head - add after <html>
|
|
145
241
|
else if (/<html[^>]*>/.test(before)) {
|
|
146
|
-
after = before.replace(/<html([^>]*)>/, `<html$1>\n <head>\n ${
|
|
242
|
+
after = before.replace(/<html([^>]*)>/, `<html$1>\n <head>\n ${snippet}\n </head>`);
|
|
147
243
|
}
|
|
148
244
|
// Can't find injection point
|
|
149
245
|
else {
|
|
@@ -153,7 +249,7 @@ function injectNextApp(projectId) {
|
|
|
153
249
|
return null;
|
|
154
250
|
return { file, before, after };
|
|
155
251
|
}
|
|
156
|
-
function injectNextPages(projectId) {
|
|
252
|
+
function injectNextPages(projectId, options) {
|
|
157
253
|
const file = findFile([
|
|
158
254
|
"pages/_document.tsx",
|
|
159
255
|
"pages/_document.js",
|
|
@@ -163,12 +259,27 @@ function injectNextPages(projectId) {
|
|
|
163
259
|
if (!file)
|
|
164
260
|
return null;
|
|
165
261
|
const before = fs.readFileSync(file, "utf-8");
|
|
166
|
-
if
|
|
262
|
+
// Check if already integrated
|
|
263
|
+
if (before.includes("fixdog")) {
|
|
264
|
+
if (options?.update && options.currentProjectId) {
|
|
265
|
+
// Update mode: replace old project ID with new one
|
|
266
|
+
// Handle both production format (projectId=xxx) and local format (projectId: "xxx")
|
|
267
|
+
let after = before;
|
|
268
|
+
// Replace production format: projectId=oldId
|
|
269
|
+
after = after.replace(new RegExp(`projectId=${options.currentProjectId}`, "g"), `projectId=${projectId}`);
|
|
270
|
+
// Replace local URLSearchParams format: projectId: "oldId"
|
|
271
|
+
after = after.replace(new RegExp(`projectId:\\s*["']${options.currentProjectId}["']`, "g"), `projectId: "${projectId}"`);
|
|
272
|
+
if (after === before)
|
|
273
|
+
return null;
|
|
274
|
+
return { file, before, after };
|
|
275
|
+
}
|
|
167
276
|
return null;
|
|
277
|
+
}
|
|
168
278
|
let after = before;
|
|
279
|
+
const snippet = NEXT_SCRIPT_SNIPPET(projectId, { local: options?.local });
|
|
169
280
|
// Case 1: <Head> exists - inject inside it
|
|
170
281
|
if (/<Head[^>]*>/.test(before)) {
|
|
171
|
-
after = before.replace(/<Head([^>]*)>/, `<Head$1>\n ${
|
|
282
|
+
after = before.replace(/<Head([^>]*)>/, `<Head$1>\n ${snippet}`);
|
|
172
283
|
}
|
|
173
284
|
// Can't find injection point
|
|
174
285
|
else {
|
|
@@ -179,6 +290,64 @@ function injectNextPages(projectId) {
|
|
|
179
290
|
return { file, before, after };
|
|
180
291
|
}
|
|
181
292
|
// ============================================
|
|
293
|
+
// Check if Integration Exists
|
|
294
|
+
// ============================================
|
|
295
|
+
function checkExistingIntegration() {
|
|
296
|
+
// Check Vite files
|
|
297
|
+
const viteHtmlFiles = ["index.html", "public/index.html"];
|
|
298
|
+
for (const path of viteHtmlFiles) {
|
|
299
|
+
if (fs.existsSync(path)) {
|
|
300
|
+
const content = fs.readFileSync(path, "utf-8");
|
|
301
|
+
if (content.includes("fixdog")) {
|
|
302
|
+
return {
|
|
303
|
+
exists: true,
|
|
304
|
+
projectId: extractProjectIdFromContent(content),
|
|
305
|
+
file: path,
|
|
306
|
+
};
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
// Check Next.js app router files
|
|
311
|
+
const nextAppFiles = [
|
|
312
|
+
"app/layout.tsx",
|
|
313
|
+
"app/layout.js",
|
|
314
|
+
"src/app/layout.tsx",
|
|
315
|
+
"src/app/layout.js",
|
|
316
|
+
];
|
|
317
|
+
for (const path of nextAppFiles) {
|
|
318
|
+
if (fs.existsSync(path)) {
|
|
319
|
+
const content = fs.readFileSync(path, "utf-8");
|
|
320
|
+
if (content.includes("fixdog")) {
|
|
321
|
+
return {
|
|
322
|
+
exists: true,
|
|
323
|
+
projectId: extractProjectIdFromContent(content),
|
|
324
|
+
file: path,
|
|
325
|
+
};
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
// Check Next.js pages router files
|
|
330
|
+
const nextPagesFiles = [
|
|
331
|
+
"pages/_document.tsx",
|
|
332
|
+
"pages/_document.js",
|
|
333
|
+
"src/pages/_document.tsx",
|
|
334
|
+
"src/pages/_document.js",
|
|
335
|
+
];
|
|
336
|
+
for (const path of nextPagesFiles) {
|
|
337
|
+
if (fs.existsSync(path)) {
|
|
338
|
+
const content = fs.readFileSync(path, "utf-8");
|
|
339
|
+
if (content.includes("fixdog")) {
|
|
340
|
+
return {
|
|
341
|
+
exists: true,
|
|
342
|
+
projectId: extractProjectIdFromContent(content),
|
|
343
|
+
file: path,
|
|
344
|
+
};
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
return { exists: false, projectId: null, file: null };
|
|
349
|
+
}
|
|
350
|
+
// ============================================
|
|
182
351
|
// Diff Display
|
|
183
352
|
// ============================================
|
|
184
353
|
function showDiff(before, after) {
|
|
@@ -210,6 +379,12 @@ function parseArgs() {
|
|
|
210
379
|
else if (arg === "--silent" || arg === "-s") {
|
|
211
380
|
options.silent = true;
|
|
212
381
|
}
|
|
382
|
+
else if (arg === "--update" || arg === "-u") {
|
|
383
|
+
options.update = true;
|
|
384
|
+
}
|
|
385
|
+
else if (arg === "--local" || arg === "-l") {
|
|
386
|
+
options.local = true;
|
|
387
|
+
}
|
|
213
388
|
}
|
|
214
389
|
return options;
|
|
215
390
|
}
|
|
@@ -218,6 +393,23 @@ async function main(options) {
|
|
|
218
393
|
const log = !cliOptions.silent;
|
|
219
394
|
if (log) {
|
|
220
395
|
intro(color.bgCyan(color.black(" 🐕 Fixdog Setup ")));
|
|
396
|
+
if (cliOptions.local) {
|
|
397
|
+
console.log(color.yellow(" Local development mode enabled\n"));
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
// Check for existing integration
|
|
401
|
+
const existing = checkExistingIntegration();
|
|
402
|
+
if (existing.exists && !cliOptions.update) {
|
|
403
|
+
if (log) {
|
|
404
|
+
if (existing.projectId) {
|
|
405
|
+
outro(color.yellow(`Already integrated with project: ${existing.projectId}`));
|
|
406
|
+
console.log(color.dim(`Use --update flag to change the project ID.`));
|
|
407
|
+
}
|
|
408
|
+
else {
|
|
409
|
+
outro(color.yellow("Already installed or target files not found"));
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
process.exit(0);
|
|
221
413
|
}
|
|
222
414
|
// Detect framework
|
|
223
415
|
const s = spinner();
|
|
@@ -250,18 +442,28 @@ async function main(options) {
|
|
|
250
442
|
}
|
|
251
443
|
projectId = input;
|
|
252
444
|
}
|
|
445
|
+
// Setup options for injection functions
|
|
446
|
+
const injectionOptions = {
|
|
447
|
+
local: cliOptions.local,
|
|
448
|
+
};
|
|
449
|
+
if (cliOptions.update && existing.projectId) {
|
|
450
|
+
injectionOptions.update = true;
|
|
451
|
+
injectionOptions.currentProjectId = existing.projectId;
|
|
452
|
+
}
|
|
253
453
|
// Collect all injections
|
|
254
454
|
const results = [];
|
|
255
455
|
if (framework === "vite") {
|
|
256
|
-
const htmlResult = injectViteHtml(projectId);
|
|
456
|
+
const htmlResult = injectViteHtml(projectId, injectionOptions);
|
|
257
457
|
if (htmlResult)
|
|
258
458
|
results.push(htmlResult);
|
|
259
|
-
const configResult = injectViteConfig(projectId);
|
|
459
|
+
const configResult = injectViteConfig(projectId, injectionOptions);
|
|
260
460
|
if (configResult)
|
|
261
461
|
results.push(configResult);
|
|
262
462
|
}
|
|
263
463
|
else if (framework === "next") {
|
|
264
|
-
const result = router === "app"
|
|
464
|
+
const result = router === "app"
|
|
465
|
+
? injectNextApp(projectId, injectionOptions)
|
|
466
|
+
: injectNextPages(projectId, injectionOptions);
|
|
265
467
|
if (result)
|
|
266
468
|
results.push(result);
|
|
267
469
|
}
|
|
@@ -301,5 +503,5 @@ async function main(options) {
|
|
|
301
503
|
}
|
|
302
504
|
}
|
|
303
505
|
|
|
304
|
-
export { main };
|
|
506
|
+
export { LOCAL_API_ENDPOINT, LOCAL_AUTH_URL, LOCAL_SCRIPT_URL, NEXT_SCRIPT_SNIPPET, SCRIPT_URL, VITE_SNIPPET, checkExistingIntegration, detectFramework, detectNextRouter, extractProjectIdFromContent, findFile, injectNextApp, injectNextPages, injectViteConfig, injectViteHtml, main };
|
|
305
507
|
//# sourceMappingURL=index.js.map
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/cli/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/cli/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|