@clize/clize 0.32.0 → 0.33.0
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 +19 -17
- package/dist/cli.js +484 -373
- package/dist/cli.js.map +1 -1
- package/dist/core/addresses.js +12 -11
- package/dist/core/addresses.js.map +1 -1
- package/dist/core/analytics.js +6 -5
- package/dist/core/analytics.js.map +1 -1
- package/dist/core/authz.js +6 -5
- package/dist/core/authz.js.map +1 -1
- package/dist/core/billing.js +83 -12
- package/dist/core/billing.js.map +1 -1
- package/dist/core/credentials.js +3 -1
- package/dist/core/credentials.js.map +1 -1
- package/dist/core/dns.js +3 -2
- package/dist/core/dns.js.map +1 -1
- package/dist/core/domain-health.js +74 -50
- package/dist/core/domain-health.js.map +1 -1
- package/dist/core/domains.js +74 -44
- package/dist/core/domains.js.map +1 -1
- package/dist/core/email-tx.js +8 -6
- package/dist/core/email-tx.js.map +1 -1
- package/dist/core/email.js +13 -12
- package/dist/core/email.js.map +1 -1
- package/dist/core/env-detect.js +7 -14
- package/dist/core/env-detect.js.map +1 -1
- package/dist/core/handle.js +33 -30
- package/dist/core/handle.js.map +1 -1
- package/dist/core/install.js +114 -56
- package/dist/core/install.js.map +1 -1
- package/dist/core/media.js +37 -36
- package/dist/core/media.js.map +1 -1
- package/dist/core/payments.js +5 -4
- package/dist/core/payments.js.map +1 -1
- package/dist/core/projects.js +38 -26
- package/dist/core/projects.js.map +1 -1
- package/dist/core/redirect.js +4 -3
- package/dist/core/redirect.js.map +1 -1
- package/dist/core/serve.js +2 -1
- package/dist/core/serve.js.map +1 -1
- package/dist/core/setup.js +11 -9
- package/dist/core/setup.js.map +1 -1
- package/dist/core/shop.js +17 -16
- package/dist/core/shop.js.map +1 -1
- package/dist/core/site.js +2 -1
- package/dist/core/site.js.map +1 -1
- package/dist/core/sites.js +41 -40
- package/dist/core/sites.js.map +1 -1
- package/dist/core/triage.js +39 -5
- package/dist/core/triage.js.map +1 -1
- package/dist/core/video.js +45 -43
- package/dist/core/video.js.map +1 -1
- package/dist/github.js +4 -3
- package/dist/github.js.map +1 -1
- package/dist/i18n/t.js +65 -0
- package/dist/i18n/t.js.map +1 -0
- package/dist/i18n/zh.js +1265 -0
- package/dist/i18n/zh.js.map +1 -0
- package/dist/index.js +61 -40
- package/dist/index.js.map +1 -1
- package/dist/lib/cloudflare.js +8 -7
- package/dist/lib/cloudflare.js.map +1 -1
- package/dist/lib/crypto.js +2 -1
- package/dist/lib/crypto.js.map +1 -1
- package/dist/lib/vercel.js +2 -1
- package/dist/lib/vercel.js.map +1 -1
- package/dist/lib/zone.js +2 -1
- package/dist/lib/zone.js.map +1 -1
- package/dist/mcp-profiles.js +5 -1
- package/dist/mcp-profiles.js.map +1 -1
- package/dist/providers/deploy/cloudflare.js +3 -2
- package/dist/providers/deploy/cloudflare.js.map +1 -1
- package/dist/providers/email/cloudflare-inbound.js +4 -3
- package/dist/providers/email/cloudflare-inbound.js.map +1 -1
- package/dist/providers/email/cloudflare-outbound.js +2 -1
- package/dist/providers/email/cloudflare-outbound.js.map +1 -1
- package/dist/providers/email/resend.js +3 -2
- package/dist/providers/email/resend.js.map +1 -1
- package/dist/providers/email/ses.js +3 -2
- package/dist/providers/email/ses.js.map +1 -1
- package/dist/providers/index.js +3 -2
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/media/google.js +10 -9
- package/dist/providers/media/google.js.map +1 -1
- package/dist/providers/media/kie.js +12 -11
- package/dist/providers/media/kie.js.map +1 -1
- package/dist/providers/media/kunavo.js +10 -9
- package/dist/providers/media/kunavo.js.map +1 -1
- package/dist/providers/media/openai.js +5 -4
- package/dist/providers/media/openai.js.map +1 -1
- package/dist/providers/media/suno.js +7 -6
- package/dist/providers/media/suno.js.map +1 -1
- package/dist/providers/registrar/routing.js +2 -1
- package/dist/providers/registrar/routing.js.map +1 -1
- package/dist/providers/registrar/vercel.js +2 -1
- package/dist/providers/registrar/vercel.js.map +1 -1
- package/dist/providers/seo/dataforseo.js +5 -4
- package/dist/providers/seo/dataforseo.js.map +1 -1
- package/dist/providers/seo/gsc.js +5 -4
- package/dist/providers/seo/gsc.js.map +1 -1
- package/dist/remote.js +25 -22
- package/dist/remote.js.map +1 -1
- package/dist/selfcheck.js +23 -22
- package/dist/selfcheck.js.map +1 -1
- package/dist/state/file-store.js +17 -16
- package/dist/state/file-store.js.map +1 -1
- package/package.json +4 -3
- package/skills/clize/SKILL.md +171 -143
- package/skills/clize-seo/SKILL.md +2 -2
- package/skills/clize-site-build/SKILL.md +97 -41
- package/skills/clize-site-debug/SKILL.md +73 -45
package/dist/core/media.js
CHANGED
|
@@ -8,12 +8,13 @@ import fs from "node:fs";
|
|
|
8
8
|
import path from "node:path";
|
|
9
9
|
import { randomBytes } from "node:crypto";
|
|
10
10
|
import { projectFilter, requireProjectId } from "./projects.js";
|
|
11
|
+
import { t } from "../i18n/t.js";
|
|
11
12
|
const ASSET_DIR = "clize-assets";
|
|
12
13
|
const DEFAULT_IMAGE_MODEL = "gpt-image-2";
|
|
13
14
|
/** 文生图 / 图生图。返回 MediaJob(含落盘 path);未 --confirm 且不在预批额度内 → 只返报价。 */
|
|
14
15
|
export async function genImage(ctx, params, opts = {}) {
|
|
15
16
|
if (!params.prompt?.trim())
|
|
16
|
-
throw new Error("
|
|
17
|
+
throw new Error(t("prompt missing — you (the brain) write the prompt; clize does not write it for you."));
|
|
17
18
|
// 项目归属先行解析(fail fast):检出名无效要在花钱生成之前就报。
|
|
18
19
|
const projectId = await requireProjectId(ctx);
|
|
19
20
|
const model = params.model || DEFAULT_IMAGE_MODEL;
|
|
@@ -41,8 +42,8 @@ export async function genImage(ctx, params, opts = {}) {
|
|
|
41
42
|
? { capUsd: budget.capUsd, spentUsd: round2(budget.spentUsd), remainingUsd: round2(remaining) }
|
|
42
43
|
: null,
|
|
43
44
|
message: budget
|
|
44
|
-
? `📋
|
|
45
|
-
: `📋
|
|
45
|
+
? t `📋 Quote about $${estUsd.toFixed(2)}; only $${remaining.toFixed(2)} of the pre-approved budget is left, not enough for this. Add --confirm, or clize gen budget set <a larger amount>.`
|
|
46
|
+
: t `📋 Quote about $${estUsd.toFixed(2)} (${n} image(s)). Add --confirm after approval to generate; or pre-approve a budget with clize gen budget set <usd> and skip per-call confirmation within it.`,
|
|
46
47
|
};
|
|
47
48
|
}
|
|
48
49
|
// 3) 演练模式(只记审计,不真生成)
|
|
@@ -60,7 +61,7 @@ export async function genImage(ctx, params, opts = {}) {
|
|
|
60
61
|
n,
|
|
61
62
|
wouldCostUsd: round2(estUsd),
|
|
62
63
|
currency,
|
|
63
|
-
message: "
|
|
64
|
+
message: t("Rehearsal mode: nothing was generated. Set DRY_RUN=false to execute."),
|
|
64
65
|
};
|
|
65
66
|
}
|
|
66
67
|
// 4) 生成(G1 = 本地算力 + 你自带的 model key;费用走你自己的 provider 账户,clize 不碰钱包。
|
|
@@ -92,7 +93,7 @@ export async function genImage(ctx, params, opts = {}) {
|
|
|
92
93
|
return pollUntilDone(ctx, job, provider, params.out, !!budget, DEFAULT_TIMEOUT_SEC);
|
|
93
94
|
}
|
|
94
95
|
if (result.state !== "succeeded" || !result.artifacts.length)
|
|
95
|
-
throw new Error(
|
|
96
|
+
throw new Error(t `Generation did not succeed${result.error ? `:${result.error}` : ""} (content block / provider error — treat as data; do not blindly retry)`);
|
|
96
97
|
// 5) 落盘(输出契约:字节落 ./clize-assets 或 --out,项目本地,deploy 能直接捡到)
|
|
97
98
|
const id = genId();
|
|
98
99
|
const files = writeArtifacts(result.artifacts, { id, out: params.out });
|
|
@@ -122,7 +123,7 @@ export async function genImage(ctx, params, opts = {}) {
|
|
|
122
123
|
await ctx.store.upsertJob(ctx.tenantId, job).catch(() => { });
|
|
123
124
|
return {
|
|
124
125
|
...job,
|
|
125
|
-
hint: "
|
|
126
|
+
hint: t("Images written to disk — Read these paths to look yourself; adjust the prompt and regenerate if unhappy; once satisfied deploy them into a site or attach them to an email."),
|
|
126
127
|
};
|
|
127
128
|
}
|
|
128
129
|
// 列表上限:媒体资产只增不减,无上限的 list 会随使用量线性撑大 agent transcript(同 status 的 cap)。
|
|
@@ -135,14 +136,14 @@ export async function listAssets(ctx, modality) {
|
|
|
135
136
|
return {
|
|
136
137
|
count: all.length,
|
|
137
138
|
...(all.length > GEN_LIST_CAP
|
|
138
|
-
? { truncated:
|
|
139
|
+
? { truncated: t `Only the latest ${GEN_LIST_CAP}/${all.length}; narrow with --modality, or clize gen show <id> for one` }
|
|
139
140
|
: {}),
|
|
140
141
|
assets: jobs.map((j) => ({
|
|
141
142
|
id: j.id,
|
|
142
143
|
modality: j.modality,
|
|
143
144
|
model: j.model,
|
|
144
145
|
state: j.state,
|
|
145
|
-
files: (j.files ?? []).map((f) => f.path ?? f.url ?? (f.bytes != null ? `${f.bytes}B(
|
|
146
|
+
files: (j.files ?? []).map((f) => f.path ?? f.url ?? (f.bytes != null ? t `${f.bytes}B (already downloaded locally)` : null)),
|
|
146
147
|
costUsd: j.costUsd,
|
|
147
148
|
createdAt: j.createdAt,
|
|
148
149
|
prompt: clip(j.prompt),
|
|
@@ -153,7 +154,7 @@ export async function listAssets(ctx, modality) {
|
|
|
153
154
|
export async function getAsset(ctx, id) {
|
|
154
155
|
const job = await ctx.store.getJob(ctx.tenantId, id);
|
|
155
156
|
if (!job)
|
|
156
|
-
throw new Error(
|
|
157
|
+
throw new Error(t `Generation job ${id} not found (clize gen list shows them all)`);
|
|
157
158
|
return job;
|
|
158
159
|
}
|
|
159
160
|
/** 查预批额度。 */
|
|
@@ -162,24 +163,24 @@ export async function genBudget(ctx) {
|
|
|
162
163
|
if (!b)
|
|
163
164
|
return {
|
|
164
165
|
budget: null,
|
|
165
|
-
message: "
|
|
166
|
+
message: t("No pre-approved budget. Set one with clize gen budget set <usd>; generations within it skip per-call --confirm."),
|
|
166
167
|
};
|
|
167
168
|
return {
|
|
168
169
|
capUsd: b.capUsd,
|
|
169
170
|
spentUsd: round2(b.spentUsd),
|
|
170
171
|
remainingUsd: round2(Math.max(0, b.capUsd - b.spentUsd)),
|
|
171
172
|
setAt: b.setAt,
|
|
172
|
-
message: "
|
|
173
|
+
message: t("Generations within the budget skip per-call --confirm; beyond it --confirm is required again."),
|
|
173
174
|
};
|
|
174
175
|
}
|
|
175
176
|
/** 设 / 重置预批额度(spent 归零)。 */
|
|
176
177
|
export async function setGenBudget(ctx, capUsd) {
|
|
177
178
|
if (!(capUsd >= 0))
|
|
178
|
-
throw new Error("
|
|
179
|
+
throw new Error(t("The budget must be a non-negative number, e.g. clize gen budget set 2.00"));
|
|
179
180
|
const b = await ctx.store.setGenBudget(ctx.tenantId, round2(capUsd));
|
|
180
181
|
return {
|
|
181
182
|
...b,
|
|
182
|
-
message:
|
|
183
|
+
message: t `Pre-approved $${b.capUsd.toFixed(2)}; generations within it skip per-call --confirm (spent $0.00 / limit $${b.capUsd.toFixed(2)}).`,
|
|
183
184
|
};
|
|
184
185
|
}
|
|
185
186
|
const DEFAULT_VIDEO_MODEL = "veo";
|
|
@@ -233,14 +234,14 @@ export async function genJobs(ctx) {
|
|
|
233
234
|
count: all.length,
|
|
234
235
|
running: all.filter((j) => j.state === "running" || j.state === "queued").length,
|
|
235
236
|
...(all.length > GEN_LIST_CAP
|
|
236
|
-
? { truncated:
|
|
237
|
+
? { truncated: t `Only ${GEN_LIST_CAP}/${all.length} listed (every running job included); past assets: clize gen list` }
|
|
237
238
|
: {}),
|
|
238
239
|
jobs: jobs.map((j) => ({
|
|
239
240
|
id: j.id,
|
|
240
241
|
modality: j.modality,
|
|
241
242
|
model: j.model,
|
|
242
243
|
state: j.state,
|
|
243
|
-
files: (j.files ?? []).map((f) => f.path ?? f.url ?? (f.bytes != null ? `${f.bytes}B(
|
|
244
|
+
files: (j.files ?? []).map((f) => f.path ?? f.url ?? (f.bytes != null ? t `${f.bytes}B (already downloaded locally)` : null)),
|
|
244
245
|
costUsd: j.costUsd,
|
|
245
246
|
createdAt: j.createdAt,
|
|
246
247
|
prompt: clip(j.prompt),
|
|
@@ -251,12 +252,12 @@ export async function genJobs(ctx) {
|
|
|
251
252
|
export async function genJobStatus(ctx, id) {
|
|
252
253
|
const job = await ctx.store.getJob(ctx.tenantId, id);
|
|
253
254
|
if (!job)
|
|
254
|
-
throw new Error(
|
|
255
|
+
throw new Error(t `Generation job ${id} not found (clize gen jobs shows them all)`);
|
|
255
256
|
if (job.state !== "running" && job.state !== "queued")
|
|
256
257
|
return withHint(job);
|
|
257
258
|
const provider = ctx.providers.media(job.model);
|
|
258
259
|
if (!provider.poll || !job.providerJobId)
|
|
259
|
-
return { ...job, note: "
|
|
260
|
+
return { ...job, note: t("This job cannot be polled (no provider job id); possibly an old record.") };
|
|
260
261
|
let r;
|
|
261
262
|
try {
|
|
262
263
|
r = await provider.poll(job.providerJobId);
|
|
@@ -264,7 +265,7 @@ export async function genJobStatus(ctx, id) {
|
|
|
264
265
|
catch (e) {
|
|
265
266
|
return {
|
|
266
267
|
...job,
|
|
267
|
-
note:
|
|
268
|
+
note: t `Polling error: ${e instanceof Error ? e.message : String(e)}; try clize gen status ${id} again later.`,
|
|
268
269
|
};
|
|
269
270
|
}
|
|
270
271
|
if (r.state === "succeeded" && r.artifacts.length) {
|
|
@@ -272,14 +273,14 @@ export async function genJobStatus(ctx, id) {
|
|
|
272
273
|
return withHint(await completeJob(ctx, job, r, undefined, !!budget));
|
|
273
274
|
}
|
|
274
275
|
if (r.state === "failed")
|
|
275
|
-
return withHint(await failJob(ctx, job, r.error ?? "provider
|
|
276
|
-
return { ...job, note: "
|
|
276
|
+
return withHint(await failJob(ctx, job, r.error ?? t("the provider reported a failure")));
|
|
277
|
+
return { ...job, note: t("Still generating; run clize gen status again later.") };
|
|
277
278
|
}
|
|
278
279
|
/** 删任务记录 + best-effort 删本地文件。 */
|
|
279
280
|
export async function genRm(ctx, id) {
|
|
280
281
|
const job = await ctx.store.getJob(ctx.tenantId, id);
|
|
281
282
|
if (!job)
|
|
282
|
-
throw new Error(
|
|
283
|
+
throw new Error(t `Generation job ${id} not found`);
|
|
283
284
|
const removed = [];
|
|
284
285
|
for (const f of job.files ?? []) {
|
|
285
286
|
if (!f.path)
|
|
@@ -296,7 +297,7 @@ export async function genRm(ctx, id) {
|
|
|
296
297
|
return {
|
|
297
298
|
id,
|
|
298
299
|
removed,
|
|
299
|
-
message:
|
|
300
|
+
message: t `Deleted job ${id}${removed.length ? t ` + ${removed.length} local file(s)` : ""}`,
|
|
300
301
|
};
|
|
301
302
|
}
|
|
302
303
|
/** 托管(remote)结果落盘:图 base64 内联 / 视频音乐透传 URL → 本地文件,返回带 path 的最终对象。 */
|
|
@@ -317,15 +318,15 @@ export async function materializeRemote(job, out) {
|
|
|
317
318
|
const files = writeArtifacts(artifacts, { id: String(job.id ?? genId()), out });
|
|
318
319
|
const { artifacts: _a, download: _d, ...rest } = job;
|
|
319
320
|
const hint = job.modality === "image"
|
|
320
|
-
? "
|
|
321
|
-
: "
|
|
321
|
+
? t("Image written to disk — Read it and judge yourself; once satisfied deploy it into a site or attach it to an email.")
|
|
322
|
+
: t("Written to disk — you cannot watch video / listen to music; hand the path to the user and let them judge.");
|
|
322
323
|
return { ...rest, files, hint };
|
|
323
324
|
}
|
|
324
325
|
// ---- 内部 ----
|
|
325
326
|
/** 提交异步生成(视频 / 音乐):报价 → 💰 闸 → 提交 →(默认)long-poll 到完成 /(--async)返 job id。 */
|
|
326
327
|
async function submitAsync(ctx, req, out, opts) {
|
|
327
328
|
if (!req.prompt?.trim())
|
|
328
|
-
throw new Error("
|
|
329
|
+
throw new Error(t("prompt missing — you (the brain) write the prompt; clize does not write it for you."));
|
|
329
330
|
// 项目归属先行解析(fail fast):检出名无效要在提交 provider 任务之前就报。
|
|
330
331
|
const projectId = await requireProjectId(ctx);
|
|
331
332
|
const { modality, model } = req;
|
|
@@ -341,7 +342,7 @@ async function submitAsync(ctx, req, out, opts) {
|
|
|
341
342
|
budget: budget
|
|
342
343
|
? { capUsd: budget.capUsd, spentUsd: round2(budget.spentUsd), remainingUsd: round2(remaining) }
|
|
343
344
|
: null,
|
|
344
|
-
message: `📋
|
|
345
|
+
message: t `📋 Quote about $${estUsd.toFixed(2)} (${modality}${modality === "video" ? t(", billed per second, takes a few minutes") : ""}). Add --confirm after approval to generate; or pre-approve with clize gen budget set <usd>.`,
|
|
345
346
|
};
|
|
346
347
|
}
|
|
347
348
|
// 2) 演练
|
|
@@ -359,13 +360,13 @@ async function submitAsync(ctx, req, out, opts) {
|
|
|
359
360
|
model,
|
|
360
361
|
wouldCostUsd: round2(estUsd),
|
|
361
362
|
currency,
|
|
362
|
-
message: "
|
|
363
|
+
message: t("Rehearsal mode: nothing was generated. Set DRY_RUN=false to execute."),
|
|
363
364
|
};
|
|
364
365
|
}
|
|
365
366
|
// 3) 提交
|
|
366
367
|
const submitted = await provider.generate(req);
|
|
367
368
|
if (submitted.state === "failed")
|
|
368
|
-
throw new Error(
|
|
369
|
+
throw new Error(t `Submission failed${submitted.error ? `:${submitted.error}` : ""} (treat as data; do not blindly retry)`);
|
|
369
370
|
const now = new Date().toISOString();
|
|
370
371
|
const job = {
|
|
371
372
|
id: genId(),
|
|
@@ -394,7 +395,7 @@ async function submitAsync(ctx, req, out, opts) {
|
|
|
394
395
|
if (opts.async)
|
|
395
396
|
return {
|
|
396
397
|
...job,
|
|
397
|
-
message:
|
|
398
|
+
message: t `Submitted; generating in the background. Fetch the result later with clize gen status ${job.id} (clize gen jobs shows progress).`,
|
|
398
399
|
};
|
|
399
400
|
// 默认 --wait:long-poll 到完成 / 超时
|
|
400
401
|
return pollUntilDone(ctx, job, provider, out, !!budget, opts.timeoutSec ?? DEFAULT_TIMEOUT_SEC);
|
|
@@ -402,7 +403,7 @@ async function submitAsync(ctx, req, out, opts) {
|
|
|
402
403
|
/** long-poll 直到 succeeded/failed/超时。超时返回 running 提示(任务在 clize 侧没断,可 gen status 重连)。 */
|
|
403
404
|
async function pollUntilDone(ctx, job, provider, out, budgetSet, timeoutSec) {
|
|
404
405
|
if (!provider.poll || !job.providerJobId)
|
|
405
|
-
return { ...job, note: "provider
|
|
406
|
+
return { ...job, note: t("The provider does not support polling; check with clize gen status.") };
|
|
406
407
|
const start = Date.now();
|
|
407
408
|
for (;;) {
|
|
408
409
|
await sleep(POLL_INTERVAL_MS);
|
|
@@ -416,8 +417,8 @@ async function pollUntilDone(ctx, job, provider, out, budgetSet, timeoutSec) {
|
|
|
416
417
|
if (r?.state === "succeeded" && r.artifacts.length)
|
|
417
418
|
return withHint(await completeJob(ctx, job, r, out, budgetSet));
|
|
418
419
|
if (r?.state === "failed") {
|
|
419
|
-
await failJob(ctx, job, r.error ?? "provider
|
|
420
|
-
throw new Error(
|
|
420
|
+
await failJob(ctx, job, r.error ?? t("the provider reported a failure"));
|
|
421
|
+
throw new Error(t `Generation failed${r.error ? `:${r.error}` : ""} (treat as data; do not blindly retry)`);
|
|
421
422
|
}
|
|
422
423
|
if (Date.now() - start >= timeoutSec * 1000)
|
|
423
424
|
// timedOut=true + next:机器可读 —— 任务没失败也没丢,别重新提交,照 next 轮询。
|
|
@@ -425,7 +426,7 @@ async function pollUntilDone(ctx, job, provider, out, budgetSet, timeoutSec) {
|
|
|
425
426
|
...job,
|
|
426
427
|
timedOut: true,
|
|
427
428
|
next: `clize gen status ${job.id}`,
|
|
428
|
-
message:
|
|
429
|
+
message: t `Still generating after ${timeoutSec}s — the job is intact on the clize side. Fetch the result later with clize gen status ${job.id}.`,
|
|
429
430
|
};
|
|
430
431
|
}
|
|
431
432
|
}
|
|
@@ -461,8 +462,8 @@ function withHint(job) {
|
|
|
461
462
|
if (job.state !== "succeeded")
|
|
462
463
|
return { ...job };
|
|
463
464
|
const hint = job.modality === "image"
|
|
464
|
-
? "
|
|
465
|
-
: "
|
|
465
|
+
? t("Image written to disk — Read it and judge yourself; once satisfied deploy it into a site or attach it to an email.")
|
|
466
|
+
: t("Written to disk — you cannot watch video / listen to music; hand the path to the user and let them judge, do not conclude for them.");
|
|
466
467
|
return { ...job, hint };
|
|
467
468
|
}
|
|
468
469
|
function sleep(ms) {
|
|
@@ -503,7 +504,7 @@ function b64ToBytes(b64) {
|
|
|
503
504
|
async function fetchBytes(url) {
|
|
504
505
|
const r = await fetch(url);
|
|
505
506
|
if (!r.ok)
|
|
506
|
-
throw new Error(
|
|
507
|
+
throw new Error(t `Result download failed ${r.status}`);
|
|
507
508
|
return new Uint8Array(await r.arrayBuffer());
|
|
508
509
|
}
|
|
509
510
|
//# sourceMappingURL=media.js.map
|
package/dist/core/media.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/core/media.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/core/media.ts"],"names":[],"mappings":"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"}
|
package/dist/core/payments.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/** 连接 Stripe 的唯一入口:web dashboard 计费页。
|
|
2
2
|
* Connect onboarding 要本人登录 Stripe 填 KYC,CLI / agent 做不了也不该做 ——
|
|
3
3
|
* 所有「去连接」的指路(CLI / worker 报错 / status hint)都收敛到这一个常量。 */
|
|
4
|
+
import { t } from "../i18n/t.js";
|
|
4
5
|
export const CONNECT_URL = "https://clize.ai/app#/billing";
|
|
5
6
|
/** 平台抽成比例:租户覆盖值(platformFeePct)优先,否则平台默认(connectFeePct)。 */
|
|
6
7
|
export function feePctFor(ctx, override) {
|
|
@@ -22,11 +23,11 @@ export async function connectStatus(ctx) {
|
|
|
22
23
|
// 三态。任何一态都不提 CLI 连接命令:连接只在网页做(要登录 Stripe 填 KYC)。
|
|
23
24
|
hint: c.accountId
|
|
24
25
|
? c.chargesEnabled
|
|
25
|
-
? "
|
|
26
|
-
: "
|
|
26
|
+
? t("Ready to take payments. clize pay link --amount <usd> creates a payment link (lands in your Stripe by default).")
|
|
27
|
+
: t("Connected but Stripe onboarding is incomplete; finish verification at Stripe to take payments, until then they land in your clize balance.")
|
|
27
28
|
: platformReady
|
|
28
|
-
?
|
|
29
|
-
: "
|
|
29
|
+
? t `Not connected — payments land in your clize balance (see clize balance). To receive money in your own Stripe, connect it yourself at ${CONNECT_URL}.`
|
|
30
|
+
: t("Stripe Connect is not enabled on the platform yet; payments land in your clize balance (see clize balance)."),
|
|
30
31
|
};
|
|
31
32
|
}
|
|
32
33
|
/** 本商家代收单列表(最新在前)。 */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payments.js","sourceRoot":"","sources":["../../src/core/payments.ts"],"names":[],"mappings":"AASA;;0DAE0D;AAC1D,MAAM,CAAC,MAAM,WAAW,GAAG,+BAA+B,CAAC;AAE3D,4DAA4D;AAC5D,MAAM,UAAU,SAAS,CAAC,GAAY,EAAE,QAAiB;IACvD,OAAO,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC;AACxD,CAAC;AAED;;0DAE0D;AAC1D,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,GAAY;IAC9C,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1D,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC;IAC1D,OAAO;QACL,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;QACxB,cAAc,EAAE,CAAC,CAAC,cAAc;QAChC,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,yBAAyB;QACjD,MAAM,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC;QAChC,oBAAoB,EAAE,aAAa;QACnC,UAAU,EAAE,WAAW;QACvB,iDAAiD;QACjD,IAAI,EAAE,CAAC,CAAC,SAAS;YACf,CAAC,CAAC,CAAC,CAAC,cAAc;gBAChB,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"payments.js","sourceRoot":"","sources":["../../src/core/payments.ts"],"names":[],"mappings":"AASA;;0DAE0D;AAC1D,OAAO,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AACjC,MAAM,CAAC,MAAM,WAAW,GAAG,+BAA+B,CAAC;AAE3D,4DAA4D;AAC5D,MAAM,UAAU,SAAS,CAAC,GAAY,EAAE,QAAiB;IACvD,OAAO,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC;AACxD,CAAC;AAED;;0DAE0D;AAC1D,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,GAAY;IAC9C,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1D,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC;IAC1D,OAAO;QACL,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;QACxB,cAAc,EAAE,CAAC,CAAC,cAAc;QAChC,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,yBAAyB;QACjD,MAAM,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC;QAChC,oBAAoB,EAAE,aAAa;QACnC,UAAU,EAAE,WAAW;QACvB,iDAAiD;QACjD,IAAI,EAAE,CAAC,CAAC,SAAS;YACf,CAAC,CAAC,CAAC,CAAC,cAAc;gBAChB,CAAC,CAAC,CAAC,CAAC,iHAAiH,CAAC;gBACtH,CAAC,CAAC,CAAC,CAAC,4IAA4I,CAAC;YACnJ,CAAC,CAAC,aAAa;gBACb,CAAC,CAAC,CAAC,CAAA,wIAAwI,WAAW,GAAG;gBACzJ,CAAC,CAAC,CAAC,CAAC,6GAA6G,CAAC;KACvH,CAAC;AACJ,CAAC;AAED,sBAAsB;AACtB,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAY,EAAE,KAAK,GAAG,EAAE;IACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;AACzE,CAAC"}
|
package/dist/core/projects.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ClizeError } from "../lib/errors.js";
|
|
2
2
|
/** slug 规整:小写、非字母数字转连字符、去首尾连字符。 */
|
|
3
|
+
import { t } from "../i18n/t.js";
|
|
3
4
|
function slugify(s) {
|
|
4
5
|
return s
|
|
5
6
|
.toLowerCase()
|
|
@@ -27,12 +28,12 @@ export async function listProjects(ctx) {
|
|
|
27
28
|
export async function createProject(ctx, opts) {
|
|
28
29
|
const name = (opts.name || "").trim();
|
|
29
30
|
if (!name)
|
|
30
|
-
throw new ClizeError("
|
|
31
|
+
throw new ClizeError(t("The project name cannot be empty"), 400);
|
|
31
32
|
const slug = (opts.slug ? opts.slug : slugify(name)).trim();
|
|
32
33
|
if (!slug)
|
|
33
|
-
throw new ClizeError("
|
|
34
|
+
throw new ClizeError(t("The project slug cannot be empty"), 400);
|
|
34
35
|
if (await ctx.store.getProject(ctx.tenantId, slug))
|
|
35
|
-
throw new ClizeError(
|
|
36
|
+
throw new ClizeError(t `Project "${slug}" already exists`, 409);
|
|
36
37
|
return ctx.store.createProject(ctx.tenantId, { name, slug });
|
|
37
38
|
}
|
|
38
39
|
/** 「将建未建」哨兵 id:checkout 检出的项目还没落库(init 即项目,首次写资源才建)时,
|
|
@@ -53,8 +54,19 @@ export async function currentProjectId(ctx) {
|
|
|
53
54
|
return p.id;
|
|
54
55
|
if (ctx.projectSlugSource === "checkout")
|
|
55
56
|
return PENDING_PROJECT_ID;
|
|
56
|
-
throw new ClizeError(
|
|
57
|
-
|
|
57
|
+
throw new ClizeError(t `Project "${ctx.projectSlug}" does not exist (-p requires an existing project, to catch typos; ` +
|
|
58
|
+
t("clize projects lists them, clize projects new \"<name>\" creates one)"), 404);
|
|
59
|
+
}
|
|
60
|
+
/** 当前检出项目下的域名集合 —— status「谁在等」/ email list / email search 的项目作用域用
|
|
61
|
+
* (design/cli-experience-plan.md B2)。未检出 → undefined(全租户);checkout 未建(PENDING)→ []
|
|
62
|
+
* (空项目视图);-p 指向不存在的项目 → currentProjectId 已抛 404(与 workspaceStatus 同闸,不静默回退全租户)。 */
|
|
63
|
+
export async function projectDomains(ctx) {
|
|
64
|
+
const id = await currentProjectId(ctx);
|
|
65
|
+
if (!id)
|
|
66
|
+
return undefined;
|
|
67
|
+
if (id === PENDING_PROJECT_ID)
|
|
68
|
+
return [];
|
|
69
|
+
return (await ctx.store.listIdentities(ctx.tenantId, id)).map((i) => i.domain.toLowerCase());
|
|
58
70
|
}
|
|
59
71
|
/** 写路径:解析当前检出项目的 id,资源创建(buy / claim / import / gen)的归属必须确定。
|
|
60
72
|
* flag 来源(-p)不存在 → currentProjectId 已报错(读写同闸);
|
|
@@ -100,16 +112,16 @@ export async function moveDomain(ctx, domain, targetSlug) {
|
|
|
100
112
|
const d = domain.toLowerCase();
|
|
101
113
|
const identity = await ctx.store.getIdentity(ctx.tenantId, d);
|
|
102
114
|
if (!identity)
|
|
103
|
-
throw new ClizeError(
|
|
115
|
+
throw new ClizeError(t `Domain ${d} not found (clize domain list shows them all)`, 404);
|
|
104
116
|
const target = targetSlug === "default"
|
|
105
117
|
? await ctx.store.ensureDefaultProject(ctx.tenantId)
|
|
106
118
|
: await ctx.store.getProject(ctx.tenantId, targetSlug);
|
|
107
119
|
if (!target)
|
|
108
|
-
throw new ClizeError(
|
|
120
|
+
throw new ClizeError(t `Project "${targetSlug}" does not exist (see clize projects)`, 404);
|
|
109
121
|
const def = await ctx.store.ensureDefaultProject(ctx.tenantId);
|
|
110
122
|
const fromId = identity.projectId ?? def.id;
|
|
111
123
|
if (fromId === target.id)
|
|
112
|
-
return { domain: d, project: target.slug, message: `${d}
|
|
124
|
+
return { domain: d, project: target.slug, message: t `${d} is already in project "${target.slug}"; nothing to move.` };
|
|
113
125
|
const fromSlug = (await ctx.store.listProjects(ctx.tenantId)).find((p) => p.id === fromId)?.slug ?? "default";
|
|
114
126
|
await ctx.store.upsertIdentity(ctx.tenantId, { domain: d, projectId: target.id });
|
|
115
127
|
await ctx.store.appendAudit(ctx.tenantId, {
|
|
@@ -120,7 +132,7 @@ export async function moveDomain(ctx, domain, targetSlug) {
|
|
|
120
132
|
domain: d,
|
|
121
133
|
from: fromSlug,
|
|
122
134
|
to: target.slug,
|
|
123
|
-
message:
|
|
135
|
+
message: t `Moved ${d} to project "${target.slug}" (its mailboxes moved with it; media assets stay).`,
|
|
124
136
|
};
|
|
125
137
|
}
|
|
126
138
|
/** 改项目显示名 / slug。default 不能改 slug(它是无归属旧资源的兜底锚点)。 */
|
|
@@ -128,16 +140,16 @@ export async function renameProject(ctx, slug, patch) {
|
|
|
128
140
|
const name = patch.name?.trim() || undefined;
|
|
129
141
|
const newSlug = patch.slug?.trim() || undefined;
|
|
130
142
|
if (!name && !newSlug)
|
|
131
|
-
throw new ClizeError("
|
|
143
|
+
throw new ClizeError(t("Specify at least one of --name / --slug"), 400);
|
|
132
144
|
const existing = slug === "default"
|
|
133
145
|
? await ctx.store.ensureDefaultProject(ctx.tenantId)
|
|
134
146
|
: await ctx.store.getProject(ctx.tenantId, slug);
|
|
135
147
|
if (!existing)
|
|
136
|
-
throw new ClizeError(
|
|
148
|
+
throw new ClizeError(t `Project "${slug}" does not exist (see clize projects)`, 404);
|
|
137
149
|
if (newSlug && slug === "default")
|
|
138
|
-
throw new ClizeError("default
|
|
150
|
+
throw new ClizeError(t("The default project's slug cannot change (it anchors legacy resources without an owner); --name can"), 400);
|
|
139
151
|
if (newSlug && newSlug !== slug && (await ctx.store.getProject(ctx.tenantId, newSlug)))
|
|
140
|
-
throw new ClizeError(
|
|
152
|
+
throw new ClizeError(t `Project "${newSlug}" already exists`, 409);
|
|
141
153
|
const rec = await ctx.store.updateProject(ctx.tenantId, slug, { name, slug: newSlug });
|
|
142
154
|
await ctx.store.appendAudit(ctx.tenantId, {
|
|
143
155
|
action: "project_rename",
|
|
@@ -147,31 +159,31 @@ export async function renameProject(ctx, slug, patch) {
|
|
|
147
159
|
slug: rec.slug,
|
|
148
160
|
name: rec.name,
|
|
149
161
|
...(newSlug && newSlug !== slug
|
|
150
|
-
? { note: `
|
|
162
|
+
? { note: t `Slug changed; directories checked out under "${slug}" need clize use ${rec.slug} again` }
|
|
151
163
|
: {}),
|
|
152
164
|
};
|
|
153
165
|
}
|
|
154
166
|
/** 删项目。default 不可删;非空项目必须 --into 指定资源去向(域名 + 媒体资产归并过去,绝不级联删资源)。 */
|
|
155
167
|
export async function removeProject(ctx, slug, opts = {}) {
|
|
156
168
|
if (slug === "default")
|
|
157
|
-
throw new ClizeError("default
|
|
169
|
+
throw new ClizeError(t("The default project cannot be removed (it anchors legacy resources without an owner)"), 400);
|
|
158
170
|
const target = await ctx.store.getProject(ctx.tenantId, slug);
|
|
159
171
|
if (!target)
|
|
160
|
-
throw new ClizeError(
|
|
172
|
+
throw new ClizeError(t `Project "${slug}" does not exist (see clize projects)`, 404);
|
|
161
173
|
const domains = await ctx.store.listIdentities(ctx.tenantId, target.id);
|
|
162
174
|
const jobs = (await ctx.store.listJobs(ctx.tenantId).catch(() => [])).filter((j) => j.projectId === target.id);
|
|
163
175
|
let movedTo;
|
|
164
176
|
if (domains.length || jobs.length) {
|
|
165
177
|
if (!opts.into)
|
|
166
|
-
throw new ClizeError(
|
|
167
|
-
|
|
178
|
+
throw new ClizeError(t `Project "${slug}" is not empty (${domains.length} domain(s), ${jobs.length} media asset(s)); ` +
|
|
179
|
+
t("use --into <project> to say where its resources go (e.g. --into default); resources are never cascade-deleted"), 400);
|
|
168
180
|
const into = opts.into === "default"
|
|
169
181
|
? await ctx.store.ensureDefaultProject(ctx.tenantId)
|
|
170
182
|
: await ctx.store.getProject(ctx.tenantId, opts.into);
|
|
171
183
|
if (!into)
|
|
172
|
-
throw new ClizeError(
|
|
184
|
+
throw new ClizeError(t `Target project "${opts.into}" does not exist`, 404);
|
|
173
185
|
if (into.id === target.id)
|
|
174
|
-
throw new ClizeError("
|
|
186
|
+
throw new ClizeError(t("A project cannot be merged into itself"), 400);
|
|
175
187
|
for (const d of domains)
|
|
176
188
|
await ctx.store.upsertIdentity(ctx.tenantId, { domain: d.domain, projectId: into.id });
|
|
177
189
|
for (const j of jobs)
|
|
@@ -189,8 +201,8 @@ export async function removeProject(ctx, slug, opts = {}) {
|
|
|
189
201
|
? { movedTo, movedDomains: domains.length, movedJobs: jobs.length }
|
|
190
202
|
: {}),
|
|
191
203
|
message: movedTo
|
|
192
|
-
?
|
|
193
|
-
:
|
|
204
|
+
? t `Removed project "${slug}"; ${domains.length} domain(s) and ${jobs.length} media asset(s) merged into "${movedTo}". Directories checked out on it need clize use again.`
|
|
205
|
+
: t `Removed the empty project "${slug}". Directories checked out on it need clize use again.`,
|
|
194
206
|
};
|
|
195
207
|
}
|
|
196
208
|
/** 串台护栏:检出项目时,domain 必须归属当前项目,否则拒绝 ——
|
|
@@ -211,8 +223,8 @@ export async function assertDomainInProject(ctx, domain, action) {
|
|
|
211
223
|
return;
|
|
212
224
|
const owner = (await ctx.store.listProjects(ctx.tenantId)).find((p) => p.id === pid);
|
|
213
225
|
const ownerSlug = owner?.slug ?? "default";
|
|
214
|
-
throw new ClizeError(`${domain}
|
|
215
|
-
|
|
226
|
+
throw new ClizeError(t `${domain} belongs to project "${ownerSlug}" but "${ctx.projectSlug}" is checked out — blocked to prevent cross-project mistakes (${action}).` +
|
|
227
|
+
t `To operate across projects say so explicitly: add -p ${ownerSlug}, or cd into that project's directory (clize use ${ownerSlug}).`, 409);
|
|
216
228
|
}
|
|
217
229
|
/** deploy 专用的项目归属解析:「跟随域名」—— 部署目标域全局唯一、所属由服务端为真相,
|
|
218
230
|
* 故按它真实所属项目走,而不是死守可能陈旧的本地 clize.json 检出。
|
|
@@ -237,8 +249,8 @@ export async function resolveDeployProject(ctx, domain) {
|
|
|
237
249
|
return { project: ownerSlug, rerouted: false };
|
|
238
250
|
// 检出与域所属不符:
|
|
239
251
|
if (ctx.projectSlugSource === "flag")
|
|
240
|
-
throw new ClizeError(`${domain}
|
|
241
|
-
|
|
252
|
+
throw new ClizeError(t `${domain} belongs to project "${ownerSlug}" but -p named "${ctx.projectSlug}" — the explicit project does not match; blocked (deploy).` +
|
|
253
|
+
t `To deploy to ${domain}, drop -p (routing follows the domain) or use -p ${ownerSlug}.`, 409);
|
|
242
254
|
// 来自 clize.json 的陈旧检出 → 跟随域名,自动路由,不打断。
|
|
243
255
|
return { project: ownerSlug, rerouted: true, checkout: ctx.projectSlug };
|
|
244
256
|
}
|