@hexclave/shared 1.0.43 → 1.0.44
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-Bv8rBJo-.d.ts → admin-interface-BSW1mzGs.d.ts} +7 -7
- package/dist/{admin-interface-Bv8rBJo-.d.ts.map → admin-interface-BSW1mzGs.d.ts.map} +1 -1
- package/dist/{admin-metrics-DyW8_G82.d.ts → admin-metrics-bsOkw4YQ.d.ts} +6 -6
- package/dist/{admin-metrics-DyW8_G82.d.ts.map → admin-metrics-bsOkw4YQ.d.ts.map} +1 -1
- package/dist/ai/unified-prompts/reminders.js +1 -0
- package/dist/ai/unified-prompts/reminders.js.map +1 -1
- package/dist/{client-interface-CGrvUtX0.d.ts → client-interface-iIw4nU5k.d.ts} +5 -5
- package/dist/{client-interface-CGrvUtX0.d.ts.map → client-interface-iIw4nU5k.d.ts.map} +1 -1
- package/dist/config/schema-fuzzer.test.js +0 -4
- package/dist/config/schema-fuzzer.test.js.map +1 -1
- package/dist/config/schema.d.ts +1 -1
- package/dist/config/schema.js +9 -8
- package/dist/config/schema.js.map +1 -1
- package/dist/config-authoring.d.ts +1 -1
- package/dist/{current-user-Dvf8Ttjo.d.ts → current-user-BBoN3hsn.d.ts} +3 -3
- package/dist/{current-user-Dvf8Ttjo.d.ts.map → current-user-BBoN3hsn.d.ts.map} +1 -1
- package/dist/{email-outbox-BVqBaXpn.d.ts → email-outbox-B1wmVPRG.d.ts} +23 -23
- package/dist/{email-outbox-BVqBaXpn.d.ts.map → email-outbox-B1wmVPRG.d.ts.map} +1 -1
- package/dist/esm/ai/unified-prompts/reminders.js +1 -0
- package/dist/esm/ai/unified-prompts/reminders.js.map +1 -1
- package/dist/esm/config/schema-fuzzer.test.js +0 -4
- package/dist/esm/config/schema-fuzzer.test.js.map +1 -1
- package/dist/esm/config/schema.d.ts +73 -112
- package/dist/esm/config/schema.d.ts.map +1 -1
- package/dist/esm/config/schema.js +9 -8
- package/dist/esm/config/schema.js.map +1 -1
- package/dist/esm/interface/admin-metrics.d.ts +5 -5
- package/dist/esm/interface/conversations.d.ts +14 -14
- package/dist/esm/interface/crud/current-user.d.ts +2 -2
- package/dist/esm/interface/crud/email-outbox.d.ts +22 -22
- package/dist/esm/interface/crud/invoices.d.ts +2 -2
- package/dist/esm/interface/crud/projects.d.ts +36 -36
- package/dist/esm/interface/crud/team-member-profiles.d.ts +10 -10
- package/dist/esm/interface/crud/users.d.ts +10 -10
- package/dist/esm/interface/plan-usage.d.ts +1 -1
- package/dist/esm/interface/webhooks.d.ts +2 -2
- package/dist/helpers/production-mode.d.ts +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/interface/admin-interface.d.ts +2 -2
- package/dist/interface/admin-metrics.d.ts +1 -1
- package/dist/interface/client-interface.d.ts +1 -1
- package/dist/interface/conversations.d.ts +14 -14
- 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/projects.d.ts +1 -1
- package/dist/interface/crud/team-member-profiles.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-U65KzAZX.d.ts → invoices-CHo9YKbI.d.ts} +3 -3
- package/dist/{invoices-U65KzAZX.d.ts.map → invoices-CHo9YKbI.d.ts.map} +1 -1
- package/dist/{plan-usage-DfDoj5K4.d.ts → plan-usage-ChUZqQWw.d.ts} +2 -2
- package/dist/{plan-usage-DfDoj5K4.d.ts.map → plan-usage-ChUZqQWw.d.ts.map} +1 -1
- package/dist/{projects-CgFGB3nO.d.ts → projects-CFTNXRfG.d.ts} +37 -37
- package/dist/{projects-CgFGB3nO.d.ts.map → projects-CFTNXRfG.d.ts.map} +1 -1
- package/dist/{schema-01nWxmb4.d.ts → schema-DIefUvKi.d.ts} +74 -113
- package/dist/schema-DIefUvKi.d.ts.map +1 -0
- package/dist/{server-interface-BUPG1kor.d.ts → server-interface-CgpxsLT_.d.ts} +5 -5
- package/dist/{server-interface-BUPG1kor.d.ts.map → server-interface-CgpxsLT_.d.ts.map} +1 -1
- package/dist/{team-member-profiles-uTluO8XI.d.ts → team-member-profiles-BoDEqx-0.d.ts} +11 -11
- package/dist/{team-member-profiles-uTluO8XI.d.ts.map → team-member-profiles-BoDEqx-0.d.ts.map} +1 -1
- package/dist/{users-CmBBuF00.d.ts → users-DHNRwoSz.d.ts} +12 -12
- package/dist/{users-CmBBuF00.d.ts.map → users-DHNRwoSz.d.ts.map} +1 -1
- package/dist/{webhooks-ByXrdSOx.d.ts → webhooks-8Ts1Clcb.d.ts} +3 -3
- package/dist/{webhooks-ByXrdSOx.d.ts.map → webhooks-8Ts1Clcb.d.ts.map} +1 -1
- package/package.json +1 -1
- package/src/ai/unified-prompts/reminders.ts +1 -0
- package/src/config/schema-fuzzer.test.ts +11 -11
- package/src/config/schema.ts +35 -14
- package/dist/schema-01nWxmb4.d.ts.map +0 -1
|
@@ -32,27 +32,27 @@ declare const teamMemberProfilesCrudServerReadSchema: import("yup").ObjectSchema
|
|
|
32
32
|
is_anonymous: boolean;
|
|
33
33
|
is_restricted: boolean;
|
|
34
34
|
requires_totp_mfa: boolean;
|
|
35
|
+
country_code: string | null;
|
|
36
|
+
profile_image_url: string | null;
|
|
37
|
+
signed_up_at_millis: number;
|
|
38
|
+
last_active_at_millis: number;
|
|
35
39
|
primary_email_verified: boolean;
|
|
36
40
|
primary_email_auth_enabled: boolean;
|
|
37
|
-
profile_image_url: string | null;
|
|
38
41
|
selected_team: {
|
|
39
42
|
client_metadata?: {} | null | undefined;
|
|
40
43
|
client_read_only_metadata?: {} | null | undefined;
|
|
41
44
|
server_metadata?: {} | null | undefined;
|
|
42
45
|
display_name: string;
|
|
43
46
|
id: string;
|
|
44
|
-
profile_image_url: string | null;
|
|
45
47
|
created_at_millis: number;
|
|
48
|
+
profile_image_url: string | null;
|
|
46
49
|
} | null;
|
|
47
|
-
signed_up_at_millis: number;
|
|
48
50
|
has_password: boolean;
|
|
49
51
|
otp_auth_enabled: boolean;
|
|
50
52
|
passkey_auth_enabled: boolean;
|
|
51
|
-
last_active_at_millis: number;
|
|
52
53
|
restricted_by_admin: boolean;
|
|
53
54
|
restricted_by_admin_reason: string | null;
|
|
54
55
|
restricted_by_admin_private_details: string | null;
|
|
55
|
-
country_code: string | null;
|
|
56
56
|
risk_scores: {
|
|
57
57
|
sign_up: {
|
|
58
58
|
bot: number;
|
|
@@ -155,27 +155,27 @@ declare const teamMemberProfilesCrud: CrudSchemaFromOptions<{
|
|
|
155
155
|
is_anonymous: boolean;
|
|
156
156
|
is_restricted: boolean;
|
|
157
157
|
requires_totp_mfa: boolean;
|
|
158
|
+
country_code: string | null;
|
|
159
|
+
profile_image_url: string | null;
|
|
160
|
+
signed_up_at_millis: number;
|
|
161
|
+
last_active_at_millis: number;
|
|
158
162
|
primary_email_verified: boolean;
|
|
159
163
|
primary_email_auth_enabled: boolean;
|
|
160
|
-
profile_image_url: string | null;
|
|
161
164
|
selected_team: {
|
|
162
165
|
client_metadata?: {} | null | undefined;
|
|
163
166
|
client_read_only_metadata?: {} | null | undefined;
|
|
164
167
|
server_metadata?: {} | null | undefined;
|
|
165
168
|
display_name: string;
|
|
166
169
|
id: string;
|
|
167
|
-
profile_image_url: string | null;
|
|
168
170
|
created_at_millis: number;
|
|
171
|
+
profile_image_url: string | null;
|
|
169
172
|
} | null;
|
|
170
|
-
signed_up_at_millis: number;
|
|
171
173
|
has_password: boolean;
|
|
172
174
|
otp_auth_enabled: boolean;
|
|
173
175
|
passkey_auth_enabled: boolean;
|
|
174
|
-
last_active_at_millis: number;
|
|
175
176
|
restricted_by_admin: boolean;
|
|
176
177
|
restricted_by_admin_reason: string | null;
|
|
177
178
|
restricted_by_admin_private_details: string | null;
|
|
178
|
-
country_code: string | null;
|
|
179
179
|
risk_scores: {
|
|
180
180
|
sign_up: {
|
|
181
181
|
bot: number;
|
|
@@ -282,4 +282,4 @@ declare const teamMemberProfilesCrud: CrudSchemaFromOptions<{
|
|
|
282
282
|
type TeamMemberProfilesCrud = CrudTypeOf<typeof teamMemberProfilesCrud>;
|
|
283
283
|
//#endregion
|
|
284
284
|
export { teamMemberProfilesCrudServerReadSchema as a, teamMemberProfilesCrudClientUpdateSchema as i, teamMemberProfilesCrud as n, teamMemberProfilesCrudClientReadSchema as r, TeamMemberProfilesCrud as t };
|
|
285
|
-
//# sourceMappingURL=team-member-profiles-
|
|
285
|
+
//# sourceMappingURL=team-member-profiles-BoDEqx-0.d.ts.map
|
package/dist/{team-member-profiles-uTluO8XI.d.ts.map → team-member-profiles-BoDEqx-0.d.ts.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"team-member-profiles-
|
|
1
|
+
{"version":3,"file":"team-member-profiles-BoDEqx-0.d.ts","names":[],"sources":["../src/interface/crud/team-member-profiles.ts"],"mappings":";;;cAMa,sCAAA,gBAAsC,YAAA;;;;;;;;;;;cAOtC,sCAAA,gBAAsC,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAItC,wCAAA,gBAAwC,YAAA;;;;;;;cAKxC,sBAAA,EAoCX,qBApCiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsCvB,sBAAA,GAAyB,UAAU,QAAQ,sBAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { c as CrudTypeOf, s as CrudSchemaFromOptions } from "./crud-CqmEW9s6.js";
|
|
2
|
-
import { t as WebhookEvent } from "./webhooks-
|
|
2
|
+
import { t as WebhookEvent } from "./webhooks-8Ts1Clcb.js";
|
|
3
3
|
import * as yup$1 from "yup";
|
|
4
4
|
import { InferType } from "yup";
|
|
5
5
|
|
|
@@ -82,8 +82,8 @@ declare const usersCrudServerReadSchema: yup$1.ObjectSchema<{
|
|
|
82
82
|
server_metadata?: {} | null | undefined;
|
|
83
83
|
display_name: string;
|
|
84
84
|
id: string;
|
|
85
|
-
profile_image_url: string | null;
|
|
86
85
|
created_at_millis: number;
|
|
86
|
+
profile_image_url: string | null;
|
|
87
87
|
} | null;
|
|
88
88
|
selected_team_id: string | null;
|
|
89
89
|
profile_image_url: string | null;
|
|
@@ -168,22 +168,22 @@ declare const usersCrudServerCreateSchema: yup$1.ObjectSchema<{
|
|
|
168
168
|
client_read_only_metadata: {} | null | undefined;
|
|
169
169
|
server_metadata: {} | null | undefined;
|
|
170
170
|
is_anonymous: boolean | undefined;
|
|
171
|
+
password: string | null | undefined;
|
|
172
|
+
country_code: string | null | undefined;
|
|
173
|
+
profile_image_url: string | null | undefined;
|
|
171
174
|
primary_email_verified: boolean | undefined;
|
|
172
175
|
primary_email_auth_enabled: boolean | undefined;
|
|
173
|
-
profile_image_url: string | null | undefined;
|
|
174
176
|
otp_auth_enabled: boolean | undefined;
|
|
175
177
|
passkey_auth_enabled: boolean | undefined;
|
|
176
178
|
restricted_by_admin: boolean | undefined;
|
|
177
179
|
restricted_by_admin_reason: string | null | undefined;
|
|
178
180
|
restricted_by_admin_private_details: string | null | undefined;
|
|
179
|
-
country_code: string | null | undefined;
|
|
180
181
|
risk_scores: {
|
|
181
182
|
sign_up: {
|
|
182
183
|
bot: number;
|
|
183
184
|
free_trial_abuse: number;
|
|
184
185
|
};
|
|
185
186
|
} | undefined;
|
|
186
|
-
password: string | null | undefined;
|
|
187
187
|
password_hash: string | undefined;
|
|
188
188
|
totp_secret_base64: string | null | undefined;
|
|
189
189
|
} & {
|
|
@@ -235,8 +235,8 @@ declare const usersCrud: CrudSchemaFromOptions<{
|
|
|
235
235
|
server_metadata?: {} | null | undefined;
|
|
236
236
|
display_name: string;
|
|
237
237
|
id: string;
|
|
238
|
-
profile_image_url: string | null;
|
|
239
238
|
created_at_millis: number;
|
|
239
|
+
profile_image_url: string | null;
|
|
240
240
|
} | null;
|
|
241
241
|
selected_team_id: string | null;
|
|
242
242
|
profile_image_url: string | null;
|
|
@@ -374,22 +374,22 @@ declare const usersCrud: CrudSchemaFromOptions<{
|
|
|
374
374
|
client_read_only_metadata: {} | null | undefined;
|
|
375
375
|
server_metadata: {} | null | undefined;
|
|
376
376
|
is_anonymous: boolean | undefined;
|
|
377
|
+
password: string | null | undefined;
|
|
378
|
+
country_code: string | null | undefined;
|
|
379
|
+
profile_image_url: string | null | undefined;
|
|
377
380
|
primary_email_verified: boolean | undefined;
|
|
378
381
|
primary_email_auth_enabled: boolean | undefined;
|
|
379
|
-
profile_image_url: string | null | undefined;
|
|
380
382
|
otp_auth_enabled: boolean | undefined;
|
|
381
383
|
passkey_auth_enabled: boolean | undefined;
|
|
382
384
|
restricted_by_admin: boolean | undefined;
|
|
383
385
|
restricted_by_admin_reason: string | null | undefined;
|
|
384
386
|
restricted_by_admin_private_details: string | null | undefined;
|
|
385
|
-
country_code: string | null | undefined;
|
|
386
387
|
risk_scores: {
|
|
387
388
|
sign_up: {
|
|
388
389
|
bot: number;
|
|
389
390
|
free_trial_abuse: number;
|
|
390
391
|
};
|
|
391
392
|
} | undefined;
|
|
392
|
-
password: string | null | undefined;
|
|
393
393
|
password_hash: string | undefined;
|
|
394
394
|
totp_secret_base64: string | null | undefined;
|
|
395
395
|
} & {
|
|
@@ -469,8 +469,8 @@ declare const userCreatedWebhookEvent: WebhookEvent<yup$1.ObjectSchema<{
|
|
|
469
469
|
server_metadata?: {} | null | undefined;
|
|
470
470
|
display_name: string;
|
|
471
471
|
id: string;
|
|
472
|
-
profile_image_url: string | null;
|
|
473
472
|
created_at_millis: number;
|
|
473
|
+
profile_image_url: string | null;
|
|
474
474
|
} | null;
|
|
475
475
|
selected_team_id: string | null;
|
|
476
476
|
profile_image_url: string | null;
|
|
@@ -560,8 +560,8 @@ declare const userUpdatedWebhookEvent: WebhookEvent<yup$1.ObjectSchema<{
|
|
|
560
560
|
server_metadata?: {} | null | undefined;
|
|
561
561
|
display_name: string;
|
|
562
562
|
id: string;
|
|
563
|
-
profile_image_url: string | null;
|
|
564
563
|
created_at_millis: number;
|
|
564
|
+
profile_image_url: string | null;
|
|
565
565
|
} | null;
|
|
566
566
|
selected_team_id: string | null;
|
|
567
567
|
profile_image_url: string | null;
|
|
@@ -650,4 +650,4 @@ declare const userDeletedWebhookEvent: WebhookEvent<yup$1.ObjectSchema<{
|
|
|
650
650
|
}, "">>;
|
|
651
651
|
//#endregion
|
|
652
652
|
export { userCreatedWebhookEvent as a, usersCrud as c, usersCrudServerReadSchema as d, usersCrudServerUpdateSchema as f, signUpRiskScoresSchema as i, usersCrudServerCreateSchema as l, UsersCrud as n, userDeletedWebhookEvent as o, riskScoreFieldSchema as r, userUpdatedWebhookEvent as s, SignUpRiskScoresCrud as t, usersCrudServerDeleteSchema as u };
|
|
653
|
-
//# sourceMappingURL=users-
|
|
653
|
+
//# sourceMappingURL=users-DHNRwoSz.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users-
|
|
1
|
+
{"version":3,"file":"users-DHNRwoSz.d.ts","names":[],"sources":["../src/interface/crud/users.ts"],"mappings":";;;;;;cAea,oBAAA,EAAoB,KAAA,CAAA,YAAA,SAAA,KAAA,CAAA,SAAA;AAAA,cACpB,sBAAA,EAAsB,KAAA,CAAA,YAAA;;;;;GAKjC,KAAA,CAAA,SAAA;;;;;;KACU,oBAAA,GAAuB,SAAS,QAAQ,sBAAA;AAAA,cAqBvC,2BAAA,EAA2B,KAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GAyBvC,KAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;cAEY,yBAAA,EAAyB,KAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CrC,KAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAEY,2BAAA,EAA2B,KAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAM3B,KAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAEA,2BAAA,EAA2B,KAAA,CAAA,WAAA,iBAAA,KAAA,CAAA,SAAA;AAAA,cAE3B,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiCD,SAAA,GAAY,UAAU,QAAQ,SAAA;AAAA,cAc7B,uBAAA,EAAuB,YAAA,CAAA,KAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cACvB,uBAAA,EAAuB,YAAA,CAAA,KAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAQvB,uBAAA,EAAuB,YAAA,CAAA,KAAA,CAAA,YAAA"}
|
|
@@ -22,8 +22,8 @@ declare const webhookEvents: readonly [WebhookEvent<yup$1.ObjectSchema<{
|
|
|
22
22
|
server_metadata?: {} | null | undefined;
|
|
23
23
|
display_name: string;
|
|
24
24
|
id: string;
|
|
25
|
-
profile_image_url: string | null;
|
|
26
25
|
created_at_millis: number;
|
|
26
|
+
profile_image_url: string | null;
|
|
27
27
|
} | null;
|
|
28
28
|
selected_team_id: string | null;
|
|
29
29
|
profile_image_url: string | null;
|
|
@@ -112,8 +112,8 @@ declare const webhookEvents: readonly [WebhookEvent<yup$1.ObjectSchema<{
|
|
|
112
112
|
server_metadata?: {} | null | undefined;
|
|
113
113
|
display_name: string;
|
|
114
114
|
id: string;
|
|
115
|
-
profile_image_url: string | null;
|
|
116
115
|
created_at_millis: number;
|
|
116
|
+
profile_image_url: string | null;
|
|
117
117
|
} | null;
|
|
118
118
|
selected_team_id: string | null;
|
|
119
119
|
profile_image_url: string | null;
|
|
@@ -323,4 +323,4 @@ declare const webhookEvents: readonly [WebhookEvent<yup$1.ObjectSchema<{
|
|
|
323
323
|
}];
|
|
324
324
|
//#endregion
|
|
325
325
|
export { webhookEvents as n, WebhookEvent as t };
|
|
326
|
-
//# sourceMappingURL=webhooks-
|
|
326
|
+
//# sourceMappingURL=webhooks-8Ts1Clcb.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhooks-
|
|
1
|
+
{"version":3,"file":"webhooks-8Ts1Clcb.d.ts","names":[],"sources":["../src/interface/webhooks.ts"],"mappings":";;;KAMY,YAAA,WAAuB,KAAA,CAAI,MAAA;EACrC,IAAA;EACA,MAAA,EAAQ,CAAC;EACT,QAAA;IACE,OAAA;IACA,WAAA;IACA,IAAA;EAAA;AAAA;AAAA,cAIS,aAAA,YAAa,YAAA,CAAA,KAAA,CAAA,YAAA"}
|
package/package.json
CHANGED
|
@@ -29,5 +29,6 @@ export const remindersPrompt = deindent`
|
|
|
29
29
|
- If available, always prefer editing the \`hexclave.config.ts\` file directly over asking the user to make changes on the dashboard. When implementing new features, you can always update the config file, and then tell the user about the changes you've made. The config file is automatically synced when using the local dashboard/dev environment with \`npx @hexclave/cli dev --config-file <path-to-config-file>\`.
|
|
30
30
|
- Hexclave's config files allow dot notation for nested properties. For example, the config \`{ auth: { allowSignUp: true }, "auth.password": { allowSignIn: true } }\` is the same as \`{ auth: { allowSignUp: true, password: { allowSignIn: true } } }\`.
|
|
31
31
|
- You can use the \`npx @hexclave/cli exec <javascript>\` command to run JavaScript with a pre-configured HexclaveServerApp available as \`hexclaveServerApp\`. This allows you to read and write from and to the Hexclave project as you would on the dashboard, but from the CLI. To read and write project configuration, see the note on the config file above.
|
|
32
|
+
- For advanced read queries, you can use \`hexclaveServerApp.queryAnalytics("<clickhouse-sql>")\`. Use \`SHOW TABLES\` and \`DESCRIBE TABLE\` to understand the schema of the available tables (columns have comments that may be useful as a description).
|
|
32
33
|
- Hexclave was formerly known as Stack Auth. You may still see references to it as Stack Auth in some places.
|
|
33
34
|
`;
|
|
@@ -61,17 +61,6 @@ const branchSchemaFuzzerConfig = [{
|
|
|
61
61
|
}],
|
|
62
62
|
signUpRulesDefaultAction: ["allow", "reject"],
|
|
63
63
|
}],
|
|
64
|
-
dbSync: [{
|
|
65
|
-
externalDatabases: [{
|
|
66
|
-
"some-external-db-id": [{
|
|
67
|
-
type: ["postgres"] as const,
|
|
68
|
-
connectionString: [
|
|
69
|
-
"postgres://user:password@host:port/database",
|
|
70
|
-
"some-connection-string",
|
|
71
|
-
],
|
|
72
|
-
}],
|
|
73
|
-
}],
|
|
74
|
-
}],
|
|
75
64
|
dataVault: [{
|
|
76
65
|
stores: [{
|
|
77
66
|
"some-store-id": [{
|
|
@@ -250,6 +239,17 @@ const environmentSchemaFuzzerConfig = [{
|
|
|
250
239
|
...branchSchemaFuzzerConfig[0].payments[0],
|
|
251
240
|
testMode: [false, true],
|
|
252
241
|
}],
|
|
242
|
+
dbSync: [{
|
|
243
|
+
externalDatabases: [{
|
|
244
|
+
"some-external-db-id": [{
|
|
245
|
+
type: ["postgres"] as const,
|
|
246
|
+
connectionString: [
|
|
247
|
+
"postgres://user:password@db.example.com:5432/database",
|
|
248
|
+
"postgresql://user:password@db.example.net/database",
|
|
249
|
+
],
|
|
250
|
+
}],
|
|
251
|
+
}],
|
|
252
|
+
}],
|
|
253
253
|
analytics: [{
|
|
254
254
|
queryFolders: [{
|
|
255
255
|
"some-folder-id": [{
|
package/src/config/schema.ts
CHANGED
|
@@ -327,20 +327,6 @@ export const branchConfigSchema = canNoLongerBeOverridden(projectConfigSchema, [
|
|
|
327
327
|
|
|
328
328
|
payments: branchPaymentsSchema,
|
|
329
329
|
|
|
330
|
-
dbSync: yupObject({
|
|
331
|
-
externalDatabases: yupRecord(
|
|
332
|
-
userSpecifiedIdSchema("externalDatabaseId"),
|
|
333
|
-
yupObject({
|
|
334
|
-
type: yupString().oneOf(["postgres"]).defined(),
|
|
335
|
-
connectionString: yupString().when("type", {
|
|
336
|
-
is: "postgres",
|
|
337
|
-
then: (schema) => schema.defined(),
|
|
338
|
-
otherwise: (schema) => schema.optional(),
|
|
339
|
-
}),
|
|
340
|
-
}),
|
|
341
|
-
),
|
|
342
|
-
}),
|
|
343
|
-
|
|
344
330
|
|
|
345
331
|
dataVault: yupObject({
|
|
346
332
|
stores: yupRecord(
|
|
@@ -449,6 +435,20 @@ export const environmentConfigSchema = branchConfigSchema.concat(yupObject({
|
|
|
449
435
|
testMode: yupBoolean(),
|
|
450
436
|
})),
|
|
451
437
|
|
|
438
|
+
dbSync: yupObject({
|
|
439
|
+
externalDatabases: yupRecord(
|
|
440
|
+
userSpecifiedIdSchema("externalDatabaseId"),
|
|
441
|
+
yupObject({
|
|
442
|
+
type: yupString().oneOf(["postgres"]).defined(),
|
|
443
|
+
connectionString: yupString().when("type", {
|
|
444
|
+
is: "postgres",
|
|
445
|
+
then: (schema) => schema.defined(),
|
|
446
|
+
otherwise: (schema) => schema.optional(),
|
|
447
|
+
}),
|
|
448
|
+
}),
|
|
449
|
+
),
|
|
450
|
+
}),
|
|
451
|
+
|
|
452
452
|
analytics: environmentAnalyticsSchema,
|
|
453
453
|
customDashboards: schemaFields.customDashboardsSchema,
|
|
454
454
|
}));
|
|
@@ -567,6 +567,13 @@ export function migrateConfigOverride(type: "project" | "branch" | "environment"
|
|
|
567
567
|
}
|
|
568
568
|
// END
|
|
569
569
|
|
|
570
|
+
// BEGIN 2026-07-01: dbSync.externalDatabases contains environment-specific connection strings.
|
|
571
|
+
// It should never be rendered from branch config, which can be read by branch-scoped tools.
|
|
572
|
+
if (type === "branch") {
|
|
573
|
+
res = removeProperty(res, p => p[0] === "dbSync");
|
|
574
|
+
}
|
|
575
|
+
// END
|
|
576
|
+
|
|
570
577
|
// return the result
|
|
571
578
|
return res;
|
|
572
579
|
};
|
|
@@ -587,6 +594,20 @@ import.meta.vitest?.test("migrateConfigOverride removes legacy sourceOfTruth ove
|
|
|
587
594
|
})).toEqual({});
|
|
588
595
|
});
|
|
589
596
|
|
|
597
|
+
import.meta.vitest?.test("migrateConfigOverride removes legacy branch-level dbSync overrides", ({ expect }) => {
|
|
598
|
+
const dbSync = {
|
|
599
|
+
externalDatabases: {
|
|
600
|
+
main: {
|
|
601
|
+
type: "postgres",
|
|
602
|
+
connectionString: "postgres://user:password@host:5432/database",
|
|
603
|
+
},
|
|
604
|
+
},
|
|
605
|
+
};
|
|
606
|
+
|
|
607
|
+
expect(migrateConfigOverride("branch", { dbSync })).toEqual({});
|
|
608
|
+
expect(migrateConfigOverride("environment", { dbSync })).toEqual({ dbSync });
|
|
609
|
+
});
|
|
610
|
+
|
|
590
611
|
function removeProperty(obj: Record<string, any>, pathCond: (path: (string | symbol)[]) => boolean): any {
|
|
591
612
|
return mapProperty(obj, pathCond, () => undefined);
|
|
592
613
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema-01nWxmb4.d.ts","names":[],"sources":["../src/config/schema.ts"],"mappings":";;;;;;;;cAqBa,YAAA;AAAA,KACD,WAAA,UAAqB,YAAY;AAAA;EAAA,UAO1B,oBAAA;IACf,qCAAqC;EAAA;AAAA;AATgD;AACzF;;AADyF,cAuB5E,mBAAA,EAAmB,KAAA,CAAA,YAAA;;;;;;;GAS9B,KAAA,CAAA,SAAA;;;;;;cA4FW,oBAAA,EAAoB,KAAA,CAAA,YAAA;;;eAqDhC,WAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkGY,kBAAA,EAAkB,KAAA,CAAA,MAAA,CAAA,IAAA,CAAA,IAAA;;;;;;;;;;;iBAAA,WAAA;IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA+ElB,uBAAA,EAAuB,KAAA,CAAA,MAAA,CAAA,IAAA,CAAA,WAAA,CAAA,IAAA,CAAA,IAAA;;;;;;;;;;;iBAAA,WAAA;IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAA,WAAA;IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAgFvB,wBAAA,EAAwB,KAAA,CAAA,MAAA,CAAA,IAAA,CAAA,WAAA,CAAA,IAAA,CAAA,WAAA,CAAA,IAAA,CAAA,IAAA;;;;;;;;;;;iBAAA,WAAA;IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAA,WAAA;IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAcrB,qBAAA,CAAsB,IAAA,yDAA6D,2BAAgC;AAAA,cA8N7H,qBAAA;EAAA;;;;;;;cASA,oBAAA;AAAA,cAEA,yBAAA;AAAA,cAEA,0BAAA;EAAA;;;;;;;;;;;;;;;;;;;wBAsB+E,MAAM;MAAW,OAAA;IAAA;EAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA4KjG,2BAAA,MAAiC,CAAA,IAAK,CAAA,WAAW,GAAA,wCAA0C,MAAA,CAAO,CAAA,EAAG,CAAA;AAAA,KACrG,+BAAA,MAAqC,CAAA,gCAAiC,2BAAA,CAA4B,CAAA,IAAK,+BAAA,CAAgC,2BAAA,CAA4B,CAAA,EAAG,CAAA,OAAQ,CAAA;AAAA,KAwB9K,aAAA,sBAAmC,GAAA,sDAAyD,CAAA,GAAI,CAAA,GAAI,SAAA,CAAU,+BAAA,CAAgC,CAAA,GAAI,CAAA;AAAA,iBAiFvI,oBAAA,WAA+B,mCAAA,EAAqC,MAAA,EAAQ,CAAA,GAAC,SAAA;EAAA;;;;;;;iBAI7E,mBAAA,WAA8B,kCAAA,EAAoC,MAAA,EAAQ,CAAA,GAAC,SAAA;EAAA;;;;;;;iBAU3E,wBAAA,WAAmC,uCAAA,EAAyC,MAAA,EAAQ,CAAA,GAAI,aAAA,QAAqB,yBAAA,EAA2B,aAAA,QAAqB,oBAAA,EAAsB,aAAA,QAAqB,qBAAA,EAAuB,CAAA;AAAA,iBAa/N,yBAAA,CAA0B,MAAA,EAAQ,wCAAA,GAA2C,aAAA,QAAqB,0BAAA,EAA4B,aAAA,QAAqB,yBAAA,EAA2B,aAAA,QAAqB,oBAAA,EAAsB,aAAA,QAAqB,qBAAA,EAAuB,wCAAA;AAAA,iBAiB/P,qBAAA,WAAgC,uCAAA,EAAyC,MAAA,EAAQ,CAAA,GAAC,OAAA,CAAA,CAAA;;;;;iBAWlF,oBAAA,WAA+B,sCAAA,EAAwC,MAAA,EAAQ,CAAA,GAAC,OAAA,CAAA,CAAA;;;;;iBAQhF,yBAAA,WAAoC,2CAAA,EAA6C,MAAA,EAAQ,CAAA,GAAC,OAAA,CAAA,CAAA;;;;;iBAQ1F,0BAAA,CAA2B,MAAA,EAAQ,4CAAA,GAA4C,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0E/E,uBAAA,WAAkC,KAAA,CAAI,SAAA,EAAW,MAAA,EAAQ,CAAA,EAAG,cAAA,WAAyB,OAAA;EAAW,0CAAA;AAAA,IAA8D,OAAA,CAAQ,MAAA;AAAA,iBAqLtK,4BAAA,WAAuC,KAAA,CAAI,SAAA,EAAW,MAAA,EAAQ,CAAA,EAAG,MAAA,WAAiB,OAAA;EAAW,0CAAA;EAAsD,SAAA;AAAA,IAAyB,OAAA;AAAA,KAI7L,0CAAA,MACH,OAAA,CAAQ,CAAA,0BAA2B,0CAAA,CAA2C,mBAAA,CAAoB,CAAA,aAAc,OAAA,CAAQ,CAAA,aACtH,CAAA,mBAAoB,CAAA,iBAAkB,CAAA,iBAAkB,CAAA,KAAM,0CAAA,CAA2C,CAAA,CAAE,CAAA,QAC3G,CAAA;AAAA,KACQ,qCAAA,WAAgD,KAAA,CAAI,SAAA,IAAa,0CAAA,CAA2C,KAAA,CAAI,SAAA,CAAU,CAAA;;;;;;;;;iBAahH,2BAAA,WAAsC,KAAA,CAAI,SAAA,EAAW,MAAA,EAAQ,CAAA,EAAG,gBAAA,EAAkB,MAAA,GAAS,OAAA,CAAQ,MAAA;AAAA,KAoF7G,yCAAA,WAAoD,KAAA,CAAI,SAAA,IAAa,KAAA,CAAI,SAAA,CAAU,CAAA;AAAA,KAKnF,+BAAA,GAAkC,MAAA,CAAO,qCAAA,QAA6C,mBAAA;AAAA,KACtF,8BAAA,GAAiC,MAAA,CAAO,qCAAA,QAA6C,kBAAA;AAAA,KACrF,mCAAA,GAAsC,MAAA,CAAO,qCAAA,QAA6C,uBAAA;AAAA,KAC1F,oCAAA,GAAuC,MAAA,CAAO,qCAAA,QAA6C,wBAAA;AAAA,KAK3F,qBAAA,GAAwB,YAAY,CAAC,+BAAA;AAAA,KACrC,oBAAA,GAAuB,YAAY,CAAC,8BAAA;AAAA,KACpC,yBAAA,GAA4B,YAAY,CAAC,mCAAA;AAAA,KACzC,0BAAA,GAA6B,YAAY,CAAC,oCAAA;AAAA,KAI1C,6BAAA,GAAgC,qBAAqB;AAAA,KACrD,4BAAA,GAA+B,oBAAoB;AAAA,KACnD,iCAAA,GAAoC,yBAAyB;AAAA,KAC7D,kCAAA,GAAqC,0BAA0B;AAAA,KAK/D,uBAAA,GAA0B,MAAM,CAAC,+BAAA;AAAA,KACjC,sBAAA,GAAyB,MAAA,CAAO,uBAAA,GAA0B,8BAAA;AAAA,KAC1D,2BAAA,GAA8B,MAAA,CAAO,sBAAA,GAAyB,mCAAA;AAAA,KAC9D,4BAAA,GAA+B,MAAA,CAAO,2BAAA,GAA8B,oCAAA;AAAA,KAI3E,mCAAA,GAAsC,IAAA,CAAK,uBAAA,QACtC,8BAAA,SACA,mCAAA,SACA,oCAAA;AAAA,KAEL,kCAAA,GAAqC,IAAA,CAAK,sBAAA,QACrC,mCAAA,SACA,oCAAA;AAAA,KAEL,uCAAA,GAA0C,IAAA,CAAK,2BAAA,QAC1C,oCAAA;AAAA,KAEL,wCAAA,GAA2C,4BAA4B;AAAA,KAIvE,uCAAA,GAA0C,MAAA,CAAO,OAAA,CAAQ,UAAA,QAAkB,oBAAA,CAAqB,mCAAA;AAAA,KAChG,sCAAA,GAAyC,MAAA,CAAO,OAAA,CAAQ,UAAA,QAAkB,mBAAA,CAAoB,kCAAA;AAAA,KAC9F,2CAAA,GAA8C,MAAA,CAAO,OAAA,CAAQ,UAAA,QAAkB,wBAAA,CAAyB,uCAAA;AAAA,KACxG,4CAAA,GAA+C,MAAA,CAAO,OAAA,CAAQ,UAAA,QAAkB,yBAAA;AAAA,KAGzE,qBAAA,GAAwB,MAAA,CAAO,OAAA,CAAQ,UAAA,QAAkB,qBAAA,CAAsB,uCAAA;AAAA,KAC/E,oBAAA,GAAuB,MAAA,CAAO,OAAA,CAAQ,UAAA,QAAkB,oBAAA,CAAqB,sCAAA;AAAA,KAC7E,yBAAA,GAA4B,MAAA,CAAO,OAAA,CAAQ,UAAA,QAAkB,yBAAA,CAA0B,2CAAA;AAAA,KACvF,0BAAA,GAA6B,MAAA,CAAO,OAAA,CAAQ,UAAA,QAAkB,0BAAA;AAAA,KAG9D,cAAA,GAAiB,0BAA0B"}
|