@doswiftly/cli 0.2.0 → 0.2.5
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/README.md +1 -1
- package/bin/doswiftly.js +0 -0
- package/dist/commands/dev.d.ts +7 -1
- package/dist/commands/dev.d.ts.map +1 -1
- package/dist/commands/dev.js +110 -51
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/env.d.ts.map +1 -1
- package/dist/commands/env.js +11 -1
- package/dist/commands/env.js.map +1 -1
- package/dist/commands/init.js +2 -2
- package/dist/commands/inspect.d.ts.map +1 -1
- package/dist/commands/inspect.js +5 -1
- package/dist/commands/inspect.js.map +1 -1
- package/dist/commands/proxy.d.ts.map +1 -1
- package/dist/commands/proxy.js +7 -1
- package/dist/commands/proxy.js.map +1 -1
- package/dist/commands/template.js +1 -1
- package/dist/config/types.d.ts +8 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/api-url.d.ts +77 -8
- package/dist/lib/api-url.d.ts.map +1 -1
- package/dist/lib/api-url.js +54 -12
- package/dist/lib/api-url.js.map +1 -1
- package/dist/lib/config.d.ts +1 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +9 -12
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/i18n.d.ts +24 -0
- package/dist/lib/i18n.d.ts.map +1 -1
- package/dist/lib/i18n.js +48 -0
- package/dist/lib/i18n.js.map +1 -1
- package/dist/lib/proxy-server.d.ts +26 -0
- package/dist/lib/proxy-server.d.ts.map +1 -1
- package/dist/lib/proxy-server.js +59 -2
- package/dist/lib/proxy-server.js.map +1 -1
- package/package.json +10 -11
- package/templates/storefront-nextjs-shadcn/app/[locale]/products/[slug]/product-client.tsx +87 -2
- package/templates/storefront-nextjs-shadcn/app/[locale]/products/products-client.tsx +1 -1
- package/templates/storefront-nextjs-shadcn/codegen.ts +1 -1
- package/templates/storefront-nextjs-shadcn/components/cart/cart-item.tsx +18 -0
- package/templates/storefront-nextjs-shadcn/components/cart/cart-line.fragment.graphql +17 -1
- package/templates/storefront-nextjs-shadcn/components/home/collection-card.fragment.graphql +2 -1
- package/templates/storefront-nextjs-shadcn/components/layout/category-node.fragment.graphql +2 -1
- package/templates/storefront-nextjs-shadcn/components/product/add-to-cart-button.tsx +23 -3
- package/templates/storefront-nextjs-shadcn/components/product/filter-active-pills.tsx +1 -1
- package/templates/storefront-nextjs-shadcn/components/product/filter-mobile-sheet.tsx +1 -1
- package/templates/storefront-nextjs-shadcn/components/product/product-card.fragment.graphql +2 -1
- package/templates/storefront-nextjs-shadcn/components/product/product-configurator.fragment.graphql +43 -0
- package/templates/storefront-nextjs-shadcn/components/product/product-configurator.tsx +282 -0
- package/templates/storefront-nextjs-shadcn/components/product/product-detail.fragment.graphql +8 -1
- package/templates/storefront-nextjs-shadcn/components/product/product-image.tsx +7 -3
- package/templates/storefront-nextjs-shadcn/components/product/product-variant.fragment.graphql +2 -1
- package/templates/storefront-nextjs-shadcn/graphql/custom.example.graphql +100 -0
- package/templates/storefront-nextjs-shadcn/hooks/use-cart-actions.ts +26 -5
- package/templates/storefront-nextjs-shadcn/hooks/use-cart-sync.ts +26 -0
- package/templates/storefront-nextjs-shadcn/lib/image-loader.ts +12 -0
- package/templates/storefront-nextjs-shadcn/next.config.ts +6 -17
- package/templates/storefront-nextjs-shadcn/package.json +2 -2
package/README.md
CHANGED
|
@@ -21,7 +21,7 @@ doswiftly auth login # Login to DoSwiftly
|
|
|
21
21
|
doswiftly dev # Start development server
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
-
Your storefront will be running at `http://localhost:3000
|
|
24
|
+
Your storefront will be running at `http://localhost:3000` (or the next available port if 3000 is in use).
|
|
25
25
|
|
|
26
26
|
## Commands Overview
|
|
27
27
|
|
package/bin/doswiftly.js
CHANGED
|
File without changes
|
package/dist/commands/dev.d.ts
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
interface DevOptions {
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Commander now coerces `--port` via `Number.parseInt`, but programmatic
|
|
4
|
+
* callers (tests, SDK embeds) may still pass a string. Accept both and
|
|
5
|
+
* coerce inside `devCommand`.
|
|
6
|
+
*/
|
|
7
|
+
port?: number | string;
|
|
3
8
|
host?: string;
|
|
4
9
|
open?: boolean;
|
|
10
|
+
strictPort?: boolean;
|
|
5
11
|
}
|
|
6
12
|
/**
|
|
7
13
|
* Detect the dev command and port/host args from package.json.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAgBA,UAAU,UAAU;IAClB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAcD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAqCjC;AAqCD,wBAAsB,UAAU,CAAC,OAAO,GAAE,UAAe,iBAiKxD"}
|
package/dist/commands/dev.js
CHANGED
|
@@ -3,8 +3,11 @@ import ora from "ora";
|
|
|
3
3
|
import { execa } from "execa";
|
|
4
4
|
import { existsSync, readFileSync } from "fs";
|
|
5
5
|
import { readLocalConfigSync } from "../lib/config.js";
|
|
6
|
-
import {
|
|
7
|
-
import { isRemoteUrl, findFreePort, startProxyServer } from "../lib/proxy-server.js";
|
|
6
|
+
import { resolveApiUrl } from "../lib/api-url.js";
|
|
7
|
+
import { isRemoteUrl, findFreePort, findSequentialFreePort, PortRangeExhaustedError, startProxyServer, } from "../lib/proxy-server.js";
|
|
8
|
+
import { logger } from "../lib/logger.js";
|
|
9
|
+
import { t } from "../lib/i18n.js";
|
|
10
|
+
const PORT_FALLBACK_MAX_ATTEMPTS = 10;
|
|
8
11
|
/**
|
|
9
12
|
* Read a non-commented env var value from a dotenv file content.
|
|
10
13
|
* Returns null if not found or commented out.
|
|
@@ -34,8 +37,15 @@ export function detectDevCommand(port, host) {
|
|
|
34
37
|
catch {
|
|
35
38
|
return { bin: "pnpm", args: ["dev"] };
|
|
36
39
|
}
|
|
37
|
-
// If scripts.dev exists, delegate — port/host set via env (PORT, HOST)
|
|
40
|
+
// If scripts.dev exists, delegate — port/host set via env (PORT, HOST).
|
|
41
|
+
// If the script hardcodes a port (e.g. `next dev -p 3000`), the env var
|
|
42
|
+
// cannot override it — surface a warning so the developer can diagnose.
|
|
38
43
|
if (pkg.scripts?.dev) {
|
|
44
|
+
const hardcoded = /(?:-p|--port)\s+\d+/.exec(pkg.scripts.dev);
|
|
45
|
+
if (hardcoded) {
|
|
46
|
+
logger.warn(t().devScriptsDevHardcodedPort(hardcoded[0]));
|
|
47
|
+
logger.ghWarning(t().devScriptsDevHardcodedPort(hardcoded[0]), "scripts.dev hardcoded port");
|
|
48
|
+
}
|
|
39
49
|
return { bin: "pnpm", args: ["run", "dev"] };
|
|
40
50
|
}
|
|
41
51
|
// No scripts.dev — detect framework and use correct flag syntax
|
|
@@ -52,56 +62,94 @@ export function detectDevCommand(port, host) {
|
|
|
52
62
|
return { bin: "pnpm", args: ["dev"] };
|
|
53
63
|
}
|
|
54
64
|
/**
|
|
55
|
-
*
|
|
65
|
+
* Render the provenance tag for the resolved API URL (e.g. `(from profile "dev")`).
|
|
56
66
|
*/
|
|
57
|
-
function
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
if (existsSync(".env.local")) {
|
|
70
|
-
const content = readFileSync(".env.local", "utf-8");
|
|
71
|
-
const value = readEnvVar(content, "NEXT_PUBLIC_API_URL");
|
|
72
|
-
if (value)
|
|
73
|
-
return value;
|
|
67
|
+
function describeApiUrlSource(resolution) {
|
|
68
|
+
switch (resolution.source) {
|
|
69
|
+
case "env":
|
|
70
|
+
return t().devApiSourceEnv(resolution.envVarName ?? "");
|
|
71
|
+
case "profile":
|
|
72
|
+
return t().devApiSourceProfile(resolution.profileName ?? "");
|
|
73
|
+
case "localConfig":
|
|
74
|
+
return t().devApiSourceLocalConfig;
|
|
75
|
+
case "dotEnvLocal":
|
|
76
|
+
return t().devApiSourceDotEnvLocal;
|
|
77
|
+
case "fallback":
|
|
78
|
+
return t().devApiSourceFallback;
|
|
74
79
|
}
|
|
75
|
-
return "http://localhost:8000";
|
|
76
80
|
}
|
|
77
81
|
/**
|
|
78
|
-
* Resolve shop slug from config sources.
|
|
82
|
+
* Resolve shop slug from project-scoped config sources. Profiles intentionally
|
|
83
|
+
* do not carry a slug (the slug is a property of the project, not the env).
|
|
79
84
|
*/
|
|
80
|
-
function resolveShopSlug(localConfig) {
|
|
85
|
+
function resolveShopSlug(localConfig, dotEnvLocal) {
|
|
81
86
|
if (process.env.NEXT_PUBLIC_SHOP_SLUG)
|
|
82
87
|
return process.env.NEXT_PUBLIC_SHOP_SLUG;
|
|
83
88
|
if (localConfig?.shop?.slug)
|
|
84
89
|
return localConfig.shop.slug;
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
if (value)
|
|
89
|
-
return value;
|
|
90
|
-
}
|
|
90
|
+
const fromEnvLocal = readEnvVar(dotEnvLocal, "NEXT_PUBLIC_SHOP_SLUG");
|
|
91
|
+
if (fromEnvLocal)
|
|
92
|
+
return fromEnvLocal;
|
|
91
93
|
return "demo-shop";
|
|
92
94
|
}
|
|
93
95
|
export async function devCommand(options = {}) {
|
|
94
96
|
// Read local config (non-fatal if missing — adopt flow may not have config yet)
|
|
95
97
|
const localConfig = readLocalConfigSync();
|
|
96
|
-
const
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
//
|
|
98
|
+
const dotEnvLocal = existsSync(".env.local")
|
|
99
|
+
? readFileSync(".env.local", "utf-8")
|
|
100
|
+
: "";
|
|
101
|
+
// Unified precedence: shell env > active profile > doswiftly.config.ts > .env.local > default.
|
|
102
|
+
// The previous dev-local resolver put local config above profile, which silently
|
|
103
|
+
// ignored `doswiftly env use <profile>` when the project config had an api.url.
|
|
104
|
+
const apiResolution = resolveApiUrl({
|
|
105
|
+
envVarNames: ["NEXT_PUBLIC_API_URL", "DOSWIFTLY_API_URL"],
|
|
106
|
+
localConfigUrl: localConfig?.api?.url,
|
|
107
|
+
dotEnvLocalUrl: readEnvVar(dotEnvLocal, "NEXT_PUBLIC_API_URL") ?? undefined,
|
|
108
|
+
fallback: "http://localhost:8000",
|
|
109
|
+
});
|
|
110
|
+
const apiUrl = apiResolution.url;
|
|
111
|
+
const shopSlug = resolveShopSlug(localConfig, dotEnvLocal);
|
|
112
|
+
// Commander parses --port with Number.parseInt so options.port is already a
|
|
113
|
+
// number here. Defense-in-depth: coerce anything coming in as a string
|
|
114
|
+
// (future refactors, direct programmatic callers) and validate the range so
|
|
115
|
+
// `NaN` never reaches findSequentialFreePort's arithmetic.
|
|
116
|
+
const rawPort = options.port ?? localConfig?.dev?.port ?? 3000;
|
|
117
|
+
const requestedPort = typeof rawPort === "string" ? Number.parseInt(rawPort, 10) : rawPort;
|
|
118
|
+
if (!Number.isInteger(requestedPort) || requestedPort < 1 || requestedPort > 65535) {
|
|
119
|
+
console.error(chalk.red(`Invalid port: ${rawPort}`));
|
|
120
|
+
console.error(chalk.gray(" Port must be an integer between 1 and 65535."));
|
|
121
|
+
process.exit(1);
|
|
122
|
+
}
|
|
123
|
+
const host = options.host ?? "localhost";
|
|
124
|
+
const strictPort = Boolean(options.strictPort ?? localConfig?.dev?.strictPort);
|
|
125
|
+
// Pre-flight: find a free port before printing the banner so what we advertise
|
|
126
|
+
// matches what the framework will actually bind.
|
|
127
|
+
let actualPort;
|
|
128
|
+
try {
|
|
129
|
+
actualPort = await findSequentialFreePort(requestedPort, PORT_FALLBACK_MAX_ATTEMPTS, "0.0.0.0");
|
|
130
|
+
}
|
|
131
|
+
catch (error) {
|
|
132
|
+
if (error instanceof PortRangeExhaustedError) {
|
|
133
|
+
console.error(chalk.red(t().devPortRangeExhausted(error.start, error.end)));
|
|
134
|
+
console.error(chalk.gray(` ${t().devPortRangeHint}`));
|
|
135
|
+
process.exit(1);
|
|
136
|
+
}
|
|
137
|
+
throw error;
|
|
138
|
+
}
|
|
139
|
+
if (actualPort !== requestedPort) {
|
|
140
|
+
if (strictPort) {
|
|
141
|
+
console.error(chalk.red(t().devPortInUseStrict(requestedPort)));
|
|
142
|
+
console.error(chalk.gray(` ${t().devPortInUseStrictHint}`));
|
|
143
|
+
process.exit(1);
|
|
144
|
+
}
|
|
145
|
+
logger.warn(t().devPortFallback(requestedPort, actualPort));
|
|
146
|
+
console.log(chalk.gray(` ${t().devPortFallbackHint}`));
|
|
147
|
+
}
|
|
148
|
+
// Determine if we need a proxy (remote API → local proxy to bypass CORS)
|
|
101
149
|
let proxyUrl = null;
|
|
102
150
|
let proxyServer = null;
|
|
103
151
|
if (isRemoteUrl(apiUrl)) {
|
|
104
|
-
const spinner = ora(
|
|
152
|
+
const spinner = ora(t().devProxyStarting).start();
|
|
105
153
|
try {
|
|
106
154
|
const proxyPort = await findFreePort(4001);
|
|
107
155
|
proxyServer = await startProxyServer({
|
|
@@ -111,36 +159,47 @@ export async function devCommand(options = {}) {
|
|
|
111
159
|
quiet: true,
|
|
112
160
|
});
|
|
113
161
|
proxyUrl = `http://localhost:${proxyPort}`;
|
|
114
|
-
spinner.succeed(chalk.green(
|
|
162
|
+
spinner.succeed(chalk.green(t().devProxyStarted));
|
|
115
163
|
}
|
|
116
164
|
catch (error) {
|
|
117
|
-
spinner.fail(chalk.red(
|
|
165
|
+
spinner.fail(chalk.red(t().devProxyFailed));
|
|
118
166
|
console.error(chalk.gray(` ${error.message}`));
|
|
119
|
-
console.log(chalk.yellow(
|
|
167
|
+
console.log(chalk.yellow(`\n ${t().devProxyContinuingNoProxy}\n`));
|
|
120
168
|
}
|
|
121
169
|
}
|
|
122
|
-
// Display info
|
|
123
|
-
|
|
170
|
+
// Display info — banner is printed *after* pre-flight so it reflects the
|
|
171
|
+
// port we actually bound plus the API URL we actually resolved.
|
|
172
|
+
const effectiveApiUrl = proxyUrl ?? apiUrl;
|
|
173
|
+
const apiSource = describeApiUrlSource(apiResolution);
|
|
124
174
|
console.log("");
|
|
125
|
-
console.log(chalk.bold.blue(
|
|
126
|
-
console.log(` ${chalk.bold(
|
|
175
|
+
console.log(chalk.bold.blue(` ${t().devHeader}\n`));
|
|
176
|
+
console.log(` ${chalk.bold(t().devLabelStorefront)} ${chalk.cyan(`http://${host}:${actualPort}`)}`);
|
|
127
177
|
if (proxyUrl) {
|
|
128
|
-
console.log(` ${chalk.bold(
|
|
129
|
-
console.log(
|
|
178
|
+
console.log(` ${chalk.bold(t().devLabelApiProxy)} ${chalk.cyan(proxyUrl)} ${chalk.gray(`(${apiSource})`)}`);
|
|
179
|
+
console.log(chalk.gray(` -> ${apiUrl}`));
|
|
130
180
|
}
|
|
131
181
|
else {
|
|
132
|
-
console.log(` ${chalk.bold(
|
|
182
|
+
console.log(` ${chalk.bold(t().devLabelApi)} ${chalk.cyan(apiUrl)} ${chalk.gray(`(${apiSource})`)}`);
|
|
183
|
+
}
|
|
184
|
+
console.log(` ${chalk.bold(t().devLabelShop)} ${chalk.cyan(shopSlug)}`);
|
|
185
|
+
// Surface a one-line hint when the project config hardcodes an api.url that
|
|
186
|
+
// the active profile overrides — helps the developer understand why the
|
|
187
|
+
// banner differs from what's in doswiftly.config.ts. (When source=profile,
|
|
188
|
+
// apiResolution.url equals the profile's apiUrl — no need to re-query.)
|
|
189
|
+
if (apiResolution.source === "profile" &&
|
|
190
|
+
localConfig?.api?.url &&
|
|
191
|
+
localConfig.api.url !== apiResolution.url) {
|
|
192
|
+
console.log(chalk.gray(` ${t().envProfileOverridesConfig}`));
|
|
133
193
|
}
|
|
134
|
-
console.log(` ${chalk.bold("Shop:")} ${chalk.cyan(shopSlug)}`);
|
|
135
194
|
console.log("");
|
|
136
195
|
// Detect dev command (includes framework-specific port/host flags)
|
|
137
|
-
const devCmd = detectDevCommand(
|
|
196
|
+
const devCmd = detectDevCommand(actualPort, host);
|
|
138
197
|
// Build env — set PORT/HOST as fallback for frameworks that read from env
|
|
139
198
|
const env = {
|
|
140
199
|
...process.env,
|
|
141
200
|
NEXT_PUBLIC_API_URL: effectiveApiUrl,
|
|
142
201
|
NEXT_PUBLIC_SHOP_SLUG: shopSlug,
|
|
143
|
-
PORT: String(
|
|
202
|
+
PORT: String(actualPort),
|
|
144
203
|
HOST: host,
|
|
145
204
|
};
|
|
146
205
|
// Start dev server
|
|
@@ -151,7 +210,7 @@ export async function devCommand(options = {}) {
|
|
|
151
210
|
});
|
|
152
211
|
// Clean shutdown: kill proxy + dev server on SIGINT
|
|
153
212
|
const cleanup = () => {
|
|
154
|
-
console.log(chalk.yellow(
|
|
213
|
+
console.log(chalk.yellow(`\n\n ${t().devStopping}\n`));
|
|
155
214
|
devProcess.kill("SIGINT");
|
|
156
215
|
if (proxyServer)
|
|
157
216
|
proxyServer.close();
|
|
@@ -167,7 +226,7 @@ export async function devCommand(options = {}) {
|
|
|
167
226
|
proxyServer.close();
|
|
168
227
|
const exitCode = error.exitCode;
|
|
169
228
|
if (exitCode && exitCode !== 0 && exitCode !== 130) {
|
|
170
|
-
console.error(chalk.red(`\n
|
|
229
|
+
console.error(chalk.red(`\n ${t().devExitedCode(exitCode)}\n`));
|
|
171
230
|
process.exit(exitCode);
|
|
172
231
|
}
|
|
173
232
|
}
|
package/dist/commands/dev.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/commands/env.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/commands/env.ts"],"names":[],"mappings":"AAkBA;;GAEG;AACH,wBAAsB,cAAc,kBAsCnC;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,iBAgEhD;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,iBAkDhD;AAED;;GAEG;AACH,wBAAsB,kBAAkB,kBA4CvC;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,iBA4B/D;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,iBAyCnD"}
|
package/dist/commands/env.js
CHANGED
|
@@ -2,6 +2,8 @@ import { input, select, confirm } from '@inquirer/prompts';
|
|
|
2
2
|
import chalk from 'chalk';
|
|
3
3
|
import { existsSync, writeFileSync } from 'fs';
|
|
4
4
|
import { listProfiles, getActiveProfile, getProfile, addProfile, setActiveProfile, deleteProfile, generateEnvContent, setProfileVariable, getProjectShopSlug, } from '../lib/env-storage.js';
|
|
5
|
+
import { readLocalConfigSync } from '../lib/config.js';
|
|
6
|
+
import { t } from '../lib/i18n.js';
|
|
5
7
|
/**
|
|
6
8
|
* List all environment profiles
|
|
7
9
|
*/
|
|
@@ -124,7 +126,15 @@ export async function envUseCommand(name) {
|
|
|
124
126
|
: chalk.gray('not logged in');
|
|
125
127
|
console.log(chalk.green(`\n✔ Switched to profile "${profile.name}"`));
|
|
126
128
|
console.log(chalk.gray(` API: ${profile.apiUrl}`));
|
|
127
|
-
console.log(chalk.gray(` Account: ${accountInfo}
|
|
129
|
+
console.log(chalk.gray(` Account: ${accountInfo}`));
|
|
130
|
+
// Warn when the local project config carries a different api.url — the
|
|
131
|
+
// profile wins for dev/inspect/proxy, which used to silently surprise
|
|
132
|
+
// developers who expected doswiftly.config.ts to always be authoritative.
|
|
133
|
+
const localConfig = readLocalConfigSync();
|
|
134
|
+
if (localConfig?.api?.url && localConfig.api.url !== profile.apiUrl) {
|
|
135
|
+
console.log(chalk.gray(` ℹ ${t().envProfileOverridesConfig}`));
|
|
136
|
+
}
|
|
137
|
+
console.log('');
|
|
128
138
|
}
|
|
129
139
|
catch (error) {
|
|
130
140
|
console.error(chalk.red(`\n✖ ${error.message}\n`));
|
package/dist/commands/env.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/commands/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAC/C,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GAEnB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/commands/env.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.js
CHANGED
|
@@ -750,7 +750,7 @@ async function initTemplateProject(options) {
|
|
|
750
750
|
"\\{\\{SHOP_SLUG\\}\\}": "{{SHOP_SLUG}}",
|
|
751
751
|
"\\{\\{API_URL\\}\\}": "{{API_URL}}",
|
|
752
752
|
"\\{\\{SDK_VERSION\\}\\}": "^4.0.0",
|
|
753
|
-
"\\{\\{STOREFRONT_OPS_VERSION\\}\\}": "^
|
|
753
|
+
"\\{\\{STOREFRONT_OPS_VERSION\\}\\}": "^5.0.0",
|
|
754
754
|
};
|
|
755
755
|
copyTemplateDir(templateDir, targetDir, replacements);
|
|
756
756
|
// Create doswiftly-template.json manifest
|
|
@@ -932,7 +932,7 @@ async function createProject(state) {
|
|
|
932
932
|
"\\{\\{SHOP_SLUG\\}\\}": shopSlug,
|
|
933
933
|
"\\{\\{API_URL\\}\\}": apiUrl,
|
|
934
934
|
"\\{\\{SDK_VERSION\\}\\}": "^4.0.0",
|
|
935
|
-
"\\{\\{STOREFRONT_OPS_VERSION\\}\\}": "^
|
|
935
|
+
"\\{\\{STOREFRONT_OPS_VERSION\\}\\}": "^5.0.0",
|
|
936
936
|
};
|
|
937
937
|
let templateName = "storefront-nextjs-shadcn";
|
|
938
938
|
if (codeSource.type === "template" && codeSource.templateRepoUrl) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"AAOA,UAAU,cAAc;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AA2DD;;GAEG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,iBA0IlF"}
|
package/dist/commands/inspect.js
CHANGED
|
@@ -2,6 +2,7 @@ import chalk from 'chalk';
|
|
|
2
2
|
import ora from 'ora';
|
|
3
3
|
import { getActiveProfile } from '../lib/env-storage.js';
|
|
4
4
|
import { getLocalShopSlug } from '../lib/config.js';
|
|
5
|
+
import { getApiUrl } from '../lib/api-url.js';
|
|
5
6
|
import { logger } from '../lib/logger.js';
|
|
6
7
|
/**
|
|
7
8
|
* Format headers for display
|
|
@@ -56,6 +57,8 @@ export async function inspectCommand(endpoint, options = {}) {
|
|
|
56
57
|
console.log(chalk.gray(' doswiftly inspect /api/storefront/cart --method POST --body \'{"productId":"123"}\'\n'));
|
|
57
58
|
process.exit(1);
|
|
58
59
|
}
|
|
60
|
+
// Require an authenticated profile so the developer is reminded to run
|
|
61
|
+
// `doswiftly env add` / `auth login` before firing requests.
|
|
59
62
|
const profile = getActiveProfile();
|
|
60
63
|
if (!profile) {
|
|
61
64
|
console.log(chalk.red(' Error: No active environment profile\n'));
|
|
@@ -70,7 +73,8 @@ export async function inspectCommand(endpoint, options = {}) {
|
|
|
70
73
|
process.exit(1);
|
|
71
74
|
}
|
|
72
75
|
const method = (options.method || 'GET').toUpperCase();
|
|
73
|
-
|
|
76
|
+
// Unified resolver: DOSWIFTLY_API_URL env > active profile > production default.
|
|
77
|
+
const baseUrl = getApiUrl().replace(/\/$/, '');
|
|
74
78
|
const url = endpoint.startsWith('http') ? endpoint : `${baseUrl}${endpoint}`;
|
|
75
79
|
// Build headers
|
|
76
80
|
const customHeaders = options.headers ? parseHeaders(options.headers) : {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/commands/proxy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/commands/proxy.ts"],"names":[],"mappings":"AAMA,UAAU,YAAY;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,OAAO,GAAE,YAAiB,iBAsC5D"}
|
package/dist/commands/proxy.js
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { getActiveProfile } from '../lib/env-storage.js';
|
|
3
3
|
import { getLocalShopSlug } from '../lib/config.js';
|
|
4
|
+
import { getApiUrl } from '../lib/api-url.js';
|
|
4
5
|
import { startProxyServer } from '../lib/proxy-server.js';
|
|
5
6
|
/**
|
|
6
7
|
* Start proxy server command
|
|
7
8
|
*/
|
|
8
9
|
export async function proxyCommand(options = {}) {
|
|
10
|
+
// Profile presence check is kept as a UX guard — proxy without a target
|
|
11
|
+
// profile is almost always a misconfiguration, even if the resolver would
|
|
12
|
+
// otherwise fall back to a default URL.
|
|
9
13
|
const profile = getActiveProfile();
|
|
10
14
|
if (!profile) {
|
|
11
15
|
console.log(chalk.red('\n✖ No active environment profile\n'));
|
|
@@ -20,10 +24,12 @@ export async function proxyCommand(options = {}) {
|
|
|
20
24
|
process.exit(1);
|
|
21
25
|
}
|
|
22
26
|
const port = parseInt(options.port || '3001', 10);
|
|
27
|
+
// Unified resolver: DOSWIFTLY_API_URL env > active profile > production default.
|
|
28
|
+
const targetUrl = getApiUrl();
|
|
23
29
|
try {
|
|
24
30
|
await startProxyServer({
|
|
25
31
|
port,
|
|
26
|
-
targetUrl
|
|
32
|
+
targetUrl,
|
|
27
33
|
shopSlug,
|
|
28
34
|
});
|
|
29
35
|
// Keep process running
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/commands/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAM1D;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,UAAwB,EAAE;IAC3D,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IAEnC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,uCAAuC;IACvC,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IAEpC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC,CAAC;QAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/commands/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAM1D;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,UAAwB,EAAE;IAC3D,wEAAwE;IACxE,0EAA0E;IAC1E,wCAAwC;IACxC,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IAEnC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,uCAAuC;IACvC,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IAEpC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC,CAAC;QAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;IAClD,iFAAiF;IACjF,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC;IAE9B,IAAI,CAAC;QACH,MAAM,gBAAgB,CAAC;YACrB,IAAI;YACJ,SAAS;YACT,QAAQ;SACT,CAAC,CAAC;QAEH,uBAAuB;QACvB,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8BAA+B,KAAe,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -661,7 +661,7 @@ export async function templateCreateCommand(options = {}) {
|
|
|
661
661
|
"\\{\\{SHOP_SLUG\\}\\}": "{{SHOP_SLUG}}",
|
|
662
662
|
"\\{\\{API_URL\\}\\}": "{{API_URL}}",
|
|
663
663
|
"\\{\\{SDK_VERSION\\}\\}": "^4.0.0",
|
|
664
|
-
"\\{\\{STOREFRONT_OPS_VERSION\\}\\}": "^
|
|
664
|
+
"\\{\\{STOREFRONT_OPS_VERSION\\}\\}": "^5.0.0",
|
|
665
665
|
};
|
|
666
666
|
copyTemplateDir(templateDir, targetDir, replacements);
|
|
667
667
|
// Create doswiftly-template.json manifest
|
package/dist/config/types.d.ts
CHANGED
|
@@ -61,6 +61,14 @@ export interface DevConfig {
|
|
|
61
61
|
* @default false
|
|
62
62
|
*/
|
|
63
63
|
proxy?: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* When `true`, `doswiftly dev` fails with an actionable error instead of
|
|
66
|
+
* auto-falling back to the next free port if the requested one is busy.
|
|
67
|
+
* Overridable per-invocation via `--strict-port`.
|
|
68
|
+
*
|
|
69
|
+
* @default false
|
|
70
|
+
*/
|
|
71
|
+
strictPort?: boolean;
|
|
64
72
|
}
|
|
65
73
|
/**
|
|
66
74
|
* Deployment provider options
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;;;OAIG;IACH,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;;;OAIG;IACH,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAE1B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,IAAI,EAAE,UAAU,CAAC;IAEjB;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IAExB;;;OAGG;IACH,GAAG,EAAE,SAAS,CAAC;IAEf;;;OAGG;IACH,GAAG,CAAC,EAAE,SAAS,CAAC;IAEhB;;;OAGG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,CAErE"}
|
package/dist/config/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAwJH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,UAAU,YAAY,CAAC,MAAuB;IAClD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -128,8 +128,9 @@ program.on("--help", () => {
|
|
|
128
128
|
program
|
|
129
129
|
.command("dev")
|
|
130
130
|
.description("Start development server")
|
|
131
|
-
.option("-p, --port <port>", "Port number",
|
|
131
|
+
.option("-p, --port <port>", "Port number", (value) => Number.parseInt(value, 10), 3000)
|
|
132
132
|
.option("-H, --host <host>", "Hostname", "localhost")
|
|
133
|
+
.option("--strict-port", "Fail if port is already in use instead of auto-fallback")
|
|
133
134
|
.option("--no-open", "Do not open browser")
|
|
134
135
|
.action(devCommand);
|
|
135
136
|
// doswiftly config
|