@hexclave/shared 1.0.61 → 1.0.62
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/{admin-interface-ChuyYSXj.d.ts → admin-interface-D63SFHX_.d.ts} +94 -12
- package/dist/admin-interface-D63SFHX_.d.ts.map +1 -0
- package/dist/{admin-metrics-1yiWGq9z.d.ts → admin-metrics-bsOkw4YQ.d.ts} +15 -15
- package/dist/{admin-metrics-1yiWGq9z.d.ts.map → admin-metrics-bsOkw4YQ.d.ts.map} +1 -1
- package/dist/ai/unified-prompts/skill-site-prompt-parts/ai-setup-prompt.js +1 -1
- package/dist/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.d.ts +5 -0
- package/dist/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.d.ts.map +1 -0
- package/dist/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.js +128 -0
- package/dist/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.js.map +1 -0
- package/dist/ai/unified-prompts/skill-site-prompt.d.ts +3 -1
- package/dist/ai/unified-prompts/skill-site-prompt.d.ts.map +1 -1
- package/dist/ai/unified-prompts/skill-site-prompt.js +11 -0
- package/dist/ai/unified-prompts/skill-site-prompt.js.map +1 -1
- package/dist/apps/apps-config.d.ts +6 -0
- package/dist/apps/apps-config.d.ts.map +1 -1
- package/dist/apps/apps-config.js +6 -0
- package/dist/apps/apps-config.js.map +1 -1
- package/dist/{client-interface-C4H4gn_G.d.ts → client-interface-DvkciaL0.d.ts} +10 -10
- package/dist/{client-interface-C4H4gn_G.d.ts.map → client-interface-DvkciaL0.d.ts.map} +1 -1
- package/dist/config/schema-fuzzer.test.js +38 -1
- package/dist/config/schema-fuzzer.test.js.map +1 -1
- package/dist/config/schema.d.ts +2 -2
- package/dist/config/schema.js +45 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/config-authoring.d.ts +1 -1
- package/dist/{current-user-BCkMYzHx.d.ts → current-user-BBoN3hsn.d.ts} +17 -17
- package/dist/{current-user-BCkMYzHx.d.ts.map → current-user-BBoN3hsn.d.ts.map} +1 -1
- package/dist/{email-outbox-BRZiK0ZG.d.ts → email-outbox-CqzwInBL.d.ts} +313 -313
- package/dist/{email-outbox-BRZiK0ZG.d.ts.map → email-outbox-CqzwInBL.d.ts.map} +1 -1
- package/dist/esm/ai/unified-prompts/skill-site-prompt-parts/ai-setup-prompt.js +1 -1
- package/dist/esm/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.d.ts +5 -0
- package/dist/esm/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.d.ts.map +1 -0
- package/dist/esm/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.js +128 -0
- package/dist/esm/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.js.map +1 -0
- package/dist/esm/ai/unified-prompts/skill-site-prompt.d.ts +3 -1
- package/dist/esm/ai/unified-prompts/skill-site-prompt.d.ts.map +1 -1
- package/dist/esm/ai/unified-prompts/skill-site-prompt.js +10 -1
- package/dist/esm/ai/unified-prompts/skill-site-prompt.js.map +1 -1
- package/dist/esm/apps/apps-config.d.ts +6 -0
- package/dist/esm/apps/apps-config.d.ts.map +1 -1
- package/dist/esm/apps/apps-config.js +6 -0
- package/dist/esm/apps/apps-config.js.map +1 -1
- package/dist/esm/config/schema-fuzzer.test.js +38 -1
- package/dist/esm/config/schema-fuzzer.test.js.map +1 -1
- package/dist/esm/config/schema.d.ts +249 -119
- package/dist/esm/config/schema.d.ts.map +1 -1
- package/dist/esm/config/schema.js +42 -1
- package/dist/esm/config/schema.js.map +1 -1
- package/dist/esm/interface/admin-interface.d.ts +83 -1
- package/dist/esm/interface/admin-interface.d.ts.map +1 -1
- package/dist/esm/interface/admin-interface.js +48 -0
- package/dist/esm/interface/admin-interface.js.map +1 -1
- package/dist/esm/interface/admin-metrics.d.ts +14 -14
- package/dist/esm/interface/conversations.d.ts +37 -37
- package/dist/esm/interface/crud/current-user.d.ts +16 -16
- package/dist/esm/interface/crud/email-outbox.d.ts +312 -312
- package/dist/esm/interface/crud/invoices.d.ts +2 -2
- package/dist/esm/interface/crud/products.d.ts +23 -23
- package/dist/esm/interface/crud/project-api-keys.d.ts +4 -4
- package/dist/esm/interface/crud/projects.d.ts +59 -59
- package/dist/esm/interface/crud/team-member-profiles.d.ts +32 -32
- package/dist/esm/interface/crud/transactions.d.ts +29 -29
- package/dist/esm/interface/crud/transactions.d.ts.map +1 -1
- package/dist/esm/interface/crud/users.d.ts +22 -22
- package/dist/esm/interface/plan-usage.d.ts +1 -1
- package/dist/esm/interface/webhooks.d.ts +4 -4
- package/dist/esm/known-errors.d.ts +4 -4
- package/dist/esm/schema-fields.d.ts +12 -12
- package/dist/esm/sessions.d.ts +9 -9
- package/dist/esm/utils/tar.d.ts +26 -0
- package/dist/esm/utils/tar.d.ts.map +1 -0
- package/dist/esm/utils/tar.js +136 -0
- package/dist/esm/utils/tar.js.map +1 -0
- package/dist/helpers/password.d.ts +1 -1
- package/dist/helpers/production-mode.d.ts +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/interface/admin-interface.d.ts +3 -3
- package/dist/interface/admin-interface.js +48 -0
- package/dist/interface/admin-interface.js.map +1 -1
- package/dist/interface/admin-metrics.d.ts +1 -1
- package/dist/interface/client-interface.d.ts +1 -1
- package/dist/interface/conversations.d.ts +37 -37
- package/dist/interface/crud/current-user.d.ts +1 -1
- package/dist/interface/crud/email-outbox.d.ts +1 -1
- package/dist/interface/crud/invoices.d.ts +1 -1
- package/dist/interface/crud/products.d.ts +1 -1
- package/dist/interface/crud/project-api-keys.d.ts +1 -1
- package/dist/interface/crud/projects.d.ts +1 -1
- package/dist/interface/crud/team-member-profiles.d.ts +1 -1
- package/dist/interface/crud/transactions.d.ts +1 -1
- package/dist/interface/crud/users.d.ts +1 -1
- package/dist/interface/plan-usage.d.ts +1 -1
- package/dist/interface/server-interface.d.ts +1 -1
- package/dist/interface/webhooks.d.ts +1 -1
- package/dist/{invoices-BGLLnTlR.d.ts → invoices-CHo9YKbI.d.ts} +3 -3
- package/dist/{invoices-BGLLnTlR.d.ts.map → invoices-CHo9YKbI.d.ts.map} +1 -1
- package/dist/{known-errors-Bhd0JAgh.d.ts → known-errors-Bm4a61wL.d.ts} +5 -5
- package/dist/{known-errors-Bhd0JAgh.d.ts.map → known-errors-Bm4a61wL.d.ts.map} +1 -1
- package/dist/known-errors.d.ts +1 -1
- package/dist/{plan-usage-COq9I00z.d.ts → plan-usage-BaDxcLZ1.d.ts} +2 -2
- package/dist/{plan-usage-COq9I00z.d.ts.map → plan-usage-BaDxcLZ1.d.ts.map} +1 -1
- package/dist/{products-BkPf1X78.d.ts → products-D4o8A2W0.d.ts} +24 -24
- package/dist/{products-BkPf1X78.d.ts.map → products-D4o8A2W0.d.ts.map} +1 -1
- package/dist/{project-api-keys-CK9SIo0q.d.ts → project-api-keys--7V5X_UW.d.ts} +5 -5
- package/dist/{project-api-keys-CK9SIo0q.d.ts.map → project-api-keys--7V5X_UW.d.ts.map} +1 -1
- package/dist/{projects-CVqfljhv.d.ts → projects-BX5Y50kJ.d.ts} +60 -60
- package/dist/{projects-CVqfljhv.d.ts.map → projects-BX5Y50kJ.d.ts.map} +1 -1
- package/dist/{schema-BPMGhu_7.d.ts → schema-dJ_7rUCO.d.ts} +250 -120
- package/dist/schema-dJ_7rUCO.d.ts.map +1 -0
- package/dist/{schema-fields-C8sIQVTq.d.ts → schema-fields-DZtDQEEO.d.ts} +13 -13
- package/dist/{schema-fields-C8sIQVTq.d.ts.map → schema-fields-DZtDQEEO.d.ts.map} +1 -1
- package/dist/schema-fields.d.ts +1 -1
- package/dist/{server-interface-CRp4VVZh.d.ts → server-interface-Ra_vIHP4.d.ts} +8 -8
- package/dist/{server-interface-CRp4VVZh.d.ts.map → server-interface-Ra_vIHP4.d.ts.map} +1 -1
- package/dist/{sessions-COluKK6_.d.ts → sessions-CI-0TBQb.d.ts} +11 -11
- package/dist/{sessions-COluKK6_.d.ts.map → sessions-CI-0TBQb.d.ts.map} +1 -1
- package/dist/sessions.d.ts +1 -1
- package/dist/{team-member-profiles-CgYXR-Rx.d.ts → team-member-profiles-BoDEqx-0.d.ts} +33 -33
- package/dist/{team-member-profiles-CgYXR-Rx.d.ts.map → team-member-profiles-BoDEqx-0.d.ts.map} +1 -1
- package/dist/{transactions-7q13mxhG.d.ts → transactions-CHNUJ42J.d.ts} +30 -30
- package/dist/transactions-CHNUJ42J.d.ts.map +1 -0
- package/dist/{users-7MKfEyyq.d.ts → users-DHNRwoSz.d.ts} +24 -24
- package/dist/{users-7MKfEyyq.d.ts.map → users-DHNRwoSz.d.ts.map} +1 -1
- package/dist/utils/tar.d.ts +26 -0
- package/dist/utils/tar.d.ts.map +1 -0
- package/dist/utils/tar.js +138 -0
- package/dist/utils/tar.js.map +1 -0
- package/dist/{webhooks-C5gG85Ce.d.ts → webhooks-8Ts1Clcb.d.ts} +5 -5
- package/dist/{webhooks-C5gG85Ce.d.ts.map → webhooks-8Ts1Clcb.d.ts.map} +1 -1
- package/package.json +1 -1
- package/src/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.ts +128 -0
- package/src/ai/unified-prompts/skill-site-prompt.ts +15 -0
- package/src/apps/apps-config.ts +9 -0
- package/src/config/schema-fuzzer.test.ts +37 -0
- package/src/config/schema.ts +193 -0
- package/src/interface/admin-interface.ts +173 -0
- package/src/utils/tar.tsx +261 -0
- package/dist/admin-interface-ChuyYSXj.d.ts.map +0 -1
- package/dist/schema-BPMGhu_7.d.ts.map +0 -1
- package/dist/transactions-7q13mxhG.d.ts.map +0 -1
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { n as Result } from "./results-DP3BzoL6.js";
|
|
2
|
-
import {
|
|
3
|
-
import { a as KnownErrors } from "./known-errors-
|
|
2
|
+
import { p as EnvironmentConfigOverrideOverride } from "./schema-dJ_7rUCO.js";
|
|
3
|
+
import { a as KnownErrors } from "./known-errors-Bm4a61wL.js";
|
|
4
4
|
import { n as MoneyAmount } from "./currency-constants-Cq_q8twn.js";
|
|
5
|
-
import { g as branchConfigSourceSchema, o as RestrictedReason, t as ConfigAgentRunApi } from "./schema-fields-
|
|
6
|
-
import { i as RefreshToken, r as InternalSession, t as AccessToken } from "./sessions-
|
|
7
|
-
import { J as UserActivityResponse, K as MetricsUserCounts, R as MetricsResponse, a as AnalyticsClickmapKind, c as AnalyticsClickmapResponse, r as AnalyticsClickmapDevice, u as AnalyticsClickmapTokenResponse } from "./admin-metrics-
|
|
8
|
-
import { t as EmailOutboxCrud } from "./email-outbox-
|
|
5
|
+
import { g as branchConfigSourceSchema, o as RestrictedReason, t as ConfigAgentRunApi } from "./schema-fields-DZtDQEEO.js";
|
|
6
|
+
import { i as RefreshToken, r as InternalSession, t as AccessToken } from "./sessions-CI-0TBQb.js";
|
|
7
|
+
import { J as UserActivityResponse, K as MetricsUserCounts, R as MetricsResponse, a as AnalyticsClickmapKind, c as AnalyticsClickmapResponse, r as AnalyticsClickmapDevice, u as AnalyticsClickmapTokenResponse } from "./admin-metrics-bsOkw4YQ.js";
|
|
8
|
+
import { t as EmailOutboxCrud } from "./email-outbox-CqzwInBL.js";
|
|
9
9
|
import { t as InternalEmailsCrud } from "./emails-Ba4yEaCS.js";
|
|
10
10
|
import { t as InternalApiKeysCrud } from "./internal-api-keys-D8IYDodH.js";
|
|
11
11
|
import { t as ProjectPermissionDefinitionsCrud } from "./project-permissions-kdi675F-.js";
|
|
12
|
-
import { r as ProjectsCrud } from "./projects-
|
|
12
|
+
import { r as ProjectsCrud } from "./projects-BX5Y50kJ.js";
|
|
13
13
|
import { a as AdminListSessionReplayChunksResponse, i as AdminListSessionReplayChunksOptions, n as AdminGetSessionReplayChunkEventsResponse, o as AdminListSessionReplaysOptions, r as AdminGetSessionReplayResponse, s as AdminListSessionReplaysResponse, t as AdminGetSessionReplayAllEventsResponse } from "./session-replays-CXqhDpZq.js";
|
|
14
14
|
import { t as SvixTokenCrud } from "./svix-token-BsMrLGvy.js";
|
|
15
15
|
import { t as TeamPermissionDefinitionsCrud } from "./team-permissions-DqOpaOWh.js";
|
|
16
|
-
import { i as TransactionType, n as Transaction } from "./transactions-
|
|
17
|
-
import { n as PlanUsageResponse } from "./plan-usage-
|
|
18
|
-
import { n as ServerAuthApplicationOptions, t as HexclaveServerInterface } from "./server-interface-
|
|
16
|
+
import { i as TransactionType, n as Transaction } from "./transactions-CHNUJ42J.js";
|
|
17
|
+
import { n as PlanUsageResponse } from "./plan-usage-BaDxcLZ1.js";
|
|
18
|
+
import { n as ServerAuthApplicationOptions, t as HexclaveServerInterface } from "./server-interface-Ra_vIHP4.js";
|
|
19
19
|
import * as yup$1 from "yup";
|
|
20
20
|
|
|
21
21
|
//#region src/interface/admin-interface.d.ts
|
|
@@ -31,6 +31,71 @@ type ChatContent = Array<{
|
|
|
31
31
|
argsText: string;
|
|
32
32
|
result: any;
|
|
33
33
|
}>;
|
|
34
|
+
type AdminDeploymentRunJson = {
|
|
35
|
+
id: string;
|
|
36
|
+
service_id: string;
|
|
37
|
+
status: "queued" | "building" | "ready" | "error" | "canceled";
|
|
38
|
+
target: string;
|
|
39
|
+
triggered_by: string;
|
|
40
|
+
url: string | null;
|
|
41
|
+
error: string | null;
|
|
42
|
+
created_at_millis: number;
|
|
43
|
+
finished_at_millis: number | null;
|
|
44
|
+
};
|
|
45
|
+
type AdminDeploymentEnvVarJson = {
|
|
46
|
+
key: string;
|
|
47
|
+
type: "plain" | "secret" | "connection";
|
|
48
|
+
value: string | null;
|
|
49
|
+
secret_key: string | null;
|
|
50
|
+
};
|
|
51
|
+
type AdminDeploymentEnvVarOptions = {
|
|
52
|
+
type?: undefined;
|
|
53
|
+
value: string;
|
|
54
|
+
} | {
|
|
55
|
+
type: "secret";
|
|
56
|
+
key: string;
|
|
57
|
+
} | {
|
|
58
|
+
type: "connection";
|
|
59
|
+
value: string;
|
|
60
|
+
};
|
|
61
|
+
type AdminDeploymentServiceJson = {
|
|
62
|
+
id: string;
|
|
63
|
+
type: "vercel";
|
|
64
|
+
framework: string | null;
|
|
65
|
+
install_command: string | null;
|
|
66
|
+
build_command: string | null;
|
|
67
|
+
output_directory: string | null;
|
|
68
|
+
root_directory: string | null;
|
|
69
|
+
provisioned: boolean;
|
|
70
|
+
status: "not_deployed" | "queued" | "building" | "deployed" | "failed" | "canceled";
|
|
71
|
+
has_successful_deploy: boolean;
|
|
72
|
+
url: string | null;
|
|
73
|
+
env: AdminDeploymentEnvVarJson[];
|
|
74
|
+
domains: {
|
|
75
|
+
hostname: string;
|
|
76
|
+
is_primary: boolean;
|
|
77
|
+
verified: boolean;
|
|
78
|
+
}[];
|
|
79
|
+
latest_run: AdminDeploymentRunJson | null;
|
|
80
|
+
};
|
|
81
|
+
type AdminDeploymentServiceBuildOptions = {
|
|
82
|
+
framework?: string | null;
|
|
83
|
+
install_command?: string | null;
|
|
84
|
+
build_command?: string | null;
|
|
85
|
+
output_directory?: string | null;
|
|
86
|
+
root_directory?: string | null;
|
|
87
|
+
};
|
|
88
|
+
type AdminDeploymentDomainJson = {
|
|
89
|
+
hostname: string;
|
|
90
|
+
is_primary: boolean;
|
|
91
|
+
verified: boolean;
|
|
92
|
+
pending_first_deploy: boolean;
|
|
93
|
+
dns_records: {
|
|
94
|
+
type: string;
|
|
95
|
+
name: string;
|
|
96
|
+
value: string;
|
|
97
|
+
}[];
|
|
98
|
+
};
|
|
34
99
|
type AdminAuthApplicationOptions = ServerAuthApplicationOptions & ({
|
|
35
100
|
superSecretAdminKey: string;
|
|
36
101
|
} | {
|
|
@@ -371,7 +436,24 @@ declare class HexclaveAdminInterface extends HexclaveServerInterface {
|
|
|
371
436
|
}): Promise<EmailOutboxCrud["Server"]["List"]>;
|
|
372
437
|
getOutboxEmail(id: string): Promise<EmailOutboxCrud["Server"]["Read"]>;
|
|
373
438
|
updateOutboxEmail(id: string, data: EmailOutboxCrud["Server"]["Update"]): Promise<EmailOutboxCrud["Server"]["Read"]>;
|
|
439
|
+
listDeploymentServices(): Promise<AdminDeploymentServiceJson[]>;
|
|
440
|
+
createDeploymentService(id: string, build: AdminDeploymentServiceBuildOptions): Promise<AdminDeploymentServiceJson>;
|
|
441
|
+
updateDeploymentService(serviceId: string, update: AdminDeploymentServiceBuildOptions & {
|
|
442
|
+
env?: Record<string, AdminDeploymentEnvVarOptions>;
|
|
443
|
+
}): Promise<AdminDeploymentServiceJson>;
|
|
444
|
+
deleteDeploymentService(serviceId: string): Promise<void>;
|
|
445
|
+
listDeploymentRuns(serviceId: string, options?: {
|
|
446
|
+
limit?: number;
|
|
447
|
+
}): Promise<AdminDeploymentRunJson[]>;
|
|
448
|
+
getDeploymentRunLogs(runId: string, options?: {
|
|
449
|
+
signal?: AbortSignal;
|
|
450
|
+
}): Promise<string>;
|
|
451
|
+
addDeploymentServiceDomain(serviceId: string, hostname: string, options?: {
|
|
452
|
+
isPrimary?: boolean;
|
|
453
|
+
}): Promise<void>;
|
|
454
|
+
getDeploymentServiceDomain(serviceId: string, hostname: string): Promise<AdminDeploymentDomainJson>;
|
|
455
|
+
deleteDeploymentServiceDomain(serviceId: string, hostname: string): Promise<void>;
|
|
374
456
|
}
|
|
375
457
|
//#endregion
|
|
376
|
-
export {
|
|
377
|
-
//# sourceMappingURL=admin-interface-
|
|
458
|
+
export { AdminDeploymentRunJson as a, ChatContent as c, InternalApiKeyCreateCrudResponse as d, AdminDeploymentEnvVarOptions as i, HexclaveAdminInterface as l, AdminDeploymentDomainJson as n, AdminDeploymentServiceBuildOptions as o, AdminDeploymentEnvVarJson as r, AdminDeploymentServiceJson as s, AdminAuthApplicationOptions as t, InternalApiKeyCreateCrudRequest as u };
|
|
459
|
+
//# sourceMappingURL=admin-interface-D63SFHX_.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin-interface-D63SFHX_.d.ts","names":[],"sources":["../src/interface/admin-interface.ts"],"mappings":"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"}
|
|
@@ -150,23 +150,23 @@ declare const MetricsEmailOverviewSchema: yup.ObjectSchema<{
|
|
|
150
150
|
activity: number;
|
|
151
151
|
}[];
|
|
152
152
|
daily_emails_by_status: {
|
|
153
|
-
ok: number;
|
|
154
153
|
error: number;
|
|
155
154
|
date: string;
|
|
155
|
+
ok: number;
|
|
156
156
|
in_progress: number;
|
|
157
157
|
}[];
|
|
158
158
|
emails_sent: number;
|
|
159
159
|
recent_emails: {
|
|
160
|
-
id: string;
|
|
161
|
-
created_at_millis: number;
|
|
162
160
|
status: string;
|
|
161
|
+
id: string;
|
|
163
162
|
subject: string;
|
|
163
|
+
created_at_millis: number;
|
|
164
164
|
}[];
|
|
165
165
|
deliverability_status: {
|
|
166
166
|
error: number;
|
|
167
|
-
bounced: number;
|
|
168
167
|
in_progress: number;
|
|
169
168
|
delivered: number;
|
|
169
|
+
bounced: number;
|
|
170
170
|
};
|
|
171
171
|
deliverability_rate: number;
|
|
172
172
|
bounce_rate: number;
|
|
@@ -369,7 +369,7 @@ declare const UserActivityResponseBodySchema: yup.ObjectSchema<{
|
|
|
369
369
|
data_points: undefined;
|
|
370
370
|
}, "">;
|
|
371
371
|
declare const AnalyticsClickmapKindSchema: yup.StringSchema<"team_user_hour_of_week" | "session_replay_clicks", yup.AnyObject, undefined, "">;
|
|
372
|
-
declare const AnalyticsClickmapDeviceSchema: yup.StringSchema<"
|
|
372
|
+
declare const AnalyticsClickmapDeviceSchema: yup.StringSchema<"tv" | "widescreen" | "desktop" | "laptop" | "tablet" | "mobile", yup.AnyObject, undefined, "">;
|
|
373
373
|
declare const AnalyticsClickmapTokenResponseBodySchema: yup.ObjectSchema<{
|
|
374
374
|
token: string;
|
|
375
375
|
origin: string;
|
|
@@ -403,9 +403,9 @@ declare const AnalyticsClickmapResponseBodySchema: yup.ObjectSchema<{
|
|
|
403
403
|
replays: number;
|
|
404
404
|
}[];
|
|
405
405
|
users: {
|
|
406
|
-
id: string;
|
|
407
406
|
primary_email: string | null;
|
|
408
407
|
display_name: string | null;
|
|
408
|
+
id: string;
|
|
409
409
|
profile_image_url: string | null;
|
|
410
410
|
clicks: number;
|
|
411
411
|
replays: number;
|
|
@@ -443,9 +443,9 @@ declare const AnalyticsClickmapResponseBodySchema: yup.ObjectSchema<{
|
|
|
443
443
|
elements: never[];
|
|
444
444
|
}, "">;
|
|
445
445
|
declare const MetricsActiveUsersByCountrySchema: yup.MixedSchema<Record<string, {
|
|
446
|
-
id: string;
|
|
447
446
|
primary_email: string | null;
|
|
448
447
|
display_name: string | null;
|
|
448
|
+
id: string;
|
|
449
449
|
profile_image_url: string | null;
|
|
450
450
|
signed_up_at_millis: number;
|
|
451
451
|
last_active_at_millis: number | null;
|
|
@@ -471,25 +471,25 @@ declare const MetricsResponseBodySchema: yup.ObjectSchema<{
|
|
|
471
471
|
}[];
|
|
472
472
|
users_by_country: Record<string, number>;
|
|
473
473
|
active_users_by_country: Record<string, {
|
|
474
|
-
id: string;
|
|
475
474
|
primary_email: string | null;
|
|
476
475
|
display_name: string | null;
|
|
476
|
+
id: string;
|
|
477
477
|
profile_image_url: string | null;
|
|
478
478
|
signed_up_at_millis: number;
|
|
479
479
|
last_active_at_millis: number | null;
|
|
480
480
|
}[]>;
|
|
481
481
|
recently_registered: {
|
|
482
|
-
id: string;
|
|
483
482
|
primary_email: string | null;
|
|
484
483
|
display_name: string | null;
|
|
484
|
+
id: string;
|
|
485
485
|
profile_image_url: string | null;
|
|
486
486
|
signed_up_at_millis: number;
|
|
487
487
|
last_active_at_millis: number | null;
|
|
488
488
|
}[];
|
|
489
489
|
recently_active: {
|
|
490
|
-
id: string;
|
|
491
490
|
primary_email: string | null;
|
|
492
491
|
display_name: string | null;
|
|
492
|
+
id: string;
|
|
493
493
|
profile_image_url: string | null;
|
|
494
494
|
signed_up_at_millis: number;
|
|
495
495
|
last_active_at_millis: number | null;
|
|
@@ -563,23 +563,23 @@ declare const MetricsResponseBodySchema: yup.ObjectSchema<{
|
|
|
563
563
|
emails_by_status: Record<string, number>;
|
|
564
564
|
total_emails: number;
|
|
565
565
|
daily_emails_by_status: {
|
|
566
|
-
ok: number;
|
|
567
566
|
error: number;
|
|
568
567
|
date: string;
|
|
568
|
+
ok: number;
|
|
569
569
|
in_progress: number;
|
|
570
570
|
}[];
|
|
571
571
|
emails_sent: number;
|
|
572
572
|
recent_emails: {
|
|
573
|
-
id: string;
|
|
574
|
-
created_at_millis: number;
|
|
575
573
|
status: string;
|
|
574
|
+
id: string;
|
|
576
575
|
subject: string;
|
|
576
|
+
created_at_millis: number;
|
|
577
577
|
}[];
|
|
578
578
|
deliverability_status: {
|
|
579
579
|
error: number;
|
|
580
|
-
bounced: number;
|
|
581
580
|
in_progress: number;
|
|
582
581
|
delivered: number;
|
|
582
|
+
bounced: number;
|
|
583
583
|
};
|
|
584
584
|
deliverability_rate: number;
|
|
585
585
|
bounce_rate: number;
|
|
@@ -804,4 +804,4 @@ type AnalyticsClickmapOptions = {
|
|
|
804
804
|
};
|
|
805
805
|
//#endregion
|
|
806
806
|
export { MetricsNamedCount as A, MetricsTopCountry as B, MetricsDataPoint as C, MetricsEmailOverviewSchema as D, MetricsEmailOverview as E, MetricsRecentEmailSchema as F, MetricsTopRegionSchema as G, MetricsTopReferrer as H, MetricsRecentUser as I, UserActivityResponse as J, MetricsUserCounts as K, MetricsRecentUserSchema as L, MetricsPaymentsOverview as M, MetricsPaymentsOverviewSchema as N, MetricsLoginMethodEntry as O, MetricsRecentEmail as P, MetricsResponse as R, MetricsDailyRevenuePointSchema as S, MetricsDataPointsSchema as T, MetricsTopReferrerSchema as U, MetricsTopCountrySchema as V, MetricsTopRegion as W, UserActivityResponseBodySchema as Y, MetricsAuthOverview as _, AnalyticsClickmapKind as a, MetricsDailyEmailStatusBreakdownSchema as b, AnalyticsClickmapResponse as c, AnalyticsClickmapTokenResponseBodySchema as d, MetricsActiveUsersByCountrySchema as f, MetricsAnalyticsOverviewSchema as g, MetricsAnalyticsOverview as h, AnalyticsClickmapDeviceSchema as i, MetricsNamedCountSchema as j, MetricsLoginMethodEntrySchema as k, AnalyticsClickmapResponseBodySchema as l, MetricsActivitySplitSchema as m, AnalyticsClickmapCellSchema as n, AnalyticsClickmapKindSchema as o, MetricsActivitySplit as p, MetricsUserCountsSchema as q, AnalyticsClickmapDevice as r, AnalyticsClickmapOptions as s, AnalyticsClickmapCell as t, AnalyticsClickmapTokenResponse as u, MetricsAuthOverviewSchema as v, MetricsDataPointSchema as w, MetricsDailyRevenuePoint as x, MetricsDailyEmailStatusBreakdown as y, MetricsResponseBodySchema as z };
|
|
807
|
-
//# sourceMappingURL=admin-metrics-
|
|
807
|
+
//# sourceMappingURL=admin-metrics-bsOkw4YQ.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-metrics-
|
|
1
|
+
{"version":3,"file":"admin-metrics-bsOkw4YQ.d.ts","names":[],"sources":["../src/interface/admin-metrics.ts"],"mappings":";;;cAWa,sBAAA,EAAsB,GAAA,CAAA,YAAA;;;GAGvB,GAAA,CAAA,SAAA;;;;cAEC,uBAAA,EAAuB,GAAA,CAAA,WAAA;;;KAA6C,GAAA,CAAA,SAAA;AAAA,cAEpE,0BAAA,EAA0B,GAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;GAK3B,GAAA,CAAA,SAAA;;;;;;cAEC,yBAAA,EAAyB,GAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAS1B,GAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;cAEC,6BAAA,EAA6B,GAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;cAW7B,wBAAA,EAAwB,GAAA,CAAA,YAAA;;;;;GAKzB,GAAA,CAAA,SAAA;;;;;;cAEC,sCAAA,EAAsC,GAAA,CAAA,YAAA;;;;;GAKvC,GAAA,CAAA,SAAA;;;;;;cAEC,0BAAA,EAA0B,GAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkB1B,8BAAA,EAA8B,GAAA,CAAA,YAAA;;;;GAI/B,GAAA,CAAA,SAAA;;;;;cAEC,wBAAA,EAAwB,GAAA,CAAA,YAAA;;;GAGzB,GAAA,CAAA,SAAA;;;;cAIC,uBAAA,EAAuB,GAAA,CAAA,YAAA;;;GAGxB,GAAA,CAAA,SAAA;;;;cAEC,sBAAA,EAAsB,GAAA,CAAA,YAAA;;;;GAIvB,GAAA,CAAA,SAAA;;;;;cAEC,uBAAA,EAAuB,GAAA,CAAA,YAAA;;;GAGxB,GAAA,CAAA,SAAA;;;;cAEC,8BAAA,EAA8B,GAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0C/B,GAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAEC,6BAAA,EAA6B,GAAA,CAAA,YAAA;;;GAG9B,GAAA,CAAA,SAAA;;;;cAUC,uBAAA,EAAuB,GAAA,CAAA,YAAA;;;;;;;GAOP,GAAA,CAAA,SAAA;;;;;;;;cAKhB,8BAAA,EAA8B,GAAA,CAAA,YAAA;;;;;GAE/B,GAAA,CAAA,SAAA;;;cAEC,2BAAA,EAA2B,GAAA,CAAA,YAAA,qDAAA,GAAA,CAAA,SAAA;AAAA,cAC3B,6BAAA,EAA6B,GAAA,CAAA,YAAA,mEAAA,GAAA,CAAA,SAAA;AAAA,cAE7B,wCAAA,EAAwC,GAAA,CAAA,YAAA;;;;GAIzC,GAAA,CAAA,SAAA;;;;;cAEC,2BAAA,EAA2B,GAAA,CAAA,YAAA;;;;GAI5B,GAAA,CAAA,SAAA;;;;;cAEC,mCAAA,EAAmC,GAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CpC,GAAA,CAAA,SAAA;;;;;;;;;;cAQC,iCAAA,EAAiC,GAAA,CAAA,WAAA,CAAA,MAAA;;;;;;;;cAKjC,yBAAA,EAAyB,GAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA6BzB,uBAAA,EAAuB,GAAA,CAAA,YAAA;;;GAGxB,GAAA,CAAA,SAAA;;;;KAGA,gBAAA,GAAmB,GAAA,CAAI,SAAS,QAAQ,sBAAA;AAAA,KACxC,oBAAA,GAAuB,GAAA,CAAI,SAAS,QAAQ,0BAAA;AAAA,KAC5C,mBAAA,GAAsB,GAAA,CAAI,SAAS,QAAQ,yBAAA;AAAA,KAC3C,uBAAA,GAA0B,GAAA,CAAI,SAAS,QAAQ,6BAAA;AAAA,KAC/C,kBAAA,GAAqB,GAAA,CAAI,SAAS,QAAQ,wBAAA;AAAA,KAC1C,gCAAA,GAAmC,GAAA,CAAI,SAAS,QAAQ,sCAAA;AAAA,KACxD,oBAAA,GAAuB,GAAA,CAAI,SAAS,QAAQ,0BAAA;AAAA,KAC5C,wBAAA,GAA2B,GAAA,CAAI,SAAS,QAAQ,8BAAA;AAAA,KAChD,kBAAA,GAAqB,GAAA,CAAI,SAAS,QAAQ,wBAAA;AAAA,KAC1C,gBAAA,GAAmB,GAAA,CAAI,SAAS,QAAQ,sBAAA;AAAA,KACxC,iBAAA,GAAoB,GAAA,CAAI,SAAS,QAAQ,uBAAA;AAAA,KACzC,iBAAA,GAAoB,GAAA,CAAI,SAAS,QAAQ,uBAAA;AAAA,KACzC,wBAAA,GAA2B,GAAA,CAAI,SAAS,QAAQ,8BAAA;AAAA,KAChD,uBAAA,GAA0B,GAAA,CAAI,SAAS,QAAQ,6BAAA;AAAA,KAC/C,iBAAA,GAAoB,GAAA,CAAI,SAAS,QAAQ,uBAAA;AAAA,KACzC,eAAA,GAAkB,GAAA,CAAI,SAAS,QAAQ,yBAAA;AAAA,KACvC,iBAAA,GAAoB,GAAA,CAAI,SAAS,QAAQ,uBAAA;AAAA,KACzC,oBAAA,GAAuB,GAAA,CAAI,SAAS,QAAQ,8BAAA;AAAA,KAC5C,qBAAA,GAAwB,GAAA,CAAI,SAAS,QAAQ,2BAAA;AAAA,KAC7C,uBAAA,GAA0B,GAAA,CAAI,SAAS,QAAQ,6BAAA;AAAA,KAC/C,qBAAA,GAAwB,GAAA,CAAI,SAAS,QAAQ,2BAAA;AAAA,KAC7C,yBAAA,GAA4B,GAAA,CAAI,SAAS,QAAQ,mCAAA;AAAA,KACjD,8BAAA,GAAiC,GAAA,CAAI,SAAS,QAAQ,wCAAA;AAAA,KAKtD,wBAAA;EACV,IAAA,EAAM,qBAAA;EACN,aAAA;EACA,SAAA;EACA,UAAA;EACA,UAAA;EACA,MAAA;EACA,QAAA;EACA,MAAA,GAAS,uBAAuB;EAChC,gBAAA;EACA,gBAAA;EACA,QAAA;EACA,KAAA;EACA,KAAA;AAAA"}
|
|
@@ -5,7 +5,7 @@ let _________utils_objects_js = require("../../../utils/objects.js");
|
|
|
5
5
|
let _________utils_strings_js = require("../../../utils/strings.js");
|
|
6
6
|
let ___reminders_js = require("../reminders.js");
|
|
7
7
|
//#region package.json
|
|
8
|
-
var version = "1.0.
|
|
8
|
+
var version = "1.0.62";
|
|
9
9
|
//#endregion
|
|
10
10
|
//#region \0@oxc-project+runtime@0.137.0/helpers/esm/taggedTemplateLiteral.js
|
|
11
11
|
function _taggedTemplateLiteral(e, t) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployments-skill.d.ts","names":[],"sources":["../../../../src/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.ts"],"mappings":";cAMa,uBAAA"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
//#region src/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.ts
|
|
3
|
+
const deploymentsSkillSection = require("../../../utils/strings.js").deindent`
|
|
4
|
+
# Hexclave Deployments
|
|
5
|
+
|
|
6
|
+
The Deployments app makes deploying a service very easy. You select a type of service to deploy and provide your code, build instructions, run instructions, environment variables, and the code framework. You can set up multiple deployments per Hexclave project — for example, a backend service and a frontend service. Once a service is deployed, it is publicly accessible.
|
|
7
|
+
|
|
8
|
+
For this iteration of the Deployments app, only the \`vercel\` service type is available. It can be used to set up serverless deployments.
|
|
9
|
+
|
|
10
|
+
To use Hexclave Deployments, you must do a few things. First, the Deployments app must be enabled, by adding \`deployments-alpha\` under \`apps.installed\`. Second, you must edit your \`hexclave.config.ts\` file to add the relevant configuration, as specified below. Both keys are \`deployments-alpha\`, not \`deployments\` — the app is in alpha and its id says so. Because of the hyphen, quote it.
|
|
11
|
+
|
|
12
|
+
## Config
|
|
13
|
+
|
|
14
|
+
\`\`\`ts title="hexclave.config.ts"
|
|
15
|
+
import type { HexclaveConfig } from "@hexclave/js/config"; // replace \`js\` with the correct framework SDK package
|
|
16
|
+
|
|
17
|
+
export const config: HexclaveConfig = {
|
|
18
|
+
apps: {
|
|
19
|
+
installed: {
|
|
20
|
+
authentication: { enabled: true },
|
|
21
|
+
"deployments-alpha": { enabled: true },
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
"deployments-alpha": {
|
|
25
|
+
services: {
|
|
26
|
+
web: {
|
|
27
|
+
type: "vercel",
|
|
28
|
+
rootDirectory: "./",
|
|
29
|
+
framework: "nextjs",
|
|
30
|
+
installCommand: "pnpm install",
|
|
31
|
+
buildCommand: "pnpm build",
|
|
32
|
+
outputDirectory: ".next",
|
|
33
|
+
env: {
|
|
34
|
+
"MY_ENV_VAR": { value: "true" },
|
|
35
|
+
"DATABASE_CONNECTION_STRING": { type: "secret", key: "db_connection" },
|
|
36
|
+
"NEXT_PUBLIC_HEXCLAVE_PROJECT_ID": { type: "connection", value: "hexclave.projectId" },
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
\`\`\`
|
|
43
|
+
|
|
44
|
+
Here, \`web\` is the name of your service. \`type\` refers to the type of service you want to set up; for now, as mentioned earlier, only \`vercel\` is supported. \`rootDirectory\` is the directory in which the install and build commands are run, and where the code for your service is found. \`installCommand\` is the command run to install your application's dependencies, and \`buildCommand\` is what is run to build the necessary packages and files. \`framework\` is the framework used by your service; from it and \`outputDirectory\`, the run command is inferred.
|
|
45
|
+
|
|
46
|
+
The \`HexclaveConfig\` annotation requires the SDK package it is imported from to be a dependency of the project. If it isn't, either install it or drop the annotation (the config is plain TypeScript — the CLI does not type-check it).
|
|
47
|
+
|
|
48
|
+
Note also that the config file usually sits inside \`rootDirectory\`, which means it is uploaded with your source and compiled by the remote build like any other file. If the deployed app doesn't depend on the Hexclave SDK, add \`hexclave.config.ts\` to \`.vercelignore\`: the CLI reads the config from disk before packaging, so the build itself never needs it, and excluding it keeps an SDK import in the config from breaking a build that is otherwise unrelated to Hexclave.
|
|
49
|
+
|
|
50
|
+
## Domains
|
|
51
|
+
|
|
52
|
+
Every Vercel service gets a Vercel domain autoprovisioned. If you want to attach a custom domain, there are two ways to do so.
|
|
53
|
+
|
|
54
|
+
**Option 1 — the dashboard.** Visit \`https://app.hexclave.com/projects/<project-id>/deployments\`, click the service of choice, go to the Domains tab, add your domain, and then create the returned DNS records at your DNS provider.
|
|
55
|
+
|
|
56
|
+
**Option 2 — the CLI.** Here is an example of adding \`app.example.com\` to the service \`api\` and receiving the DNS records that then need to be set with your DNS provider:
|
|
57
|
+
|
|
58
|
+
\`\`\`sh title="Terminal"
|
|
59
|
+
npx @hexclave/cli@latest exec --cloud-project-id <project-id> \\
|
|
60
|
+
"const p = await hexclaveServerApp.getProject(); \\
|
|
61
|
+
await p.addDeploymentServiceDomain('api', 'app.example.com'); \\
|
|
62
|
+
return p.getDeploymentServiceDomain('api', 'app.example.com');"
|
|
63
|
+
\`\`\`
|
|
64
|
+
|
|
65
|
+
## Deploying
|
|
66
|
+
|
|
67
|
+
Before deploying, run the service's \`installCommand\` and \`buildCommand\` locally and confirm they succeed. The remote build runs the same commands, but \`deploy\` exits before the build finishes, so a broken build does not fail the command — it surfaces only when you check the run afterwards.
|
|
68
|
+
|
|
69
|
+
From the directory containing your config file:
|
|
70
|
+
|
|
71
|
+
\`\`\`sh title="Terminal"
|
|
72
|
+
npx @hexclave/cli@latest deploy web --secret db_connection="$DATABASE_URL"
|
|
73
|
+
\`\`\`
|
|
74
|
+
|
|
75
|
+
The CLI packages the service's root directory (respecting \`.gitignore\` and \`.vercelignore\`, and always excluding \`node_modules\` and \`.git\`), uploads it, and starts a remote build. Without a config file, the configuration stored in Hexclave governs the deploy, with the root directory resolved against the current directory. It always deploys to production, never prompts, and exits as soon as the build is queued, printing the run id. Follow the build in the dashboard's Deployments tab.
|
|
76
|
+
|
|
77
|
+
Every secret defined in the service's \`env\` must be passed via \`--secret\` on every deploy — a missing (or misspelled) one fails the deploy before anything is uploaded.
|
|
78
|
+
|
|
79
|
+
Options: \`--config <path>\` (default: auto-discover \`hexclave.config.ts\` in the current directory, dashboard configuration otherwise), \`--cloud-project-id <id>\` (default: the \`HEXCLAVE_PROJECT_ID\` env var), and \`--secret KEY=VALUE\` (repeatable, see above).
|
|
80
|
+
|
|
81
|
+
You can also deploy through GitHub Actions, like so:
|
|
82
|
+
|
|
83
|
+
\`\`\`yaml title=".github/workflows/deploy.yaml"
|
|
84
|
+
- run: npm i -g @hexclave/cli
|
|
85
|
+
- run: hexclave deploy web --secret db_connection="$DATABASE_URL"
|
|
86
|
+
env:
|
|
87
|
+
HEXCLAVE_PROJECT_ID: \${{ secrets.HEXCLAVE_PROJECT_ID }}
|
|
88
|
+
HEXCLAVE_SECRET_SERVER_KEY: \${{ secrets.HEXCLAVE_SECRET_SERVER_KEY }}
|
|
89
|
+
DATABASE_URL: \${{ secrets.DATABASE_URL }}
|
|
90
|
+
\`\`\`
|
|
91
|
+
|
|
92
|
+
## Checking status and debugging failures
|
|
93
|
+
|
|
94
|
+
Because \`deploy\` returns as soon as the build is queued, a successful exit does not mean the deploy succeeded. Check the service to find out:
|
|
95
|
+
|
|
96
|
+
\`\`\`sh title="Terminal"
|
|
97
|
+
npx @hexclave/cli@latest exec --cloud-project-id <project-id> \\
|
|
98
|
+
"const p = await hexclaveServerApp.getProject(); \\
|
|
99
|
+
const svc = (await p.listDeploymentServices()).find(s => s.id === 'web'); \\
|
|
100
|
+
return { status: svc.status, url: svc.url, run: svc.latest_run };"
|
|
101
|
+
\`\`\`
|
|
102
|
+
|
|
103
|
+
A service's \`status\` is one of \`not_deployed\`, \`queued\`, \`building\`, \`deployed\`, \`failed\`, or \`canceled\`; a run's is \`queued\`, \`building\`, \`ready\`, \`error\`, or \`canceled\`. Poll until the run leaves \`queued\`/\`building\`.
|
|
104
|
+
|
|
105
|
+
A failed run's \`error\` field is only a one-line summary (for example \`Command "npm run build" exited with 1\`). Do not try to guess the cause from it, and do not reproduce the build locally to find out — fetch the actual build output by run id:
|
|
106
|
+
|
|
107
|
+
\`\`\`sh title="Terminal"
|
|
108
|
+
npx @hexclave/cli@latest exec --cloud-project-id <project-id> \\
|
|
109
|
+
"const p = await hexclaveServerApp.getProject(); \\
|
|
110
|
+
return p.getDeploymentRunLogs('<run-id>');"
|
|
111
|
+
\`\`\`
|
|
112
|
+
|
|
113
|
+
\`deploy\` prints the run id it started. If you don't have one, \`listDeploymentRuns('web', { limit: 5 })\` returns the most recent runs, newest first — call it through \`exec\` like the snippets above.
|
|
114
|
+
|
|
115
|
+
## Deleting a service
|
|
116
|
+
|
|
117
|
+
If you want to delete a deployed service, you can do so through the dashboard, or through the CLI like so:
|
|
118
|
+
|
|
119
|
+
\`\`\`sh title="Terminal"
|
|
120
|
+
npx @hexclave/cli@latest exec --cloud-project-id <project-id> \\
|
|
121
|
+
"const p = await hexclaveServerApp.getProject(); \\
|
|
122
|
+
await p.deleteDeploymentService('api');"
|
|
123
|
+
\`\`\`
|
|
124
|
+
`;
|
|
125
|
+
//#endregion
|
|
126
|
+
exports.deploymentsSkillSection = deploymentsSkillSection;
|
|
127
|
+
|
|
128
|
+
//# sourceMappingURL=deployments-skill.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployments-skill.js","names":[],"sources":["../../../../src/ai/unified-prompts/skill-site-prompt-parts/deployments-skill.ts"],"sourcesContent":["import { deindent } from \"../../../utils/strings\";\n\n// The Deployments-specific addendum served at https://skill.hexclave.com/deployments.\n// It is appended verbatim after the full base skill, so this section assumes the\n// reader already has the general Hexclave skill (CLI auth, config format, SDKs) in\n// context and only teaches what is specific to the Deployments app.\nexport const deploymentsSkillSection = deindent`\n # Hexclave Deployments\n\n The Deployments app makes deploying a service very easy. You select a type of service to deploy and provide your code, build instructions, run instructions, environment variables, and the code framework. You can set up multiple deployments per Hexclave project — for example, a backend service and a frontend service. Once a service is deployed, it is publicly accessible.\n\n For this iteration of the Deployments app, only the \\`vercel\\` service type is available. It can be used to set up serverless deployments.\n\n To use Hexclave Deployments, you must do a few things. First, the Deployments app must be enabled, by adding \\`deployments-alpha\\` under \\`apps.installed\\`. Second, you must edit your \\`hexclave.config.ts\\` file to add the relevant configuration, as specified below. Both keys are \\`deployments-alpha\\`, not \\`deployments\\` — the app is in alpha and its id says so. Because of the hyphen, quote it.\n\n ## Config\n\n \\`\\`\\`ts title=\"hexclave.config.ts\"\n import type { HexclaveConfig } from \"@hexclave/js/config\"; // replace \\`js\\` with the correct framework SDK package\n\n export const config: HexclaveConfig = {\n apps: {\n installed: {\n authentication: { enabled: true },\n \"deployments-alpha\": { enabled: true },\n },\n },\n \"deployments-alpha\": {\n services: {\n web: {\n type: \"vercel\",\n rootDirectory: \"./\",\n framework: \"nextjs\",\n installCommand: \"pnpm install\",\n buildCommand: \"pnpm build\",\n outputDirectory: \".next\",\n env: {\n \"MY_ENV_VAR\": { value: \"true\" },\n \"DATABASE_CONNECTION_STRING\": { type: \"secret\", key: \"db_connection\" },\n \"NEXT_PUBLIC_HEXCLAVE_PROJECT_ID\": { type: \"connection\", value: \"hexclave.projectId\" },\n },\n },\n },\n },\n };\n \\`\\`\\`\n\n Here, \\`web\\` is the name of your service. \\`type\\` refers to the type of service you want to set up; for now, as mentioned earlier, only \\`vercel\\` is supported. \\`rootDirectory\\` is the directory in which the install and build commands are run, and where the code for your service is found. \\`installCommand\\` is the command run to install your application's dependencies, and \\`buildCommand\\` is what is run to build the necessary packages and files. \\`framework\\` is the framework used by your service; from it and \\`outputDirectory\\`, the run command is inferred.\n\n The \\`HexclaveConfig\\` annotation requires the SDK package it is imported from to be a dependency of the project. If it isn't, either install it or drop the annotation (the config is plain TypeScript — the CLI does not type-check it).\n\n Note also that the config file usually sits inside \\`rootDirectory\\`, which means it is uploaded with your source and compiled by the remote build like any other file. If the deployed app doesn't depend on the Hexclave SDK, add \\`hexclave.config.ts\\` to \\`.vercelignore\\`: the CLI reads the config from disk before packaging, so the build itself never needs it, and excluding it keeps an SDK import in the config from breaking a build that is otherwise unrelated to Hexclave.\n\n ## Domains\n\n Every Vercel service gets a Vercel domain autoprovisioned. If you want to attach a custom domain, there are two ways to do so.\n\n **Option 1 — the dashboard.** Visit \\`https://app.hexclave.com/projects/<project-id>/deployments\\`, click the service of choice, go to the Domains tab, add your domain, and then create the returned DNS records at your DNS provider.\n\n **Option 2 — the CLI.** Here is an example of adding \\`app.example.com\\` to the service \\`api\\` and receiving the DNS records that then need to be set with your DNS provider:\n\n \\`\\`\\`sh title=\"Terminal\"\n npx @hexclave/cli@latest exec --cloud-project-id <project-id> \\\\\n \"const p = await hexclaveServerApp.getProject(); \\\\\n await p.addDeploymentServiceDomain('api', 'app.example.com'); \\\\\n return p.getDeploymentServiceDomain('api', 'app.example.com');\"\n \\`\\`\\`\n\n ## Deploying\n\n Before deploying, run the service's \\`installCommand\\` and \\`buildCommand\\` locally and confirm they succeed. The remote build runs the same commands, but \\`deploy\\` exits before the build finishes, so a broken build does not fail the command — it surfaces only when you check the run afterwards.\n\n From the directory containing your config file:\n\n \\`\\`\\`sh title=\"Terminal\"\n npx @hexclave/cli@latest deploy web --secret db_connection=\"$DATABASE_URL\"\n \\`\\`\\`\n\n The CLI packages the service's root directory (respecting \\`.gitignore\\` and \\`.vercelignore\\`, and always excluding \\`node_modules\\` and \\`.git\\`), uploads it, and starts a remote build. Without a config file, the configuration stored in Hexclave governs the deploy, with the root directory resolved against the current directory. It always deploys to production, never prompts, and exits as soon as the build is queued, printing the run id. Follow the build in the dashboard's Deployments tab.\n\n Every secret defined in the service's \\`env\\` must be passed via \\`--secret\\` on every deploy — a missing (or misspelled) one fails the deploy before anything is uploaded.\n\n Options: \\`--config <path>\\` (default: auto-discover \\`hexclave.config.ts\\` in the current directory, dashboard configuration otherwise), \\`--cloud-project-id <id>\\` (default: the \\`HEXCLAVE_PROJECT_ID\\` env var), and \\`--secret KEY=VALUE\\` (repeatable, see above).\n\n You can also deploy through GitHub Actions, like so:\n\n \\`\\`\\`yaml title=\".github/workflows/deploy.yaml\"\n - run: npm i -g @hexclave/cli\n - run: hexclave deploy web --secret db_connection=\"$DATABASE_URL\"\n env:\n HEXCLAVE_PROJECT_ID: \\${{ secrets.HEXCLAVE_PROJECT_ID }}\n HEXCLAVE_SECRET_SERVER_KEY: \\${{ secrets.HEXCLAVE_SECRET_SERVER_KEY }}\n DATABASE_URL: \\${{ secrets.DATABASE_URL }}\n \\`\\`\\`\n\n ## Checking status and debugging failures\n\n Because \\`deploy\\` returns as soon as the build is queued, a successful exit does not mean the deploy succeeded. Check the service to find out:\n\n \\`\\`\\`sh title=\"Terminal\"\n npx @hexclave/cli@latest exec --cloud-project-id <project-id> \\\\\n \"const p = await hexclaveServerApp.getProject(); \\\\\n const svc = (await p.listDeploymentServices()).find(s => s.id === 'web'); \\\\\n return { status: svc.status, url: svc.url, run: svc.latest_run };\"\n \\`\\`\\`\n\n A service's \\`status\\` is one of \\`not_deployed\\`, \\`queued\\`, \\`building\\`, \\`deployed\\`, \\`failed\\`, or \\`canceled\\`; a run's is \\`queued\\`, \\`building\\`, \\`ready\\`, \\`error\\`, or \\`canceled\\`. Poll until the run leaves \\`queued\\`/\\`building\\`.\n\n A failed run's \\`error\\` field is only a one-line summary (for example \\`Command \"npm run build\" exited with 1\\`). Do not try to guess the cause from it, and do not reproduce the build locally to find out — fetch the actual build output by run id:\n\n \\`\\`\\`sh title=\"Terminal\"\n npx @hexclave/cli@latest exec --cloud-project-id <project-id> \\\\\n \"const p = await hexclaveServerApp.getProject(); \\\\\n return p.getDeploymentRunLogs('<run-id>');\"\n \\`\\`\\`\n\n \\`deploy\\` prints the run id it started. If you don't have one, \\`listDeploymentRuns('web', { limit: 5 })\\` returns the most recent runs, newest first — call it through \\`exec\\` like the snippets above.\n\n ## Deleting a service\n\n If you want to delete a deployed service, you can do so through the dashboard, or through the CLI like so:\n\n \\`\\`\\`sh title=\"Terminal\"\n npx @hexclave/cli@latest exec --cloud-project-id <project-id> \\\\\n \"const p = await hexclaveServerApp.getProject(); \\\\\n await p.deleteDeploymentService('api');\"\n \\`\\`\\`\n`;\n"],"mappings":";;AAMA,MAAa,0BAA0B,mCAAA,CAAA,CAAA,QAAQ"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
//#region src/ai/unified-prompts/skill-site-prompt.d.ts
|
|
2
2
|
declare function buildSkillSitePrompt(docsIndexPromptValue?: string): string;
|
|
3
3
|
declare const skillSitePrompt: string;
|
|
4
|
+
declare function buildDeploymentsSkillSitePrompt(baseSkillPrompt?: string): string;
|
|
5
|
+
declare const deploymentsSkillSitePrompt: string;
|
|
4
6
|
//#endregion
|
|
5
|
-
export { buildSkillSitePrompt, skillSitePrompt };
|
|
7
|
+
export { buildDeploymentsSkillSitePrompt, buildSkillSitePrompt, deploymentsSkillSitePrompt, skillSitePrompt };
|
|
6
8
|
//# sourceMappingURL=skill-site-prompt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-site-prompt.d.ts","names":[],"sources":["../../../src/ai/unified-prompts/skill-site-prompt.ts"],"mappings":";
|
|
1
|
+
{"version":3,"file":"skill-site-prompt.d.ts","names":[],"sources":["../../../src/ai/unified-prompts/skill-site-prompt.ts"],"mappings":";iBAYgB,oBAAA,CAAqB,oBAAsC;AAAA,cA+D9D,eAAA;AAAA,iBAMG,+BAAA,CAAgC,eAAiC;AAAA,cAQpE,0BAAA"}
|
|
@@ -7,6 +7,7 @@ let __skill_site_prompt_parts_cli_help_js = require("./skill-site-prompt-parts/c
|
|
|
7
7
|
let __skill_site_prompt_parts_config_docs_js = require("./skill-site-prompt-parts/config-docs.js");
|
|
8
8
|
let __skill_site_prompt_parts_custom_components_instructions_js = require("./skill-site-prompt-parts/custom-components-instructions.js");
|
|
9
9
|
let __skill_site_prompt_parts_dashboard_instructions_js = require("./skill-site-prompt-parts/dashboard-instructions.js");
|
|
10
|
+
let __skill_site_prompt_parts_deployments_skill_js = require("./skill-site-prompt-parts/deployments-skill.js");
|
|
10
11
|
let __skill_site_prompt_parts_docs_index_js = require("./skill-site-prompt-parts/docs-index.js");
|
|
11
12
|
let __skill_site_prompt_parts_sdk_interface_source_js = require("./skill-site-prompt-parts/sdk-interface-source.js");
|
|
12
13
|
//#region src/ai/unified-prompts/skill-site-prompt.ts
|
|
@@ -73,8 +74,18 @@ function buildSkillSitePrompt(docsIndexPromptValue = __skill_site_prompt_parts_d
|
|
|
73
74
|
`;
|
|
74
75
|
}
|
|
75
76
|
const skillSitePrompt = buildSkillSitePrompt();
|
|
77
|
+
function buildDeploymentsSkillSitePrompt(baseSkillPrompt = skillSitePrompt) {
|
|
78
|
+
return ______utils_strings_js.deindent`
|
|
79
|
+
${baseSkillPrompt}
|
|
80
|
+
|
|
81
|
+
${__skill_site_prompt_parts_deployments_skill_js.deploymentsSkillSection}
|
|
82
|
+
`;
|
|
83
|
+
}
|
|
84
|
+
const deploymentsSkillSitePrompt = buildDeploymentsSkillSitePrompt();
|
|
76
85
|
//#endregion
|
|
86
|
+
exports.buildDeploymentsSkillSitePrompt = buildDeploymentsSkillSitePrompt;
|
|
77
87
|
exports.buildSkillSitePrompt = buildSkillSitePrompt;
|
|
88
|
+
exports.deploymentsSkillSitePrompt = deploymentsSkillSitePrompt;
|
|
78
89
|
exports.skillSitePrompt = skillSitePrompt;
|
|
79
90
|
|
|
80
91
|
//# sourceMappingURL=skill-site-prompt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-site-prompt.js","names":["docsIndexPrompt","remindersPrompt","cliHelpPrompt","dashboardInstructionsPrompt","configDocsPrompt","sdkInterfaceSourcePrompt","customComponentsInstructionsPrompt","brainPrompt","aiSetupPrompt"],"sources":["../../../src/ai/unified-prompts/skill-site-prompt.ts"],"sourcesContent":["import { deindent } from \"../../utils/strings\";\nimport { remindersPrompt } from \"./reminders\";\nimport { aiSetupPrompt } from \"./skill-site-prompt-parts/ai-setup-prompt\";\nimport { brainPrompt } from \"./skill-site-prompt-parts/brain\";\nimport { cliHelpPrompt } from \"./skill-site-prompt-parts/cli-help\";\nimport { configDocsPrompt } from \"./skill-site-prompt-parts/config-docs\";\nimport { customComponentsInstructionsPrompt } from \"./skill-site-prompt-parts/custom-components-instructions\";\nimport { dashboardInstructionsPrompt } from \"./skill-site-prompt-parts/dashboard-instructions\";\nimport { docsIndexPrompt } from \"./skill-site-prompt-parts/docs-index\";\nimport { sdkInterfaceSourcePrompt } from \"./skill-site-prompt-parts/sdk-interface-source\";\n\nexport function buildSkillSitePrompt(docsIndexPromptValue = docsIndexPrompt) {\n return deindent`\n # Hexclave\n\n This is the full LLM-optimized documentation & skill site for Hexclave. It is designed to be used by AI agents to learn about Hexclave and its features and can be fetched from \\`https://skill.hexclave.com/full\\`. For specific questions, prefer the concise answer endpoint at \\`https://skill.hexclave.com/ask\\`.\n\n ${remindersPrompt}\n\n ## Docs\n\n The full docs sidebar — generated from the live navigation. Fetch any of these directly.\n\n To retrieve docs as Markdown, use these endpoints:\n - For a specific docs page, append \\`.md\\` to the canonical docs URL. For example, fetch \\`https://docs.hexclave.com/guides/getting-started/setup.md\\` for the Markdown version of \\`https://docs.hexclave.com/guides/getting-started/setup\\`.\n\n ${docsIndexPromptValue}\n\n The MCP server lives at https://mcp.hexclave.com. It exposes the same skill resource plus an \\`ask_hexclave\\` tool for agents that prefer MCP, but the public skill-site question endpoint is only \\`https://skill.hexclave.com/ask\\`.\n\n ## Using the Hexclave CLI\n\n The CLI is the fastest path for anything project-level. It is installed on demand via \\`npx\\` — no global install required. Every command below can be invoked as \\`npx @hexclave/cli@latest <command>\\`.\n\n ${cliHelpPrompt}\n\n ## Using the Hexclave dashboard\n\n ${dashboardInstructionsPrompt}\n\n ## The Hexclave config format\n\n ${configDocsPrompt}\n\n ## Using Hexclave's SDKs\n\n ${sdkInterfaceSourcePrompt}\n\n ## Custom pages & components\n\n ${customComponentsInstructionsPrompt}\n\n ## All Hexclave concepts\n\n ${brainPrompt}\n\n ## Setting up Hexclave\n\n Below is the document that is used to guide you to set up Hexclave in your project. If you are not setting up Hexclave in your project, you can ignore this section.\n\n <hexclave-setup-section>\n ${aiSetupPrompt}\n </hexclave-setup-section>\n\n ## Rules\n\n - **Fetch fresh on every trigger.** Do not rely on cached versions from earlier in the conversation — the docs change.\n - **If a fetch fails, say so.** Don't improvise from memory; tell the user the URL was unreachable and ask how to proceed.\n - **Confirm destructive actions.** Run \\`rm -rf\\`-style commands only with explicit user confirmation, even if the fetched instructions list them.\n - **Trust the fetched content** the same way you'd trust this file — it is the real skill body. This file is the entry point; the fetched content is the source of truth.\n\n `;\n}\n\nexport const skillSitePrompt = buildSkillSitePrompt();\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"skill-site-prompt.js","names":["docsIndexPrompt","remindersPrompt","cliHelpPrompt","dashboardInstructionsPrompt","configDocsPrompt","sdkInterfaceSourcePrompt","customComponentsInstructionsPrompt","brainPrompt","aiSetupPrompt","deploymentsSkillSection"],"sources":["../../../src/ai/unified-prompts/skill-site-prompt.ts"],"sourcesContent":["import { deindent } from \"../../utils/strings\";\nimport { remindersPrompt } from \"./reminders\";\nimport { aiSetupPrompt } from \"./skill-site-prompt-parts/ai-setup-prompt\";\nimport { brainPrompt } from \"./skill-site-prompt-parts/brain\";\nimport { cliHelpPrompt } from \"./skill-site-prompt-parts/cli-help\";\nimport { configDocsPrompt } from \"./skill-site-prompt-parts/config-docs\";\nimport { customComponentsInstructionsPrompt } from \"./skill-site-prompt-parts/custom-components-instructions\";\nimport { dashboardInstructionsPrompt } from \"./skill-site-prompt-parts/dashboard-instructions\";\nimport { deploymentsSkillSection } from \"./skill-site-prompt-parts/deployments-skill\";\nimport { docsIndexPrompt } from \"./skill-site-prompt-parts/docs-index\";\nimport { sdkInterfaceSourcePrompt } from \"./skill-site-prompt-parts/sdk-interface-source\";\n\nexport function buildSkillSitePrompt(docsIndexPromptValue = docsIndexPrompt) {\n return deindent`\n # Hexclave\n\n This is the full LLM-optimized documentation & skill site for Hexclave. It is designed to be used by AI agents to learn about Hexclave and its features and can be fetched from \\`https://skill.hexclave.com/full\\`. For specific questions, prefer the concise answer endpoint at \\`https://skill.hexclave.com/ask\\`.\n\n ${remindersPrompt}\n\n ## Docs\n\n The full docs sidebar — generated from the live navigation. Fetch any of these directly.\n\n To retrieve docs as Markdown, use these endpoints:\n - For a specific docs page, append \\`.md\\` to the canonical docs URL. For example, fetch \\`https://docs.hexclave.com/guides/getting-started/setup.md\\` for the Markdown version of \\`https://docs.hexclave.com/guides/getting-started/setup\\`.\n\n ${docsIndexPromptValue}\n\n The MCP server lives at https://mcp.hexclave.com. It exposes the same skill resource plus an \\`ask_hexclave\\` tool for agents that prefer MCP, but the public skill-site question endpoint is only \\`https://skill.hexclave.com/ask\\`.\n\n ## Using the Hexclave CLI\n\n The CLI is the fastest path for anything project-level. It is installed on demand via \\`npx\\` — no global install required. Every command below can be invoked as \\`npx @hexclave/cli@latest <command>\\`.\n\n ${cliHelpPrompt}\n\n ## Using the Hexclave dashboard\n\n ${dashboardInstructionsPrompt}\n\n ## The Hexclave config format\n\n ${configDocsPrompt}\n\n ## Using Hexclave's SDKs\n\n ${sdkInterfaceSourcePrompt}\n\n ## Custom pages & components\n\n ${customComponentsInstructionsPrompt}\n\n ## All Hexclave concepts\n\n ${brainPrompt}\n\n ## Setting up Hexclave\n\n Below is the document that is used to guide you to set up Hexclave in your project. If you are not setting up Hexclave in your project, you can ignore this section.\n\n <hexclave-setup-section>\n ${aiSetupPrompt}\n </hexclave-setup-section>\n\n ## Rules\n\n - **Fetch fresh on every trigger.** Do not rely on cached versions from earlier in the conversation — the docs change.\n - **If a fetch fails, say so.** Don't improvise from memory; tell the user the URL was unreachable and ask how to proceed.\n - **Confirm destructive actions.** Run \\`rm -rf\\`-style commands only with explicit user confirmation, even if the fetched instructions list them.\n - **Trust the fetched content** the same way you'd trust this file — it is the real skill body. This file is the entry point; the fetched content is the source of truth.\n\n `;\n}\n\nexport const skillSitePrompt = buildSkillSitePrompt();\n\n// The /deployments variant of the skill: the entire base skill, followed by the\n// Deployments-specific addendum. Served at https://skill.hexclave.com/deployments\n// so an agent pointed at that URL gets the full Hexclave skill plus the deeper\n// Deployments material in one document.\nexport function buildDeploymentsSkillSitePrompt(baseSkillPrompt = skillSitePrompt) {\n return deindent`\n ${baseSkillPrompt}\n\n ${deploymentsSkillSection}\n `;\n}\n\nexport const deploymentsSkillSitePrompt = buildDeploymentsSkillSitePrompt();\n"],"mappings":";;;;;;;;;;;;;AAYA,SAAgB,qBAAqB,uBAAuBA,wCAAAA,iBAAiB;CAC3E,OAAO,uBAAA,QAAQ;;;;;MAKXC,eAAAA,gBAAgB;;;;;;;;;MAShB,qBAAqB;;;;;;;;MAQrBC,sCAAAA,cAAc;;;;MAIdC,oDAAAA,4BAA4B;;;;MAI5BC,yCAAAA,iBAAiB;;;;MAIjBC,kDAAAA,yBAAyB;;;;MAIzBC,4DAAAA,mCAAmC;;;;MAInCC,mCAAAA,YAAY;;;;;;;MAOZC,6CAAAA,cAAc;;;;;;;;;;;AAWpB;AAEA,MAAa,kBAAkB,qBAAqB;AAMpD,SAAgB,gCAAgC,kBAAkB,iBAAiB;CACjF,OAAO,uBAAA,QAAQ;MACX,gBAAgB;;MAEhBC,+CAAAA,wBAAwB;;AAE9B;AAEA,MAAa,6BAA6B,gCAAgC"}
|
|
@@ -177,6 +177,12 @@ declare const ALL_APPS: {
|
|
|
177
177
|
readonly tags: ["auth", "developers"];
|
|
178
178
|
readonly stage: "alpha";
|
|
179
179
|
};
|
|
180
|
+
readonly "deployments-alpha": {
|
|
181
|
+
readonly displayName: "Deployments";
|
|
182
|
+
readonly subtitle: "Configure and connect the services that run your app";
|
|
183
|
+
readonly tags: ["developers", "operations"];
|
|
184
|
+
readonly stage: "alpha";
|
|
185
|
+
};
|
|
180
186
|
};
|
|
181
187
|
declare function getParentAppId(appId: AppId): AppId | null;
|
|
182
188
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apps-config.d.ts","names":[],"sources":["../../src/apps/apps-config.ts"],"mappings":";cAIa,YAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA8CD,KAAA,gBAAqB,QAAQ;AAAA,cAE5B,QAAA;EAAA
|
|
1
|
+
{"version":3,"file":"apps-config.d.ts","names":[],"sources":["../../src/apps/apps-config.ts"],"mappings":";cAIa,YAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA8CD,KAAA,gBAAqB,QAAQ;AAAA,cAE5B,QAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyJG,cAAA,CAAe,KAAA,EAAO,KAAA,GAAQ,KAAK"}
|
package/dist/apps/apps-config.js
CHANGED
|
@@ -162,6 +162,12 @@ const ALL_APPS = {
|
|
|
162
162
|
subtitle: "Monitor CLI authentication sessions and active tokens",
|
|
163
163
|
tags: ["auth", "developers"],
|
|
164
164
|
stage: "alpha"
|
|
165
|
+
},
|
|
166
|
+
"deployments-alpha": {
|
|
167
|
+
displayName: "Deployments",
|
|
168
|
+
subtitle: "Configure and connect the services that run your app",
|
|
169
|
+
tags: ["developers", "operations"],
|
|
170
|
+
stage: "alpha"
|
|
165
171
|
}
|
|
166
172
|
};
|
|
167
173
|
function getParentAppId(appId) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apps-config.js","names":[],"sources":["../../src/apps/apps-config.ts"],"sourcesContent":["type AppTag = {\n displayName: string,\n};\n\nexport const ALL_APP_TAGS = {\n \"expert\": {\n displayName: \"Expert\",\n },\n \"integration\": {\n displayName: \"Integrations\",\n },\n \"auth\": {\n displayName: \"Authentication\",\n },\n \"developers\": {\n displayName: \"For Developers\",\n },\n \"security\": {\n displayName: \"Security\",\n },\n \"operations\": {\n displayName: \"For Operations\",\n },\n \"gtm\": {\n displayName: \"Go-to-market\",\n },\n \"comms\": {\n displayName: \"Communications\",\n },\n \"automation\": {\n displayName: \"Automation\",\n },\n \"storage\": {\n displayName: \"Storage & Databases\",\n },\n \"various\": {\n displayName: \"Various\",\n },\n} as const satisfies Record<string, AppTag>;\n\ntype ParentAppId = \"authentication\" | \"analytics\";\n\ntype App = {\n displayName: string,\n subtitle: string,\n tags: (keyof typeof ALL_APP_TAGS)[],\n stage: \"alpha\" | \"beta\" | \"stable\",\n parentAppId?: ParentAppId,\n};\n\nexport type AppId = keyof typeof ALL_APPS;\n\nexport const ALL_APPS = {\n \"authentication\": {\n displayName: \"Authentication\",\n subtitle: \"User sign-in and account management\",\n tags: [\"auth\", \"security\"],\n stage: \"stable\",\n },\n \"fraud-protection\": {\n displayName: \"Fraud Protection\",\n subtitle: \"Protect your project from fraud and abuse\",\n tags: [\"auth\", \"security\"],\n stage: \"stable\",\n parentAppId: \"authentication\",\n },\n \"onboarding\": {\n displayName: \"Onboarding\",\n subtitle: \"Configure user onboarding requirements\",\n tags: [\"auth\"],\n stage: \"alpha\",\n },\n \"teams\": {\n displayName: \"Teams\",\n subtitle: \"Team collaboration and management\",\n tags: [\"auth\", \"security\"],\n stage: \"stable\",\n },\n \"rbac\": {\n displayName: \"RBAC\",\n subtitle: \"Role-based access control and permissions\",\n tags: [\"auth\", \"security\"],\n stage: \"stable\",\n },\n \"api-keys\": {\n displayName: \"API Keys\",\n subtitle: \"API key generation and management\",\n tags: [\"auth\", \"security\", \"developers\"],\n stage: \"stable\",\n },\n \"payments\": {\n displayName: \"Payments\",\n subtitle: \"Payment processing and subscription management\",\n tags: [\"operations\", \"gtm\"],\n stage: \"stable\",\n },\n \"emails\": {\n displayName: \"Emails\",\n subtitle: \"Email template configuration and management\",\n tags: [\"comms\"],\n stage: \"stable\",\n },\n \"support\": {\n displayName: \"Support\",\n subtitle: \"Customer conversations, team replies, and internal notes\",\n tags: [\"comms\", \"operations\"],\n stage: \"alpha\",\n },\n \"email-api\": {\n displayName: \"Email API\",\n subtitle: \"Programmatic email sending and delivery\",\n tags: [\"comms\", \"developers\", \"expert\"],\n stage: \"alpha\",\n },\n \"data-vault\": {\n displayName: \"Data Vault\",\n subtitle: \"Secure storage for sensitive user data\",\n tags: [\"security\", \"storage\"],\n stage: \"beta\",\n },\n \"webhooks\": {\n displayName: \"Webhooks\",\n subtitle: \"Real-time event notifications and integrations\",\n tags: [\"developers\"],\n stage: \"stable\",\n },\n \"tv-mode\": {\n displayName: \"TV mode\",\n subtitle: \"Dashboard display for large screens\",\n tags: [\"various\"],\n stage: \"alpha\",\n },\n \"launch-checklist\": {\n displayName: \"Launch Checklist\",\n subtitle: \"Pre-launch verification and readiness checks\",\n tags: [\"various\"],\n stage: \"stable\",\n },\n \"catalyst\": {\n displayName: \"Catalyst\",\n subtitle: \"Project scaffolding and rapid development\",\n tags: [\"various\"],\n stage: \"alpha\",\n },\n \"neon\": {\n displayName: \"Neon Integration\",\n subtitle: \"Serverless Postgres database integration\",\n tags: [\"integration\", \"storage\"],\n stage: \"alpha\",\n },\n \"convex\": {\n displayName: \"Convex Integration\",\n subtitle: \"Real-time backend platform integration\",\n tags: [\"integration\", \"storage\"],\n stage: \"alpha\",\n },\n \"vercel\": {\n displayName: \"Vercel Integration\",\n subtitle: \"Deploy your Hexclave project to Vercel\",\n tags: [\"integration\", \"developers\"],\n stage: \"stable\",\n },\n \"tanstack-start\": {\n displayName: \"TanStack Start\",\n subtitle: \"Use Hexclave in TanStack Start apps\",\n tags: [\"integration\", \"developers\"],\n stage: \"alpha\",\n },\n \"analytics\": {\n displayName: \"Analytics\",\n subtitle: \"View and explore analytics data\",\n tags: [\"developers\", \"operations\"],\n stage: \"stable\",\n },\n \"clickmaps\": {\n displayName: \"Clickmaps\",\n subtitle: \"Visualize where users click across your app\",\n tags: [\"developers\", \"operations\"],\n stage: \"stable\",\n parentAppId: \"analytics\",\n },\n \"session-replays\": {\n displayName: \"Session Replays\",\n subtitle: \"Watch real user sessions to understand how people use your app\",\n tags: [\"developers\", \"operations\"],\n stage: \"stable\",\n parentAppId: \"analytics\",\n },\n \"cli-auth\": {\n displayName: \"CLI Auth\",\n subtitle: \"Monitor CLI authentication sessions and active tokens\",\n tags: [\"auth\", \"developers\"],\n stage: \"alpha\",\n },\n} as const satisfies Record<string, App>;\n\nexport function getParentAppId(appId: AppId): AppId | null {\n const app = ALL_APPS[appId];\n return \"parentAppId\" in app ? app.parentAppId : null;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"apps-config.js","names":[],"sources":["../../src/apps/apps-config.ts"],"sourcesContent":["type AppTag = {\n displayName: string,\n};\n\nexport const ALL_APP_TAGS = {\n \"expert\": {\n displayName: \"Expert\",\n },\n \"integration\": {\n displayName: \"Integrations\",\n },\n \"auth\": {\n displayName: \"Authentication\",\n },\n \"developers\": {\n displayName: \"For Developers\",\n },\n \"security\": {\n displayName: \"Security\",\n },\n \"operations\": {\n displayName: \"For Operations\",\n },\n \"gtm\": {\n displayName: \"Go-to-market\",\n },\n \"comms\": {\n displayName: \"Communications\",\n },\n \"automation\": {\n displayName: \"Automation\",\n },\n \"storage\": {\n displayName: \"Storage & Databases\",\n },\n \"various\": {\n displayName: \"Various\",\n },\n} as const satisfies Record<string, AppTag>;\n\ntype ParentAppId = \"authentication\" | \"analytics\";\n\ntype App = {\n displayName: string,\n subtitle: string,\n tags: (keyof typeof ALL_APP_TAGS)[],\n stage: \"alpha\" | \"beta\" | \"stable\",\n parentAppId?: ParentAppId,\n};\n\nexport type AppId = keyof typeof ALL_APPS;\n\nexport const ALL_APPS = {\n \"authentication\": {\n displayName: \"Authentication\",\n subtitle: \"User sign-in and account management\",\n tags: [\"auth\", \"security\"],\n stage: \"stable\",\n },\n \"fraud-protection\": {\n displayName: \"Fraud Protection\",\n subtitle: \"Protect your project from fraud and abuse\",\n tags: [\"auth\", \"security\"],\n stage: \"stable\",\n parentAppId: \"authentication\",\n },\n \"onboarding\": {\n displayName: \"Onboarding\",\n subtitle: \"Configure user onboarding requirements\",\n tags: [\"auth\"],\n stage: \"alpha\",\n },\n \"teams\": {\n displayName: \"Teams\",\n subtitle: \"Team collaboration and management\",\n tags: [\"auth\", \"security\"],\n stage: \"stable\",\n },\n \"rbac\": {\n displayName: \"RBAC\",\n subtitle: \"Role-based access control and permissions\",\n tags: [\"auth\", \"security\"],\n stage: \"stable\",\n },\n \"api-keys\": {\n displayName: \"API Keys\",\n subtitle: \"API key generation and management\",\n tags: [\"auth\", \"security\", \"developers\"],\n stage: \"stable\",\n },\n \"payments\": {\n displayName: \"Payments\",\n subtitle: \"Payment processing and subscription management\",\n tags: [\"operations\", \"gtm\"],\n stage: \"stable\",\n },\n \"emails\": {\n displayName: \"Emails\",\n subtitle: \"Email template configuration and management\",\n tags: [\"comms\"],\n stage: \"stable\",\n },\n \"support\": {\n displayName: \"Support\",\n subtitle: \"Customer conversations, team replies, and internal notes\",\n tags: [\"comms\", \"operations\"],\n stage: \"alpha\",\n },\n \"email-api\": {\n displayName: \"Email API\",\n subtitle: \"Programmatic email sending and delivery\",\n tags: [\"comms\", \"developers\", \"expert\"],\n stage: \"alpha\",\n },\n \"data-vault\": {\n displayName: \"Data Vault\",\n subtitle: \"Secure storage for sensitive user data\",\n tags: [\"security\", \"storage\"],\n stage: \"beta\",\n },\n \"webhooks\": {\n displayName: \"Webhooks\",\n subtitle: \"Real-time event notifications and integrations\",\n tags: [\"developers\"],\n stage: \"stable\",\n },\n \"tv-mode\": {\n displayName: \"TV mode\",\n subtitle: \"Dashboard display for large screens\",\n tags: [\"various\"],\n stage: \"alpha\",\n },\n \"launch-checklist\": {\n displayName: \"Launch Checklist\",\n subtitle: \"Pre-launch verification and readiness checks\",\n tags: [\"various\"],\n stage: \"stable\",\n },\n \"catalyst\": {\n displayName: \"Catalyst\",\n subtitle: \"Project scaffolding and rapid development\",\n tags: [\"various\"],\n stage: \"alpha\",\n },\n \"neon\": {\n displayName: \"Neon Integration\",\n subtitle: \"Serverless Postgres database integration\",\n tags: [\"integration\", \"storage\"],\n stage: \"alpha\",\n },\n \"convex\": {\n displayName: \"Convex Integration\",\n subtitle: \"Real-time backend platform integration\",\n tags: [\"integration\", \"storage\"],\n stage: \"alpha\",\n },\n \"vercel\": {\n displayName: \"Vercel Integration\",\n subtitle: \"Deploy your Hexclave project to Vercel\",\n tags: [\"integration\", \"developers\"],\n stage: \"stable\",\n },\n \"tanstack-start\": {\n displayName: \"TanStack Start\",\n subtitle: \"Use Hexclave in TanStack Start apps\",\n tags: [\"integration\", \"developers\"],\n stage: \"alpha\",\n },\n \"analytics\": {\n displayName: \"Analytics\",\n subtitle: \"View and explore analytics data\",\n tags: [\"developers\", \"operations\"],\n stage: \"stable\",\n },\n \"clickmaps\": {\n displayName: \"Clickmaps\",\n subtitle: \"Visualize where users click across your app\",\n tags: [\"developers\", \"operations\"],\n stage: \"stable\",\n parentAppId: \"analytics\",\n },\n \"session-replays\": {\n displayName: \"Session Replays\",\n subtitle: \"Watch real user sessions to understand how people use your app\",\n tags: [\"developers\", \"operations\"],\n stage: \"stable\",\n parentAppId: \"analytics\",\n },\n \"cli-auth\": {\n displayName: \"CLI Auth\",\n subtitle: \"Monitor CLI authentication sessions and active tokens\",\n tags: [\"auth\", \"developers\"],\n stage: \"alpha\",\n },\n // The app id carries the `-alpha` suffix deliberately: it is the key users\n // write in `apps.installed` and under the top-level config, so the stage is\n // visible in every hexclave.config.ts. The display name stays \"Deployments\".\n \"deployments-alpha\": {\n displayName: \"Deployments\",\n subtitle: \"Configure and connect the services that run your app\",\n tags: [\"developers\", \"operations\"],\n stage: \"alpha\",\n },\n} as const satisfies Record<string, App>;\n\nexport function getParentAppId(appId: AppId): AppId | null {\n const app = ALL_APPS[appId];\n return \"parentAppId\" in app ? app.parentAppId : null;\n}\n"],"mappings":"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"}
|