@wraps.dev/cli 2.29.0 → 2.29.1
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/dist/api-lambda.zip +0 -0
- package/dist/cli.js +61 -11
- package/dist/cli.js.map +1 -1
- package/dist/lambda/agent-enforcer/.bundled +1 -1
- package/dist/lambda/event-processor/.bundled +1 -1
- package/dist/lambda/inbound-processor/.bundled +1 -1
- package/dist/lambda/sms-event-processor/.bundled +1 -1
- package/package.json +1 -1
package/dist/api-lambda.zip
CHANGED
|
Binary file
|
package/dist/cli.js
CHANGED
|
@@ -2424,7 +2424,7 @@ var init_client = __esm({
|
|
|
2424
2424
|
console.log("\u{1F4CA} Wraps Platform \u2014 analytics, templates, automations");
|
|
2425
2425
|
console.log(` From $10/mo \u2192 ${pc2.cyan("https://wraps.dev/platform")}`);
|
|
2426
2426
|
console.log();
|
|
2427
|
-
console.log(`\u{1F4AC} ${pc2.cyan("hey@wraps.
|
|
2427
|
+
console.log(`\u{1F4AC} ${pc2.cyan("hey@wraps.dev")}`);
|
|
2428
2428
|
console.log(pc2.dim("\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"));
|
|
2429
2429
|
return true;
|
|
2430
2430
|
}
|
|
@@ -6480,7 +6480,10 @@ function displaySuccess(outputs) {
|
|
|
6480
6480
|
""
|
|
6481
6481
|
);
|
|
6482
6482
|
}
|
|
6483
|
-
lines.push(
|
|
6483
|
+
lines.push(
|
|
6484
|
+
` 2. View dashboard: ${pc10.blue(outputs.dashboardUrl ?? getAppBaseUrl())}`,
|
|
6485
|
+
""
|
|
6486
|
+
);
|
|
6484
6487
|
clack8.outro(pc10.green("Email infrastructure deployed successfully!"));
|
|
6485
6488
|
console.log(lines.join("\n"));
|
|
6486
6489
|
if (outputs.dnsAutoCreated && outputs.domain) {
|
|
@@ -6774,8 +6777,10 @@ ${pc10.dim("Run:")} ${pc10.yellow(`wraps email verify --domain ${exampleDomain}`
|
|
|
6774
6777
|
`
|
|
6775
6778
|
);
|
|
6776
6779
|
}
|
|
6777
|
-
console.log(
|
|
6778
|
-
|
|
6780
|
+
console.log(
|
|
6781
|
+
`
|
|
6782
|
+
${pc10.bold("Dashboard:")} ${pc10.blue(status2.dashboardUrl ?? getAppBaseUrl())}`
|
|
6783
|
+
);
|
|
6779
6784
|
console.log(`${pc10.bold("Docs:")} ${pc10.blue("https://wraps.dev/docs")}
|
|
6780
6785
|
`);
|
|
6781
6786
|
}
|
|
@@ -6920,6 +6925,7 @@ var init_output = __esm({
|
|
|
6920
6925
|
"src/utils/shared/output.ts"() {
|
|
6921
6926
|
"use strict";
|
|
6922
6927
|
init_esm_shims();
|
|
6928
|
+
init_config();
|
|
6923
6929
|
init_json_output();
|
|
6924
6930
|
DeploymentProgress = class {
|
|
6925
6931
|
currentSpinner = null;
|
|
@@ -40669,6 +40675,21 @@ import * as clack17 from "@clack/prompts";
|
|
|
40669
40675
|
import * as pulumi16 from "@pulumi/pulumi";
|
|
40670
40676
|
import pc19 from "picocolors";
|
|
40671
40677
|
init_events();
|
|
40678
|
+
|
|
40679
|
+
// src/utils/selfhost/dashboard-url.ts
|
|
40680
|
+
init_esm_shims();
|
|
40681
|
+
init_config();
|
|
40682
|
+
init_metadata();
|
|
40683
|
+
async function resolveDashboardUrl(accountId, region) {
|
|
40684
|
+
try {
|
|
40685
|
+
const metadata = await loadConnectionMetadata(accountId, region);
|
|
40686
|
+
return metadata?.services?.selfhost?.config?.appUrl || getAppBaseUrl();
|
|
40687
|
+
} catch {
|
|
40688
|
+
return getAppBaseUrl();
|
|
40689
|
+
}
|
|
40690
|
+
}
|
|
40691
|
+
|
|
40692
|
+
// src/commands/email/config.ts
|
|
40672
40693
|
init_aws();
|
|
40673
40694
|
init_errors();
|
|
40674
40695
|
init_fs();
|
|
@@ -40922,6 +40943,10 @@ ${pc19.bold("Current Configuration:")}
|
|
|
40922
40943
|
return;
|
|
40923
40944
|
}
|
|
40924
40945
|
displaySuccess({
|
|
40946
|
+
dashboardUrl: await resolveDashboardUrl(
|
|
40947
|
+
identity.accountId,
|
|
40948
|
+
outputs.region
|
|
40949
|
+
),
|
|
40925
40950
|
roleArn: outputs.roleArn,
|
|
40926
40951
|
configSetName: outputs.configSetName,
|
|
40927
40952
|
region: outputs.region,
|
|
@@ -41314,6 +41339,10 @@ ${pc20.dim("\u2500\u2500\u2500 end Pulumi output \u2500\u2500\u2500")}
|
|
|
41314
41339
|
return;
|
|
41315
41340
|
}
|
|
41316
41341
|
displaySuccess({
|
|
41342
|
+
dashboardUrl: await resolveDashboardUrl(
|
|
41343
|
+
identity.accountId,
|
|
41344
|
+
outputs.region
|
|
41345
|
+
),
|
|
41317
41346
|
roleArn: outputs.roleArn,
|
|
41318
41347
|
configSetName: outputs.configSetName,
|
|
41319
41348
|
region: outputs.region,
|
|
@@ -46566,6 +46595,10 @@ ${pc30.yellow(pc30.bold("Configuration Warnings:"))}`);
|
|
|
46566
46595
|
);
|
|
46567
46596
|
}
|
|
46568
46597
|
displaySuccess({
|
|
46598
|
+
dashboardUrl: await resolveDashboardUrl(
|
|
46599
|
+
identity.accountId,
|
|
46600
|
+
outputs.region
|
|
46601
|
+
),
|
|
46569
46602
|
roleArn: outputs.roleArn,
|
|
46570
46603
|
configSetName: outputs.configSetName,
|
|
46571
46604
|
region: outputs.region,
|
|
@@ -48264,6 +48297,9 @@ ${pc34.green("\u2713")} ${pc34.bold("Infrastructure removed successfully!")}
|
|
|
48264
48297
|
init_esm_shims();
|
|
48265
48298
|
init_client();
|
|
48266
48299
|
init_events();
|
|
48300
|
+
import * as clack34 from "@clack/prompts";
|
|
48301
|
+
import * as pulumi24 from "@pulumi/pulumi";
|
|
48302
|
+
import pc35 from "picocolors";
|
|
48267
48303
|
init_aws();
|
|
48268
48304
|
init_errors();
|
|
48269
48305
|
init_fs();
|
|
@@ -48271,9 +48307,6 @@ init_json_output();
|
|
|
48271
48307
|
init_metadata();
|
|
48272
48308
|
init_output();
|
|
48273
48309
|
init_pulumi();
|
|
48274
|
-
import * as clack34 from "@clack/prompts";
|
|
48275
|
-
import * as pulumi24 from "@pulumi/pulumi";
|
|
48276
|
-
import pc35 from "picocolors";
|
|
48277
48310
|
async function emailStatus(options) {
|
|
48278
48311
|
await ensurePulumiInstalled();
|
|
48279
48312
|
const startTime = Date.now();
|
|
@@ -48374,6 +48407,7 @@ Run ${pc35.cyan("wraps email init")} to deploy email infrastructure.
|
|
|
48374
48407
|
const statusData = {
|
|
48375
48408
|
integrationLevel,
|
|
48376
48409
|
region,
|
|
48410
|
+
dashboardUrl: await resolveDashboardUrl(identity.accountId, region),
|
|
48377
48411
|
domains: domainsWithTokens,
|
|
48378
48412
|
resources: {
|
|
48379
48413
|
roleArn: stackOutputs.roleArn?.value,
|
|
@@ -52271,6 +52305,10 @@ ${pc39.bold("Cost Impact:")}`);
|
|
|
52271
52305
|
}
|
|
52272
52306
|
const needsCertificateValidation = outputs.httpsTrackingPending || outputs.httpsTrackingEnabled && acmValidationRecords.length > 0 && !outputs.cloudFrontDomain;
|
|
52273
52307
|
displaySuccess({
|
|
52308
|
+
dashboardUrl: await resolveDashboardUrl(
|
|
52309
|
+
identity.accountId,
|
|
52310
|
+
outputs.region
|
|
52311
|
+
),
|
|
52274
52312
|
roleArn: outputs.roleArn,
|
|
52275
52313
|
configSetName: outputs.configSetName,
|
|
52276
52314
|
region: outputs.region,
|
|
@@ -57157,14 +57195,26 @@ To replace it with the API-only control plane: run ${pc49.cyan("pnpm selfhost:de
|
|
|
57157
57195
|
if (!appUrl) {
|
|
57158
57196
|
const appUrlAnswer = await clack46.text({
|
|
57159
57197
|
message: "App URL (where your self-hosted dashboard will be served):",
|
|
57160
|
-
|
|
57161
|
-
|
|
57198
|
+
placeholder: "https://app.yourcompany.com",
|
|
57199
|
+
validate: (value) => {
|
|
57200
|
+
if (!value?.trim()) {
|
|
57201
|
+
return "Required \u2014 this URL is baked into every link your deployment emails to recipients.";
|
|
57202
|
+
}
|
|
57203
|
+
const trimmed = value.trim();
|
|
57204
|
+
if (!URL.canParse(trimmed)) {
|
|
57205
|
+
return "Must be a valid URL, for example https://app.yourcompany.com";
|
|
57206
|
+
}
|
|
57207
|
+
const { protocol } = new URL(trimmed);
|
|
57208
|
+
if (protocol !== "https:" && protocol !== "http:") {
|
|
57209
|
+
return "Must be an http(s) URL";
|
|
57210
|
+
}
|
|
57211
|
+
}
|
|
57162
57212
|
});
|
|
57163
57213
|
if (clack46.isCancel(appUrlAnswer)) {
|
|
57164
57214
|
clack46.cancel("Operation cancelled.");
|
|
57165
57215
|
process.exit(0);
|
|
57166
57216
|
}
|
|
57167
|
-
appUrl = appUrlAnswer
|
|
57217
|
+
appUrl = appUrlAnswer.trim();
|
|
57168
57218
|
}
|
|
57169
57219
|
if (!(options.yes || options.preview)) {
|
|
57170
57220
|
const confirmed = await clack46.confirm({
|
|
@@ -65368,7 +65418,7 @@ async function support() {
|
|
|
65368
65418
|
trackCommand("support", { success: true });
|
|
65369
65419
|
clack64.intro(pc67.bold("Get Help with Wraps"));
|
|
65370
65420
|
console.log();
|
|
65371
|
-
console.log(` ${pc67.bold("Email:")} ${pc67.cyan("hey@wraps.
|
|
65421
|
+
console.log(` ${pc67.bold("Email:")} ${pc67.cyan("hey@wraps.dev")}`);
|
|
65372
65422
|
console.log(
|
|
65373
65423
|
` ${pc67.bold("GitHub:")} ${pc67.cyan("https://github.com/wraps-dev/wraps/issues")}`
|
|
65374
65424
|
);
|