@authhero/proxy 0.4.5 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -10
- package/dist/proxy.cjs +1 -1
- package/dist/proxy.d.ts +56 -3
- package/dist/proxy.mjs +265 -214
- package/dist/tsconfig.types.tsbuildinfo +1 -1
- package/dist/types/app.d.ts +2 -1
- package/dist/types/constants.d.ts +7 -0
- package/dist/types/data-plane/cache-adapter-cache.d.ts +39 -0
- package/dist/types/data-plane/cache-api-cache.d.ts +5 -0
- package/dist/types/http-adapter/index.d.ts +1 -0
- package/dist/types/index.d.ts +3 -0
- package/package.json +2 -2
package/dist/proxy.mjs
CHANGED
|
@@ -829,7 +829,7 @@ e.object({
|
|
|
829
829
|
created_at: e.string().transform((e) => e === null ? "" : e),
|
|
830
830
|
updated_at: e.string().transform((e) => e === null ? "" : e)
|
|
831
831
|
}).extend(Ke.shape);
|
|
832
|
-
var
|
|
832
|
+
var _ = e.object({
|
|
833
833
|
domain: e.string(),
|
|
834
834
|
custom_domain_id: e.string().optional(),
|
|
835
835
|
type: e.enum(["auth0_managed_certs", "self_managed_certs"]),
|
|
@@ -843,7 +843,7 @@ var qe = e.object({
|
|
|
843
843
|
"null"
|
|
844
844
|
]).optional(),
|
|
845
845
|
domain_metadata: e.record(e.string(), e.string().max(255)).optional()
|
|
846
|
-
}),
|
|
846
|
+
}), qe = e.discriminatedUnion("name", [e.object({
|
|
847
847
|
name: e.literal("txt"),
|
|
848
848
|
record: e.string(),
|
|
849
849
|
domain: e.string()
|
|
@@ -851,8 +851,7 @@ var qe = e.object({
|
|
|
851
851
|
name: e.literal("http"),
|
|
852
852
|
http_body: e.string(),
|
|
853
853
|
http_url: e.string()
|
|
854
|
-
})])
|
|
855
|
-
qe.extend({
|
|
854
|
+
})]), Je = _.extend({
|
|
856
855
|
custom_domain_id: e.string(),
|
|
857
856
|
primary: e.boolean(),
|
|
858
857
|
status: e.enum([
|
|
@@ -862,23 +861,28 @@ qe.extend({
|
|
|
862
861
|
"ready"
|
|
863
862
|
]),
|
|
864
863
|
origin_domain_name: e.string().optional(),
|
|
865
|
-
verification: e.object({ methods: e.array(
|
|
864
|
+
verification: e.object({ methods: e.array(qe) }).optional(),
|
|
866
865
|
tls_policy: e.string().optional()
|
|
867
|
-
})
|
|
866
|
+
});
|
|
867
|
+
_.pick({
|
|
868
|
+
tls_policy: !0,
|
|
869
|
+
custom_client_ip_header: !0,
|
|
870
|
+
domain_metadata: !0
|
|
871
|
+
}).strict(), Je.extend({ tenant_id: e.string() }), e.object({
|
|
868
872
|
certificate: e.string().regex(/^-----BEGIN CERTIFICATE-----[\s\S]+-----END CERTIFICATE-----\s*$/, "must be PEM-encoded; include the full certificate chain in leaf-first order"),
|
|
869
873
|
private_key: e.string().regex(/-----BEGIN (RSA |EC |ENCRYPTED )?PRIVATE KEY-----[\s\S]+-----END \1PRIVATE KEY-----\s*$/, "must be a PEM-encoded private key")
|
|
870
874
|
});
|
|
871
|
-
var
|
|
875
|
+
var v = e.object({
|
|
872
876
|
id: e.string(),
|
|
873
877
|
order: e.number().optional(),
|
|
874
878
|
visible: e.boolean().optional().default(!0)
|
|
875
|
-
}),
|
|
879
|
+
}), y = v.extend({ category: e.literal("BLOCK").optional() }), Ye = y.extend({
|
|
876
880
|
type: e.literal("DIVIDER"),
|
|
877
881
|
config: e.object({ text: e.string().optional() }).optional()
|
|
878
|
-
}), Xe =
|
|
882
|
+
}), Xe = y.extend({
|
|
879
883
|
type: e.literal("HTML"),
|
|
880
884
|
config: e.object({ content: e.string().optional() }).optional()
|
|
881
|
-
}), Ze =
|
|
885
|
+
}), Ze = y.extend({
|
|
882
886
|
type: e.literal("IMAGE"),
|
|
883
887
|
config: e.object({
|
|
884
888
|
src: e.string().optional(),
|
|
@@ -886,43 +890,43 @@ var _ = e.object({
|
|
|
886
890
|
width: e.number().optional(),
|
|
887
891
|
height: e.number().optional()
|
|
888
892
|
}).optional()
|
|
889
|
-
}), Qe =
|
|
893
|
+
}), Qe = y.extend({
|
|
890
894
|
type: e.literal("JUMP_BUTTON"),
|
|
891
895
|
config: e.object({
|
|
892
896
|
text: e.string().optional(),
|
|
893
897
|
target_step: e.string().optional()
|
|
894
898
|
})
|
|
895
|
-
}), $e =
|
|
899
|
+
}), $e = y.extend({
|
|
896
900
|
type: e.literal("RESEND_BUTTON"),
|
|
897
901
|
config: e.object({
|
|
898
902
|
text: e.string().optional(),
|
|
899
903
|
resend_action: e.string().optional()
|
|
900
904
|
})
|
|
901
|
-
}), et =
|
|
905
|
+
}), et = y.extend({
|
|
902
906
|
type: e.literal("NEXT_BUTTON"),
|
|
903
907
|
config: e.object({ text: e.string().optional() })
|
|
904
|
-
}), tt =
|
|
908
|
+
}), tt = y.extend({
|
|
905
909
|
type: e.literal("PREVIOUS_BUTTON"),
|
|
906
910
|
config: e.object({ text: e.string().optional() })
|
|
907
|
-
}), nt =
|
|
911
|
+
}), nt = y.extend({
|
|
908
912
|
type: e.literal("RICH_TEXT"),
|
|
909
913
|
config: e.object({ content: e.string().optional() }).optional()
|
|
910
|
-
}),
|
|
914
|
+
}), b = v.extend({
|
|
911
915
|
category: e.literal("WIDGET").optional(),
|
|
912
916
|
label: e.string().min(1).optional(),
|
|
913
917
|
hint: e.string().min(1).max(500).optional(),
|
|
914
918
|
required: e.boolean().optional(),
|
|
915
919
|
sensitive: e.boolean().optional()
|
|
916
|
-
}), rt =
|
|
920
|
+
}), rt = b.extend({
|
|
917
921
|
type: e.literal("AUTH0_VERIFIABLE_CREDENTIALS"),
|
|
918
922
|
config: e.object({ credential_type: e.string().optional() })
|
|
919
|
-
}), it =
|
|
923
|
+
}), it = b.extend({
|
|
920
924
|
type: e.literal("GMAPS_ADDRESS"),
|
|
921
925
|
config: e.object({ api_key: e.string().optional() })
|
|
922
|
-
}), at =
|
|
926
|
+
}), at = b.extend({
|
|
923
927
|
type: e.literal("RECAPTCHA"),
|
|
924
928
|
config: e.object({ site_key: e.string().optional() })
|
|
925
|
-
}),
|
|
929
|
+
}), x = v.extend({
|
|
926
930
|
category: e.literal("FIELD").optional(),
|
|
927
931
|
label: e.string().min(1).optional(),
|
|
928
932
|
hint: e.string().min(1).max(500).optional(),
|
|
@@ -938,10 +942,10 @@ var _ = e.object({
|
|
|
938
942
|
})).optional(),
|
|
939
943
|
required: e.boolean().optional(),
|
|
940
944
|
sensitive: e.boolean().optional()
|
|
941
|
-
}), ot =
|
|
945
|
+
}), ot = x.extend({
|
|
942
946
|
type: e.literal("BOOLEAN"),
|
|
943
947
|
config: e.object({ default_value: e.boolean().optional() }).optional()
|
|
944
|
-
}), st =
|
|
948
|
+
}), st = x.extend({
|
|
945
949
|
type: e.literal("CARDS"),
|
|
946
950
|
config: e.object({
|
|
947
951
|
options: e.array(e.object({
|
|
@@ -952,7 +956,7 @@ var _ = e.object({
|
|
|
952
956
|
})).optional(),
|
|
953
957
|
multi_select: e.boolean().optional()
|
|
954
958
|
}).optional()
|
|
955
|
-
}), ct =
|
|
959
|
+
}), ct = x.extend({
|
|
956
960
|
type: e.literal("CHOICE"),
|
|
957
961
|
config: e.object({
|
|
958
962
|
options: e.array(e.object({
|
|
@@ -963,7 +967,7 @@ var _ = e.object({
|
|
|
963
967
|
multiple: e.boolean().optional(),
|
|
964
968
|
default_value: e.union([e.string(), e.array(e.string())]).optional()
|
|
965
969
|
}).optional()
|
|
966
|
-
}), lt =
|
|
970
|
+
}), lt = x.extend({
|
|
967
971
|
type: e.literal("CUSTOM"),
|
|
968
972
|
config: e.object({
|
|
969
973
|
component: e.string().optional(),
|
|
@@ -971,7 +975,7 @@ var _ = e.object({
|
|
|
971
975
|
schema: e.record(e.string(), e.any()).optional(),
|
|
972
976
|
code: e.string().optional()
|
|
973
977
|
})
|
|
974
|
-
}), ut =
|
|
978
|
+
}), ut = x.extend({
|
|
975
979
|
type: e.literal("DATE"),
|
|
976
980
|
config: e.object({
|
|
977
981
|
format: e.string().optional(),
|
|
@@ -979,7 +983,7 @@ var _ = e.object({
|
|
|
979
983
|
max: e.string().optional(),
|
|
980
984
|
default_value: e.string().optional()
|
|
981
985
|
}).optional()
|
|
982
|
-
}), dt =
|
|
986
|
+
}), dt = x.extend({
|
|
983
987
|
type: e.literal("DROPDOWN"),
|
|
984
988
|
config: e.object({
|
|
985
989
|
options: e.array(e.object({
|
|
@@ -991,26 +995,26 @@ var _ = e.object({
|
|
|
991
995
|
multiple: e.boolean().optional(),
|
|
992
996
|
default_value: e.union([e.string(), e.array(e.string())]).optional()
|
|
993
997
|
}).optional()
|
|
994
|
-
}), ft =
|
|
998
|
+
}), ft = x.extend({
|
|
995
999
|
type: e.literal("EMAIL"),
|
|
996
1000
|
config: e.object({
|
|
997
1001
|
placeholder: e.string().optional(),
|
|
998
1002
|
default_value: e.string().optional()
|
|
999
1003
|
}).optional()
|
|
1000
|
-
}), pt =
|
|
1004
|
+
}), pt = x.extend({
|
|
1001
1005
|
type: e.literal("FILE"),
|
|
1002
1006
|
config: e.object({
|
|
1003
1007
|
accept: e.string().optional(),
|
|
1004
1008
|
max_size: e.number().optional(),
|
|
1005
1009
|
multiple: e.boolean().optional()
|
|
1006
1010
|
}).optional()
|
|
1007
|
-
}), mt =
|
|
1011
|
+
}), mt = x.extend({
|
|
1008
1012
|
type: e.literal("LEGAL"),
|
|
1009
1013
|
config: e.object({
|
|
1010
1014
|
text: e.string(),
|
|
1011
1015
|
html: e.boolean().optional()
|
|
1012
1016
|
}).optional()
|
|
1013
|
-
}), ht =
|
|
1017
|
+
}), ht = x.extend({
|
|
1014
1018
|
type: e.literal("NUMBER"),
|
|
1015
1019
|
config: e.object({
|
|
1016
1020
|
placeholder: e.string().optional(),
|
|
@@ -1019,7 +1023,7 @@ var _ = e.object({
|
|
|
1019
1023
|
step: e.number().optional(),
|
|
1020
1024
|
default_value: e.string().optional()
|
|
1021
1025
|
}).optional()
|
|
1022
|
-
}), gt =
|
|
1026
|
+
}), gt = x.extend({
|
|
1023
1027
|
type: e.literal("PASSWORD"),
|
|
1024
1028
|
config: e.object({
|
|
1025
1029
|
placeholder: e.string().optional(),
|
|
@@ -1028,13 +1032,13 @@ var _ = e.object({
|
|
|
1028
1032
|
forgot_password_link: e.string().optional(),
|
|
1029
1033
|
default_value: e.string().optional()
|
|
1030
1034
|
}).optional()
|
|
1031
|
-
}), _t =
|
|
1035
|
+
}), _t = x.extend({
|
|
1032
1036
|
type: e.literal("PAYMENT"),
|
|
1033
1037
|
config: e.object({
|
|
1034
1038
|
provider: e.string().optional(),
|
|
1035
1039
|
currency: e.string().optional()
|
|
1036
1040
|
}).optional()
|
|
1037
|
-
}), vt =
|
|
1041
|
+
}), vt = x.extend({
|
|
1038
1042
|
type: e.literal("SOCIAL"),
|
|
1039
1043
|
config: e.object({
|
|
1040
1044
|
providers: e.array(e.string()).optional(),
|
|
@@ -1046,7 +1050,7 @@ var _ = e.object({
|
|
|
1046
1050
|
href: e.string().optional()
|
|
1047
1051
|
})).optional()
|
|
1048
1052
|
}).optional()
|
|
1049
|
-
}), yt =
|
|
1053
|
+
}), yt = x.extend({
|
|
1050
1054
|
type: e.literal("TEL"),
|
|
1051
1055
|
config: e.object({
|
|
1052
1056
|
placeholder: e.string().optional(),
|
|
@@ -1054,7 +1058,7 @@ var _ = e.object({
|
|
|
1054
1058
|
default_value: e.string().optional(),
|
|
1055
1059
|
allow_email: e.boolean().optional()
|
|
1056
1060
|
}).optional()
|
|
1057
|
-
}), bt =
|
|
1061
|
+
}), bt = x.extend({
|
|
1058
1062
|
type: e.literal("TEXT"),
|
|
1059
1063
|
config: e.object({
|
|
1060
1064
|
placeholder: e.string().optional(),
|
|
@@ -1062,13 +1066,13 @@ var _ = e.object({
|
|
|
1062
1066
|
max_length: e.number().optional(),
|
|
1063
1067
|
default_value: e.string().optional()
|
|
1064
1068
|
}).optional()
|
|
1065
|
-
}), xt =
|
|
1069
|
+
}), xt = x.extend({
|
|
1066
1070
|
type: e.literal("COUNTRY"),
|
|
1067
1071
|
config: e.object({
|
|
1068
1072
|
placeholder: e.string().optional(),
|
|
1069
1073
|
default_value: e.string().optional()
|
|
1070
1074
|
}).optional()
|
|
1071
|
-
}), St =
|
|
1075
|
+
}), St = x.extend({
|
|
1072
1076
|
type: e.literal("URL"),
|
|
1073
1077
|
config: e.object({
|
|
1074
1078
|
placeholder: e.string().optional(),
|
|
@@ -1105,7 +1109,7 @@ var _ = e.object({
|
|
|
1105
1109
|
yt,
|
|
1106
1110
|
bt,
|
|
1107
1111
|
St
|
|
1108
|
-
]),
|
|
1112
|
+
]), S = e.union([
|
|
1109
1113
|
Ct,
|
|
1110
1114
|
wt,
|
|
1111
1115
|
Tt
|
|
@@ -1134,13 +1138,13 @@ new Set([
|
|
|
1134
1138
|
visible: e.boolean().optional().default(!0),
|
|
1135
1139
|
customizations: e.record(e.string(), e.any()).optional()
|
|
1136
1140
|
});
|
|
1137
|
-
var
|
|
1141
|
+
var C = e.object({
|
|
1138
1142
|
x: e.number(),
|
|
1139
1143
|
y: e.number()
|
|
1140
1144
|
}), Et = e.object({
|
|
1141
1145
|
id: e.string(),
|
|
1142
1146
|
type: e.literal("FLOW"),
|
|
1143
|
-
coordinates:
|
|
1147
|
+
coordinates: C,
|
|
1144
1148
|
alias: e.string().min(1).max(150).optional(),
|
|
1145
1149
|
config: e.object({
|
|
1146
1150
|
flow_id: e.string().max(30),
|
|
@@ -1149,7 +1153,7 @@ var S = e.object({
|
|
|
1149
1153
|
}), Dt = e.object({
|
|
1150
1154
|
id: e.string(),
|
|
1151
1155
|
type: e.literal("ROUTER"),
|
|
1152
|
-
coordinates:
|
|
1156
|
+
coordinates: C,
|
|
1153
1157
|
alias: e.string().min(1).max(150),
|
|
1154
1158
|
config: e.object({
|
|
1155
1159
|
rules: e.array(e.object({
|
|
@@ -1163,10 +1167,10 @@ var S = e.object({
|
|
|
1163
1167
|
}), Ot = e.object({
|
|
1164
1168
|
id: e.string(),
|
|
1165
1169
|
type: e.literal("STEP"),
|
|
1166
|
-
coordinates:
|
|
1170
|
+
coordinates: C,
|
|
1167
1171
|
alias: e.string().min(1).max(150).optional(),
|
|
1168
1172
|
config: e.object({
|
|
1169
|
-
components: e.array(
|
|
1173
|
+
components: e.array(S),
|
|
1170
1174
|
next_node: e.string().optional()
|
|
1171
1175
|
})
|
|
1172
1176
|
}), kt = e.discriminatedUnion("type", [
|
|
@@ -1191,7 +1195,7 @@ var S = e.object({
|
|
|
1191
1195
|
value: e.string()
|
|
1192
1196
|
})).optional(),
|
|
1193
1197
|
next_node: e.string().optional(),
|
|
1194
|
-
coordinates:
|
|
1198
|
+
coordinates: C.optional()
|
|
1195
1199
|
}).optional(),
|
|
1196
1200
|
ending: e.object({
|
|
1197
1201
|
redirection: e.object({
|
|
@@ -1199,7 +1203,7 @@ var S = e.object({
|
|
|
1199
1203
|
target: e.string().optional()
|
|
1200
1204
|
}).optional(),
|
|
1201
1205
|
after_submit: e.object({ flow_id: e.string().optional() }).optional(),
|
|
1202
|
-
coordinates:
|
|
1206
|
+
coordinates: C.optional(),
|
|
1203
1207
|
resume_flow: e.boolean().optional()
|
|
1204
1208
|
}).optional(),
|
|
1205
1209
|
style: e.object({ css: e.string().optional() }).optional(),
|
|
@@ -1230,12 +1234,12 @@ e.object({
|
|
|
1230
1234
|
method: e.enum(["POST", "GET"]),
|
|
1231
1235
|
title: e.string().optional(),
|
|
1232
1236
|
description: e.string().optional(),
|
|
1233
|
-
components: e.array(
|
|
1237
|
+
components: e.array(S),
|
|
1234
1238
|
messages: e.array(jt).optional(),
|
|
1235
1239
|
links: e.array(Mt).optional(),
|
|
1236
1240
|
footer: e.string().optional()
|
|
1237
1241
|
});
|
|
1238
|
-
var
|
|
1242
|
+
var w = e.enum([
|
|
1239
1243
|
"pre-user-registration",
|
|
1240
1244
|
"post-user-registration",
|
|
1241
1245
|
"post-user-login",
|
|
@@ -1243,48 +1247,48 @@ var C = e.enum([
|
|
|
1243
1247
|
"validate-registration-username",
|
|
1244
1248
|
"pre-user-deletion",
|
|
1245
1249
|
"post-user-deletion"
|
|
1246
|
-
]),
|
|
1250
|
+
]), T = e.enum([
|
|
1247
1251
|
"pre-user-registration",
|
|
1248
1252
|
"post-user-registration",
|
|
1249
1253
|
"post-user-login",
|
|
1250
1254
|
"validate-registration-username",
|
|
1251
1255
|
"pre-user-deletion",
|
|
1252
1256
|
"post-user-deletion"
|
|
1253
|
-
]),
|
|
1257
|
+
]), E = e.enum([
|
|
1254
1258
|
"post-user-login",
|
|
1255
1259
|
"post-user-registration",
|
|
1256
1260
|
"post-user-update",
|
|
1257
1261
|
"credentials-exchange"
|
|
1258
|
-
]),
|
|
1262
|
+
]), D = e.enum([
|
|
1259
1263
|
"post-user-login",
|
|
1260
1264
|
"credentials-exchange",
|
|
1261
1265
|
"pre-user-registration",
|
|
1262
1266
|
"post-user-registration"
|
|
1263
|
-
]),
|
|
1267
|
+
]), O = e.enum([
|
|
1264
1268
|
"ensure-username",
|
|
1265
1269
|
"set-preferred-username",
|
|
1266
1270
|
"account-linking"
|
|
1267
|
-
]),
|
|
1271
|
+
]), k = {
|
|
1268
1272
|
enabled: e.boolean().default(!1),
|
|
1269
1273
|
synchronous: e.boolean().default(!1),
|
|
1270
1274
|
priority: e.number().optional(),
|
|
1271
1275
|
hook_id: e.string().optional(),
|
|
1272
1276
|
metadata: e.record(e.string(), e.unknown()).optional()
|
|
1273
1277
|
}, Nt = e.object({
|
|
1274
|
-
...
|
|
1275
|
-
trigger_id:
|
|
1278
|
+
...k,
|
|
1279
|
+
trigger_id: w,
|
|
1276
1280
|
url: e.string()
|
|
1277
1281
|
}), Pt = e.object({
|
|
1278
|
-
...
|
|
1279
|
-
trigger_id:
|
|
1282
|
+
...k,
|
|
1283
|
+
trigger_id: T,
|
|
1280
1284
|
form_id: e.string()
|
|
1281
1285
|
}), Ft = e.object({
|
|
1282
|
-
...
|
|
1283
|
-
trigger_id: T,
|
|
1284
|
-
template_id: D
|
|
1285
|
-
}), It = e.object({
|
|
1286
|
-
...O,
|
|
1286
|
+
...k,
|
|
1287
1287
|
trigger_id: E,
|
|
1288
|
+
template_id: O
|
|
1289
|
+
}), It = e.object({
|
|
1290
|
+
...k,
|
|
1291
|
+
trigger_id: D,
|
|
1288
1292
|
code_id: e.string()
|
|
1289
1293
|
});
|
|
1290
1294
|
e.union([
|
|
@@ -1294,26 +1298,26 @@ e.union([
|
|
|
1294
1298
|
It
|
|
1295
1299
|
]);
|
|
1296
1300
|
var Lt = e.object({
|
|
1297
|
-
...
|
|
1298
|
-
trigger_id:
|
|
1301
|
+
...k,
|
|
1302
|
+
trigger_id: w
|
|
1299
1303
|
}).extend(n.shape).extend({
|
|
1300
1304
|
hook_id: e.string(),
|
|
1301
1305
|
url: e.string()
|
|
1302
1306
|
}), Rt = e.object({
|
|
1303
|
-
...
|
|
1304
|
-
trigger_id:
|
|
1307
|
+
...k,
|
|
1308
|
+
trigger_id: T
|
|
1305
1309
|
}).extend(n.shape).extend({
|
|
1306
1310
|
hook_id: e.string(),
|
|
1307
1311
|
form_id: e.string()
|
|
1308
1312
|
}), zt = e.object({
|
|
1309
|
-
...
|
|
1310
|
-
trigger_id:
|
|
1313
|
+
...k,
|
|
1314
|
+
trigger_id: E
|
|
1311
1315
|
}).extend(n.shape).extend({
|
|
1312
1316
|
hook_id: e.string(),
|
|
1313
|
-
template_id:
|
|
1317
|
+
template_id: O
|
|
1314
1318
|
}), Bt = e.object({
|
|
1315
|
-
...
|
|
1316
|
-
trigger_id:
|
|
1319
|
+
...k,
|
|
1320
|
+
trigger_id: D
|
|
1317
1321
|
}).extend(n.shape).extend({
|
|
1318
1322
|
hook_id: e.string(),
|
|
1319
1323
|
code_id: e.string()
|
|
@@ -1446,7 +1450,7 @@ e.object({
|
|
|
1446
1450
|
created_at: e.string(),
|
|
1447
1451
|
updated_at: e.string()
|
|
1448
1452
|
});
|
|
1449
|
-
var
|
|
1453
|
+
var A = {
|
|
1450
1454
|
ACLS_SUMMARY: "acls_summary",
|
|
1451
1455
|
ACTIONS_EXECUTION_FAILED: "actions_execution_failed",
|
|
1452
1456
|
API_LIMIT: "api_limit",
|
|
@@ -1606,10 +1610,10 @@ var k = {
|
|
|
1606
1610
|
WARNING_DURING_LOGIN: "w",
|
|
1607
1611
|
WARNING_SENDING_NOTIFICATION: "wn",
|
|
1608
1612
|
WARNING_USER_MANAGEMENT: "wum"
|
|
1609
|
-
}, Jt = e.string().refine((e) => Object.values(
|
|
1610
|
-
|
|
1613
|
+
}, Jt = e.string().refine((e) => Object.values(A).includes(e), { message: "Invalid log type" });
|
|
1614
|
+
A.ACLS_SUMMARY, A.ACTIONS_EXECUTION_FAILED, A.API_LIMIT, A.API_LIMIT_WARNING, A.APPI, A.CIBA_EXCHANGE_FAILED, A.CIBA_EXCHANGE_SUCCEEDED, A.CIBA_START_FAILED, A.CIBA_START_SUCCEEDED, A.CODE_LINK_SENT, A.CODE_SENT, A.DEPRECATION_NOTICE, A.FAILED_LOGIN, A.FAILED_BY_CONNECTOR, A.FAILED_CHANGE_EMAIL, A.FAILED_BY_CORS, A.FAILED_CROSS_ORIGIN_AUTHENTICATION, A.FAILED_CHANGE_PASSWORD, A.FAILED_POST_CHANGE_PASSWORD_HOOK, A.FAILED_CHANGE_PHONE_NUMBER, A.FAILED_CHANGE_PASSWORD_REQUEST, A.FAILED_CONNECTOR_PROVISIONING, A.FAILED_CHANGE_USERNAME, A.FAILED_DELEGATION, A.FAILED_DEVICE_ACTIVATION, A.FAILED_DEVICE_AUTHORIZATION_REQUEST, A.USER_CANCELED_DEVICE_CONFIRMATION, A.FAILED_USER_DELETION, A.FAILED_EXCHANGE_AUTHORIZATION_CODE_FOR_ACCESS_TOKEN, A.FAILED_EXCHANGE_ACCESS_TOKEN_FOR_CLIENT_CREDENTIALS, A.FAILED_EXCHANGE_CUSTOM_TOKEN, A.FAILED_EXCHANGE_DEVICE_CODE_FOR_ACCESS_TOKEN, A.FAILED_FEDERATED_LOGOUT, A.FAILED_EXCHANGE_NATIVE_SOCIAL_LOGIN, A.FAILED_EXCHANGE_PASSWORD_OOB_FOR_ACCESS_TOKEN, A.FAILED_EXCHANGE_PASSWORD_OTP_FOR_ACCESS_TOKEN, A.FAILED_EXCHANGE_PASSWORD_FOR_ACCESS_TOKEN, A.FAILED_EXCHANGE_PASSWORDLESS_OTP_FOR_ACCESS_TOKEN, A.FAILED_EXCHANGE_PASSWORD_MFA_RECOVERY_FOR_ACCESS_TOKEN, A.FAILED_EXCHANGE_ROTATING_REFRESH_TOKEN, A.FAILED_EXCHANGE_REFRESH_TOKEN_FOR_ACCESS_TOKEN, A.FAILED_EXCHANGE_SUBJECT_TOKEN_FOR_ACCESS_TOKEN, A.FAILED_HOOK, A.FAILED_IMPERSONATION, A.FAILED_INVITE_ACCEPT, A.FAILED_LOGOUT, A.FLOWS_EXECUTION_COMPLETED, A.FLOWS_EXECUTION_FAILED, A.FAILED_SENDING_NOTIFICATION, A.FORMS_SUBMISSION_FAILED, A.FORMS_SUBMISSION_SUCCEEDED, A.FAILED_LOGIN_INCORRECT_PASSWORD, A.FAILED_PUSHED_AUTHORIZATION_REQUEST, A.FAILED_POST_USER_REGISTRATION_HOOK, A.FAILED_SIGNUP, A.FAILED_SILENT_AUTH, A.FAILED_LOGIN_INVALID_EMAIL_USERNAME, A.FAILED_USERS_IMPORT, A.FAILED_VERIFICATION_EMAIL, A.FAILED_VERIFICATION_EMAIL_REQUEST, A.EMAIL_VERIFICATION_CONFIRMED, A.EMAIL_VERIFICATION_FAILED, A.MFA_AUTH_FAILED, A.MFA_AUTH_REJECTED, A.MFA_AUTH_SUCCESS, A.MFA_ENROLLMENT_COMPLETE, A.TOO_MANY_MFA_FAILURES, A.MFA_RECOVERY_FAILED, A.MFA_RECOVERY_RATE_LIMIT_EXCEED, A.MFA_RECOVERY_SUCCESS, A.MFA_EMAIL_SENT, A.EMAIL_VERIFICATION_SENT, A.EMAIL_VERIFICATION_SEND_FAILURE, A.PUSH_NOTIFICATION_SENT, A.ERROR_SENDING_MFA_PUSH_NOTIFICATION, A.MFA_SMS_SENT, A.ERROR_SENDING_MFA_SMS, A.MFA_VOICE_CALL_SUCCESS, A.MFA_VOICE_CALL_FAILED, A.SECOND_FACTOR_STARTED, A.MFA_ENROLL_STARTED, A.MFA_ENROLLMENT_FAILED, A.GUARDIAN_TENANT_UPDATE, A.UNENROLL_DEVICE_ACCOUNT, A.UPDATE_DEVICE_ACCOUNT, A.WEBAUTHN_CHALLENGE_FAILED, A.WEBAUTHN_ENROLLMENT_FAILED, A.FAILED_KMS_API_OPERATION, A.SUCCESS_KMS_API_OPERATION, A.KMS_KEY_STATE_CHANGED, A.TOO_MANY_CALLS_TO_DELEGATION, A.BLOCKED_IP_ADDRESS, A.BLOCKED_ACCOUNT_IP, A.BLOCKED_ACCOUNT_EMAIL, A.INFORMATION, A.MFA_REQUIRED, A.MANAGEMENT_API_READ_OPERATION, A.FAILED_AUTHENTICATION_METHOD_OPERATION_MY_ACCOUNT, A.SUCCESSFUL_AUTHENTICATION_METHOD_OPERATION_MY_ACCOUNT, A.FAILED_OIDC_BACKCHANNEL_LOGOUT, A.SUCCESSFUL_OIDC_BACKCHANNEL_LOGOUT, A.ORGANIZATION_MEMBER_ADDED, A.PASSKEY_CHALLENGE_FAILED, A.PASSKEY_CHALLENGE_STARTED, A.PRE_LOGIN_ASSESSMENT, A.BREACHED_PASSWORD, A.BREACHED_PASSWORD_ON_RESET, A.SUCCESS_RESOURCE_CLEANUP, A.RICH_CONSENTS_ACCESS_ERROR, A.SUCCESS_LOGIN, A.SUCCESS_API_OPERATION, A.FAILED_API_OPERATION, A.SUCCESS_CHANGE_EMAIL, A.SUCCESS_CROSS_ORIGIN_AUTHENTICATION, A.SUCCESS_CHANGE_PASSWORD, A.SUCCESS_CHANGE_PHONE_NUMBER, A.SUCCESS_CHANGE_PASSWORD_REQUEST, A.SUCCESS_CHANGE_USERNAME, A.SUCCESS_CREDENTIAL_VALIDATION, A.SUCCESS_DELEGATION, A.SUCCESS_USER_DELETION, A.SUCCESS_EXCHANGE_AUTHORIZATION_CODE_FOR_ACCESS_TOKEN, A.SUCCESS_EXCHANGE_ACCESS_TOKEN_FOR_CLIENT_CREDENTIALS, A.SUCCESS_EXCHANGE_CUSTOM_TOKEN, A.SUCCESS_EXCHANGE_DEVICE_CODE_FOR_ACCESS_TOKEN, A.SUCCESS_EXCHANGE_NATIVE_SOCIAL_LOGIN, A.SUCCESS_EXCHANGE_PASSWORD_OOB_FOR_ACCESS_TOKEN, A.SUCCESS_EXCHANGE_PASSWORD_OTP_FOR_ACCESS_TOKEN, A.SUCCESS_EXCHANGE_PASSWORDLESS_OTP_FOR_ACCESS_TOKEN, A.SUCCESS_EXCHANGE_PASSWORD_FOR_ACCESS_TOKEN, A.SUCCESS_EXCHANGE_PASSKEY_OOB_FOR_ACCESS_TOKEN, A.SUCCESS_EXCHANGE_PASSKEY_OTP_FOR_ACCESS_TOKEN, A.SUCCESS_EXCHANGE_PASSKEY_MFA_RECOVERY_FOR_ACCESS_TOKEN, A.SUCCESS_EXCHANGE_PASSWORD_MFA_RECOVERY_FOR_ACCESS_TOKEN, A.SUCCESS_EXCHANGE_REFRESH_TOKEN_FOR_ACCESS_TOKEN, A.SUCCESS_EXCHANGE_SUBJECT_TOKEN_FOR_ACCESS_TOKEN, A.SUCCESS_IMPERSONATION, A.SUCCESSFULLY_ACCEPTED_USER_INVITE, A.BREACHED_PASSWORD_ON_SIGNUP, A.SUCCESS_LOGOUT, A.SUCCESS_HOOK, A.SUCCESS_PASSWORD_MIGRATION, A.SUCCESS_REVOCATION, A.SUCCESS_SIGNUP, A.FAILED_SS_SSO_OPERATION, A.INFORMATION_FROM_SS_SSO_OPERATION, A.SUCCESS_SS_SSO_OPERATION, A.SUCCESS_SILENT_AUTH, A.SUCCESSFUL_SCIM_OPERATION, A.SUCCESSFULLY_IMPORTED_USERS, A.SUCCESS_VERIFICATION_EMAIL, A.SUCCESS_VERIFICATION_EMAIL_REQUEST, A.MAX_AMOUNT_OF_AUTHENTICATORS, A.USER_LOGIN_BLOCK_RELEASED, A.FAILED_UNIVERSAL_LOGOUT, A.SUCCESSFUL_UNIVERSAL_LOGOUT, A.WARNING_DURING_LOGIN, A.WARNING_SENDING_NOTIFICATION, A.WARNING_USER_MANAGEMENT, (() => {
|
|
1611
1615
|
let e = {};
|
|
1612
|
-
for (let [t, n] of Object.entries(
|
|
1616
|
+
for (let [t, n] of Object.entries(A)) t.startsWith("SUCCESS_") || t.startsWith("SUCCESSFUL_") || t.startsWith("SUCCESSFULLY_") || t.endsWith("_SUCCEEDED") || t.endsWith("_COMPLETED") ? e[n] = "success" : t.startsWith("FAILED_") || t.startsWith("ERROR_") || t.startsWith("BREACHED_") || t.startsWith("BLOCKED_") || t === "MFA_AUTH_FAILED" || t === "MFA_AUTH_REJECTED" || t === "MFA_RECOVERY_FAILED" || t === "MFA_ENROLLMENT_FAILED" || t === "EMAIL_VERIFICATION_FAILED" || t === "WEBAUTHN_CHALLENGE_FAILED" || t === "WEBAUTHN_ENROLLMENT_FAILED" || t === "PASSKEY_CHALLENGE_FAILED" || t === "FLOWS_EXECUTION_FAILED" || t === "FORMS_SUBMISSION_FAILED" || t === "CIBA_EXCHANGE_FAILED" || t === "CIBA_START_FAILED" || t === "ACTIONS_EXECUTION_FAILED" || t === "RICH_CONSENTS_ACCESS_ERROR" || t === "USER_CANCELED_DEVICE_CONFIRMATION" || t === "TOO_MANY_MFA_FAILURES" || t === "MFA_RECOVERY_RATE_LIMIT_EXCEED" || t === "API_LIMIT" || t === "MAX_AMOUNT_OF_AUTHENTICATORS" ? e[n] = "failure" : t.startsWith("WARNING_") || t === "API_LIMIT_WARNING" || t === "DEPRECATION_NOTICE" || t === "PRE_LOGIN_ASSESSMENT" ? e[n] = "warning" : t === "CODE_SENT" || t === "CODE_LINK_SENT" || t === "MFA_EMAIL_SENT" || t === "MFA_SMS_SENT" || t === "EMAIL_VERIFICATION_SENT" || t === "PUSH_NOTIFICATION_SENT" ? e[n] = "code_sent" : t === "INFORMATION" || t === "INFORMATION_FROM_SS_SSO_OPERATION" || t === "MANAGEMENT_API_READ_OPERATION" || t === "APPI" || t === "ACLS_SUMMARY" || t === "ORGANIZATION_MEMBER_ADDED" ? e[n] = "info" : e[n] = "other";
|
|
1613
1617
|
return e;
|
|
1614
1618
|
})();
|
|
1615
1619
|
var Yt = e.object({
|
|
@@ -1654,7 +1658,7 @@ var Zt = e.enum([
|
|
|
1654
1658
|
"splunk",
|
|
1655
1659
|
"datadog",
|
|
1656
1660
|
"sumo"
|
|
1657
|
-
]),
|
|
1661
|
+
]), j = e.enum([
|
|
1658
1662
|
"active",
|
|
1659
1663
|
"paused",
|
|
1660
1664
|
"suspended"
|
|
@@ -1665,13 +1669,13 @@ var Zt = e.enum([
|
|
|
1665
1669
|
e.object({
|
|
1666
1670
|
name: e.string(),
|
|
1667
1671
|
type: Zt,
|
|
1668
|
-
status:
|
|
1672
|
+
status: j.optional(),
|
|
1669
1673
|
sink: e.record(e.string(), e.unknown()),
|
|
1670
1674
|
filters: e.array(Qt).optional(),
|
|
1671
1675
|
isPriority: e.boolean().optional()
|
|
1672
1676
|
}).extend({
|
|
1673
1677
|
id: e.string(),
|
|
1674
|
-
status:
|
|
1678
|
+
status: j,
|
|
1675
1679
|
created_at: e.string().optional(),
|
|
1676
1680
|
updated_at: e.string().optional()
|
|
1677
1681
|
});
|
|
@@ -1744,7 +1748,7 @@ e.object({
|
|
|
1744
1748
|
created_at: e.string(),
|
|
1745
1749
|
updated_at: e.string()
|
|
1746
1750
|
});
|
|
1747
|
-
var
|
|
1751
|
+
var M = e.object({
|
|
1748
1752
|
initial_user_agent: e.string().describe("First user agent of the device from which this user logged in"),
|
|
1749
1753
|
initial_ip: e.string().describe("First IP address associated with this session"),
|
|
1750
1754
|
initial_asn: e.string().describe("First autonomous system number associated with this session"),
|
|
@@ -1759,7 +1763,7 @@ var j = e.object({
|
|
|
1759
1763
|
expires_at: e.string().optional(),
|
|
1760
1764
|
login_session_id: e.string(),
|
|
1761
1765
|
idle_expires_at: e.string().optional(),
|
|
1762
|
-
device:
|
|
1766
|
+
device: M.describe("Metadata related to the device used in the session"),
|
|
1763
1767
|
clients: e.array(e.string()).describe("List of client details for the session")
|
|
1764
1768
|
});
|
|
1765
1769
|
e.object({
|
|
@@ -1989,19 +1993,19 @@ var ln = e.object({
|
|
|
1989
1993
|
success: e.string(),
|
|
1990
1994
|
widget_background: e.string(),
|
|
1991
1995
|
widget_border: e.string()
|
|
1992
|
-
}),
|
|
1996
|
+
}), N = e.object({
|
|
1993
1997
|
bold: e.boolean(),
|
|
1994
1998
|
size: e.number()
|
|
1995
1999
|
}), dn = e.object({
|
|
1996
|
-
body_text:
|
|
1997
|
-
buttons_text:
|
|
2000
|
+
body_text: N,
|
|
2001
|
+
buttons_text: N,
|
|
1998
2002
|
font_url: e.string(),
|
|
1999
|
-
input_labels:
|
|
2000
|
-
links:
|
|
2003
|
+
input_labels: N,
|
|
2004
|
+
links: N,
|
|
2001
2005
|
links_style: e.enum(["normal", "underlined"]),
|
|
2002
2006
|
reference_text_size: e.number(),
|
|
2003
|
-
subtitle:
|
|
2004
|
-
title:
|
|
2007
|
+
subtitle: N,
|
|
2008
|
+
title: N
|
|
2005
2009
|
}), fn = e.object({
|
|
2006
2010
|
background_color: e.string(),
|
|
2007
2011
|
background_image_url: e.string(),
|
|
@@ -2044,27 +2048,27 @@ e.object({
|
|
|
2044
2048
|
password_first: e.boolean().default(!1),
|
|
2045
2049
|
webauthn_platform_first_factor: e.boolean()
|
|
2046
2050
|
});
|
|
2047
|
-
var
|
|
2051
|
+
var P = e.object({
|
|
2048
2052
|
hosts: e.array(e.string()).optional(),
|
|
2049
2053
|
methods: e.array(e.string()).optional(),
|
|
2050
2054
|
path: e.string().default("/*"),
|
|
2051
2055
|
headers: e.record(e.string(), e.string()).optional(),
|
|
2052
2056
|
query: e.record(e.string(), e.string()).optional()
|
|
2053
|
-
}),
|
|
2057
|
+
}), F = e.object({
|
|
2054
2058
|
type: e.string(),
|
|
2055
2059
|
options: e.record(e.string(), e.unknown()).default({})
|
|
2056
|
-
}),
|
|
2060
|
+
}), I = e.object({
|
|
2057
2061
|
id: e.string().optional(),
|
|
2058
2062
|
custom_domain_id: e.string(),
|
|
2059
2063
|
priority: e.number().int().default(100),
|
|
2060
|
-
match:
|
|
2061
|
-
handlers: e.array(
|
|
2062
|
-
}), mn =
|
|
2064
|
+
match: P,
|
|
2065
|
+
handlers: e.array(F).min(1)
|
|
2066
|
+
}), mn = I.extend({
|
|
2063
2067
|
id: e.string(),
|
|
2064
2068
|
tenant_id: e.string(),
|
|
2065
2069
|
created_at: e.string(),
|
|
2066
2070
|
updated_at: e.string()
|
|
2067
|
-
}), hn =
|
|
2071
|
+
}), hn = I.partial().omit({
|
|
2068
2072
|
id: !0,
|
|
2069
2073
|
custom_domain_id: !0
|
|
2070
2074
|
});
|
|
@@ -2107,7 +2111,7 @@ e.object({
|
|
|
2107
2111
|
expires_at: e.string().optional(),
|
|
2108
2112
|
idle_expires_at: e.string().optional(),
|
|
2109
2113
|
last_exchanged_at: e.string().optional(),
|
|
2110
|
-
device:
|
|
2114
|
+
device: M,
|
|
2111
2115
|
resource_servers: e.array(e.object({
|
|
2112
2116
|
audience: e.string(),
|
|
2113
2117
|
scopes: e.string()
|
|
@@ -2420,7 +2424,7 @@ var Nn = e.enum([
|
|
|
2420
2424
|
"webauthn-roaming",
|
|
2421
2425
|
"webauthn-platform",
|
|
2422
2426
|
"passkey"
|
|
2423
|
-
]),
|
|
2427
|
+
]), L = e.object({
|
|
2424
2428
|
user_id: e.string(),
|
|
2425
2429
|
type: Nn,
|
|
2426
2430
|
phone_number: e.string().optional(),
|
|
@@ -2433,7 +2437,7 @@ var Nn = e.enum([
|
|
|
2433
2437
|
friendly_name: e.string().optional(),
|
|
2434
2438
|
confirmed: e.boolean().default(!1)
|
|
2435
2439
|
});
|
|
2436
|
-
function
|
|
2440
|
+
function R(t, n) {
|
|
2437
2441
|
t.type === "phone" && !t.phone_number && n.addIssue({
|
|
2438
2442
|
code: e.ZodIssueCode.custom,
|
|
2439
2443
|
message: "phone_number is required when type is 'phone'",
|
|
@@ -2456,15 +2460,15 @@ function L(t, n) {
|
|
|
2456
2460
|
path: ["public_key"]
|
|
2457
2461
|
}));
|
|
2458
2462
|
}
|
|
2459
|
-
|
|
2463
|
+
L.superRefine(R), L.extend({
|
|
2460
2464
|
id: e.string(),
|
|
2461
2465
|
created_at: e.string(),
|
|
2462
2466
|
updated_at: e.string()
|
|
2463
|
-
}).superRefine(
|
|
2467
|
+
}).superRefine(R);
|
|
2464
2468
|
//#endregion
|
|
2465
2469
|
//#region src/data-plane/cache.ts
|
|
2466
2470
|
var Pn = 1e4;
|
|
2467
|
-
function
|
|
2471
|
+
function z(e, t, n) {
|
|
2468
2472
|
let r = typeof t == "number" ? {
|
|
2469
2473
|
freshTtlMs: t,
|
|
2470
2474
|
maxEntries: n
|
|
@@ -2520,7 +2524,7 @@ function R(e, t, n) {
|
|
|
2520
2524
|
}
|
|
2521
2525
|
//#endregion
|
|
2522
2526
|
//#region src/data-plane/registry.ts
|
|
2523
|
-
var
|
|
2527
|
+
var B = class {
|
|
2524
2528
|
definitions = /* @__PURE__ */ new Map();
|
|
2525
2529
|
bindings;
|
|
2526
2530
|
constructor(e = {}) {
|
|
@@ -2540,23 +2544,20 @@ var z = class {
|
|
|
2540
2544
|
return n.build(r.data, { bindings: this.bindings });
|
|
2541
2545
|
}
|
|
2542
2546
|
};
|
|
2543
|
-
function
|
|
2547
|
+
function V(e) {
|
|
2544
2548
|
return e;
|
|
2545
2549
|
}
|
|
2546
2550
|
//#endregion
|
|
2547
2551
|
//#region src/data-plane/handlers/util.ts
|
|
2548
|
-
var
|
|
2549
|
-
function
|
|
2550
|
-
e.set(
|
|
2552
|
+
var H = "__authhero_proxy_request__", U = "__authhero_proxy_tenant_id__", W = "__authhero_proxy_custom_domain_id__", G = "__authhero_proxy_domain__", Fn = "x-authhero-proxy-mutability-probe";
|
|
2553
|
+
function In(e, t) {
|
|
2554
|
+
e.set(H, t);
|
|
2551
2555
|
}
|
|
2552
2556
|
function K(e) {
|
|
2553
|
-
return e.get(
|
|
2557
|
+
return e.get(H) ?? e.req.raw;
|
|
2554
2558
|
}
|
|
2555
|
-
function
|
|
2556
|
-
e.set(
|
|
2557
|
-
}
|
|
2558
|
-
function Ln(e) {
|
|
2559
|
-
return e.get(H);
|
|
2559
|
+
function Ln(e, t) {
|
|
2560
|
+
e.set(U, t.tenant_id), e.set(W, t.custom_domain_id), e.set(G, t.domain);
|
|
2560
2561
|
}
|
|
2561
2562
|
function Rn(e) {
|
|
2562
2563
|
return e.get(U);
|
|
@@ -2564,14 +2565,17 @@ function Rn(e) {
|
|
|
2564
2565
|
function zn(e) {
|
|
2565
2566
|
return e.get(W);
|
|
2566
2567
|
}
|
|
2568
|
+
function Bn(e) {
|
|
2569
|
+
return e.get(G);
|
|
2570
|
+
}
|
|
2567
2571
|
function q(e, t) {
|
|
2568
2572
|
let n = K(e), r = new Headers(n.headers);
|
|
2569
|
-
t(r),
|
|
2573
|
+
t(r), In(e, new Request(n, { headers: r }));
|
|
2570
2574
|
}
|
|
2571
2575
|
function J(e) {
|
|
2572
2576
|
let t = e.res;
|
|
2573
2577
|
try {
|
|
2574
|
-
t.headers.append(
|
|
2578
|
+
t.headers.append(Fn, "1"), t.headers.delete(Fn);
|
|
2575
2579
|
return;
|
|
2576
2580
|
} catch {
|
|
2577
2581
|
e.res = new Response(t.body, {
|
|
@@ -2583,7 +2587,7 @@ function J(e) {
|
|
|
2583
2587
|
}
|
|
2584
2588
|
//#endregion
|
|
2585
2589
|
//#region src/data-plane/handlers/cors.ts
|
|
2586
|
-
var
|
|
2590
|
+
var Vn = e.object({
|
|
2587
2591
|
origins: e.array(e.string()).optional(),
|
|
2588
2592
|
allow_credentials: e.boolean().optional(),
|
|
2589
2593
|
allow_headers: e.array(e.string()).optional(),
|
|
@@ -2591,44 +2595,44 @@ var Bn = e.object({
|
|
|
2591
2595
|
expose_headers: e.array(e.string()).optional(),
|
|
2592
2596
|
max_age: e.number().int().optional()
|
|
2593
2597
|
}).refine((e) => !(e.allow_credentials && e.origins?.includes("*")), { message: "Cannot use wildcard origin (*) with allow_credentials" });
|
|
2594
|
-
function
|
|
2598
|
+
function Hn(e, t) {
|
|
2595
2599
|
let n = new Headers(), r = e.origins ?? ["*"], i = r.includes("*");
|
|
2596
2600
|
return i && !e.allow_credentials ? n.set("Access-Control-Allow-Origin", "*") : t && (i || r.includes(t)) && (n.set("Access-Control-Allow-Origin", t), n.append("Vary", "Origin")), e.allow_credentials && n.set("Access-Control-Allow-Credentials", "true"), e.allow_methods?.length && n.set("Access-Control-Allow-Methods", e.allow_methods.join(", ")), e.allow_headers?.length && n.set("Access-Control-Allow-Headers", e.allow_headers.join(", ")), e.expose_headers?.length && n.set("Access-Control-Expose-Headers", e.expose_headers.join(", ")), e.max_age !== void 0 && n.set("Access-Control-Max-Age", String(e.max_age)), n;
|
|
2597
2601
|
}
|
|
2598
|
-
var
|
|
2602
|
+
var Un = V({
|
|
2599
2603
|
type: "cors",
|
|
2600
|
-
optionsSchema:
|
|
2604
|
+
optionsSchema: Vn,
|
|
2601
2605
|
build(e) {
|
|
2602
2606
|
return async (t, n) => {
|
|
2603
2607
|
let r = t.req.header("origin") ?? null;
|
|
2604
2608
|
if (t.req.method === "OPTIONS" && r !== null && t.req.header("access-control-request-method") !== void 0) {
|
|
2605
|
-
let t =
|
|
2609
|
+
let t = Hn(e, r);
|
|
2606
2610
|
return new Response(null, {
|
|
2607
2611
|
status: 204,
|
|
2608
2612
|
headers: t
|
|
2609
2613
|
});
|
|
2610
2614
|
}
|
|
2611
2615
|
await n();
|
|
2612
|
-
let i =
|
|
2616
|
+
let i = Hn(e, r);
|
|
2613
2617
|
J(t), i.forEach((e, n) => {
|
|
2614
2618
|
n.toLowerCase() === "vary" ? t.res.headers.append(n, e) : t.res.headers.set(n, e);
|
|
2615
2619
|
});
|
|
2616
2620
|
};
|
|
2617
2621
|
}
|
|
2618
|
-
}),
|
|
2622
|
+
}), Wn = e.object({
|
|
2619
2623
|
username: e.string(),
|
|
2620
2624
|
password: e.string(),
|
|
2621
2625
|
realm: e.string().optional()
|
|
2622
2626
|
});
|
|
2623
|
-
function
|
|
2627
|
+
function Gn(e, t) {
|
|
2624
2628
|
let n = `${e}:${t}`;
|
|
2625
2629
|
return typeof btoa == "function" ? btoa(n) : Buffer.from(n, "utf-8").toString("base64");
|
|
2626
2630
|
}
|
|
2627
|
-
var
|
|
2631
|
+
var Kn = V({
|
|
2628
2632
|
type: "basic_auth",
|
|
2629
|
-
optionsSchema:
|
|
2633
|
+
optionsSchema: Wn,
|
|
2630
2634
|
build(e) {
|
|
2631
|
-
let t =
|
|
2635
|
+
let t = Gn(e.username, e.password), n = (e.realm ?? "Restricted").replace(/["\\\r\n]/g, "");
|
|
2632
2636
|
return async (e, r) => {
|
|
2633
2637
|
let i = e.req.header("authorization");
|
|
2634
2638
|
if (i) {
|
|
@@ -2644,7 +2648,7 @@ var Wn = B({
|
|
|
2644
2648
|
});
|
|
2645
2649
|
};
|
|
2646
2650
|
}
|
|
2647
|
-
}),
|
|
2651
|
+
}), qn = V({
|
|
2648
2652
|
type: "headers",
|
|
2649
2653
|
optionsSchema: e.object({
|
|
2650
2654
|
request: e.record(e.string(), e.string()).optional(),
|
|
@@ -2659,7 +2663,7 @@ var Wn = B({
|
|
|
2659
2663
|
}), await n(), (e.response || e.remove_response) && (J(t), e.remove_response?.forEach((e) => t.res.headers.delete(e)), e.response)) for (let [n, r] of Object.entries(e.response)) t.res.headers.set(n, r);
|
|
2660
2664
|
};
|
|
2661
2665
|
}
|
|
2662
|
-
}),
|
|
2666
|
+
}), Jn = V({
|
|
2663
2667
|
type: "cache",
|
|
2664
2668
|
optionsSchema: e.object({ ttl_seconds: e.number().int().positive() }),
|
|
2665
2669
|
build(e) {
|
|
@@ -2670,7 +2674,7 @@ var Wn = B({
|
|
|
2670
2674
|
}
|
|
2671
2675
|
};
|
|
2672
2676
|
}
|
|
2673
|
-
}),
|
|
2677
|
+
}), Yn = V({
|
|
2674
2678
|
type: "forwarded_headers",
|
|
2675
2679
|
optionsSchema: e.object({
|
|
2676
2680
|
client_ip_header: e.string().default("cf-connecting-ip"),
|
|
@@ -2687,33 +2691,33 @@ var Wn = B({
|
|
|
2687
2691
|
}), await n();
|
|
2688
2692
|
};
|
|
2689
2693
|
}
|
|
2690
|
-
}),
|
|
2691
|
-
function
|
|
2694
|
+
}), Xn = e.object({ upstream_host: e.string().optional() });
|
|
2695
|
+
function Zn(e) {
|
|
2692
2696
|
return e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
2693
2697
|
}
|
|
2694
|
-
function
|
|
2698
|
+
function Qn(e) {
|
|
2695
2699
|
if (typeof e.getSetCookie == "function") return e.getSetCookie();
|
|
2696
2700
|
let t = [];
|
|
2697
2701
|
return e.forEach((e, n) => {
|
|
2698
2702
|
n.toLowerCase() === "set-cookie" && t.push(e);
|
|
2699
2703
|
}), t;
|
|
2700
2704
|
}
|
|
2701
|
-
var
|
|
2705
|
+
var $n = V({
|
|
2702
2706
|
type: "rewrite_cookies",
|
|
2703
|
-
optionsSchema:
|
|
2707
|
+
optionsSchema: Xn,
|
|
2704
2708
|
build(e) {
|
|
2705
2709
|
return async (t, n) => {
|
|
2706
2710
|
await n();
|
|
2707
2711
|
let r = new URL(t.req.url).hostname, i = e.upstream_host ?? t.get("__proxy_upstream_host__");
|
|
2708
2712
|
if (!i) return;
|
|
2709
|
-
let a =
|
|
2713
|
+
let a = Qn(t.res.headers);
|
|
2710
2714
|
if (a.length === 0) return;
|
|
2711
|
-
let o =
|
|
2715
|
+
let o = Zn(i), s = RegExp(`(?:^|;\\s*)Domain=\\.?${o}(?=;|$)`, "i");
|
|
2712
2716
|
J(t), t.res.headers.delete("set-cookie");
|
|
2713
2717
|
for (let e of a) t.res.headers.append("set-cookie", e.replace(s, `Domain=${r}`));
|
|
2714
2718
|
};
|
|
2715
2719
|
}
|
|
2716
|
-
}),
|
|
2720
|
+
}), er = V({
|
|
2717
2721
|
type: "rewrite_location",
|
|
2718
2722
|
optionsSchema: e.object({ upstream_origin: e.string().optional() }),
|
|
2719
2723
|
build(e) {
|
|
@@ -2736,7 +2740,7 @@ var Zn = B({
|
|
|
2736
2740
|
J(t), t.res.headers.set("location", c);
|
|
2737
2741
|
};
|
|
2738
2742
|
}
|
|
2739
|
-
}),
|
|
2743
|
+
}), tr = new Set([
|
|
2740
2744
|
"connection",
|
|
2741
2745
|
"keep-alive",
|
|
2742
2746
|
"proxy-authenticate",
|
|
@@ -2745,24 +2749,24 @@ var Zn = B({
|
|
|
2745
2749
|
"trailers",
|
|
2746
2750
|
"transfer-encoding",
|
|
2747
2751
|
"upgrade"
|
|
2748
|
-
]),
|
|
2752
|
+
]), nr = 3e4, rr = e.object({
|
|
2749
2753
|
upstream_url: e.string(),
|
|
2750
2754
|
preserve_host: e.boolean().default(!1),
|
|
2751
2755
|
timeout_ms: e.number().int().positive().optional()
|
|
2752
2756
|
});
|
|
2753
|
-
function
|
|
2757
|
+
function ir(e, t) {
|
|
2754
2758
|
return e === "" || e === "/" ? t : `${e.endsWith("/") ? e.slice(0, -1) : e}${t.startsWith("/") ? t : `/${t}`}`;
|
|
2755
2759
|
}
|
|
2756
|
-
function
|
|
2760
|
+
function ar(e) {
|
|
2757
2761
|
return e !== "GET" && e !== "HEAD";
|
|
2758
2762
|
}
|
|
2759
|
-
function
|
|
2763
|
+
function or(e, t) {
|
|
2760
2764
|
let n = new URL(t.url), r = new URL(e.upstream_url);
|
|
2761
|
-
r.pathname =
|
|
2765
|
+
r.pathname = ir(r.pathname, n.pathname), r.search = n.search;
|
|
2762
2766
|
let i = new Headers(t.headers);
|
|
2763
|
-
for (let e of
|
|
2767
|
+
for (let e of tr) i.delete(e);
|
|
2764
2768
|
e.preserve_host || i.set("host", r.host), i.has("x-forwarded-host") || i.set("x-forwarded-host", n.host), i.has("x-forwarded-proto") || i.set("x-forwarded-proto", n.protocol.replace(":", ""));
|
|
2765
|
-
let a =
|
|
2769
|
+
let a = ar(t.method) ? t.body : void 0, o = {
|
|
2766
2770
|
method: t.method,
|
|
2767
2771
|
headers: i,
|
|
2768
2772
|
body: a,
|
|
@@ -2773,13 +2777,13 @@ function ir(e, t) {
|
|
|
2773
2777
|
init: o
|
|
2774
2778
|
};
|
|
2775
2779
|
}
|
|
2776
|
-
var
|
|
2780
|
+
var Y = V({
|
|
2777
2781
|
type: "http",
|
|
2778
|
-
optionsSchema:
|
|
2782
|
+
optionsSchema: rr,
|
|
2779
2783
|
build(e) {
|
|
2780
|
-
let t = e.timeout_ms ??
|
|
2784
|
+
let t = e.timeout_ms ?? nr;
|
|
2781
2785
|
return async (n) => {
|
|
2782
|
-
let { target: r, init: i } =
|
|
2786
|
+
let { target: r, init: i } = or(e, K(n));
|
|
2783
2787
|
n.set("__proxy_upstream_host__", r.hostname), n.set("__proxy_upstream_origin__", `${r.protocol}//${r.host}`);
|
|
2784
2788
|
let a = new AbortController(), o = setTimeout(() => a.abort(), t);
|
|
2785
2789
|
try {
|
|
@@ -2795,56 +2799,56 @@ var ar = B({
|
|
|
2795
2799
|
}
|
|
2796
2800
|
};
|
|
2797
2801
|
}
|
|
2798
|
-
}),
|
|
2802
|
+
}), sr = e.object({
|
|
2799
2803
|
binding: e.string(),
|
|
2800
2804
|
upstream_url: e.string().optional(),
|
|
2801
2805
|
preserve_host: e.boolean().default(!0)
|
|
2802
2806
|
});
|
|
2803
|
-
function
|
|
2807
|
+
function cr(e) {
|
|
2804
2808
|
return typeof e == "object" && !!e && typeof e.fetch == "function";
|
|
2805
2809
|
}
|
|
2806
|
-
var
|
|
2810
|
+
var lr = V({
|
|
2807
2811
|
type: "service_binding",
|
|
2808
|
-
optionsSchema:
|
|
2812
|
+
optionsSchema: sr,
|
|
2809
2813
|
build(e, t) {
|
|
2810
2814
|
let n = t.bindings[e.binding];
|
|
2811
|
-
if (!
|
|
2815
|
+
if (!cr(n)) throw Error(`Service binding "${e.binding}" is not configured or is not a Fetcher`);
|
|
2812
2816
|
let r = e.upstream_url ?? `https://${e.binding}.binding.invalid/`;
|
|
2813
2817
|
return async (t) => {
|
|
2814
|
-
let i = K(t), { target: a, init: o } =
|
|
2818
|
+
let i = K(t), { target: a, init: o } = or({
|
|
2815
2819
|
upstream_url: r,
|
|
2816
2820
|
preserve_host: e.preserve_host
|
|
2817
2821
|
}, i);
|
|
2818
2822
|
return t.set("__proxy_upstream_host__", a.hostname), t.set("__proxy_upstream_origin__", `${a.protocol}//${a.host}`), n.fetch(new Request(a.toString(), o));
|
|
2819
2823
|
};
|
|
2820
2824
|
}
|
|
2821
|
-
}),
|
|
2825
|
+
}), ur = e.object({
|
|
2822
2826
|
binding: e.string(),
|
|
2823
2827
|
script_name: e.string(),
|
|
2824
2828
|
cpu_ms: e.number().int().positive().optional(),
|
|
2825
2829
|
subrequests: e.number().int().positive().optional()
|
|
2826
2830
|
});
|
|
2827
|
-
function
|
|
2831
|
+
function dr(e) {
|
|
2828
2832
|
return typeof e == "object" && !!e && typeof e.get == "function";
|
|
2829
2833
|
}
|
|
2830
2834
|
var X = /\{(tenant_id|custom_domain_id|domain|host)\}/g;
|
|
2831
|
-
function
|
|
2835
|
+
function fr(e) {
|
|
2832
2836
|
return X.lastIndex = 0, X.test(e);
|
|
2833
2837
|
}
|
|
2834
|
-
var
|
|
2838
|
+
var pr = V({
|
|
2835
2839
|
type: "dispatch_namespace",
|
|
2836
|
-
optionsSchema:
|
|
2840
|
+
optionsSchema: ur,
|
|
2837
2841
|
build(e, t) {
|
|
2838
2842
|
let n = t.bindings[e.binding];
|
|
2839
|
-
if (!
|
|
2840
|
-
let r =
|
|
2843
|
+
if (!dr(n)) throw Error(`Dispatch namespace binding "${e.binding}" is not configured or does not expose .get()`);
|
|
2844
|
+
let r = fr(e.script_name), i = e.cpu_ms || e.subrequests ? { limits: {
|
|
2841
2845
|
...e.cpu_ms ? { cpuMs: e.cpu_ms } : {},
|
|
2842
2846
|
...e.subrequests ? { subrequests: e.subrequests } : {}
|
|
2843
2847
|
} } : void 0;
|
|
2844
2848
|
return async (t) => {
|
|
2845
2849
|
let a = e.script_name;
|
|
2846
2850
|
if (r) {
|
|
2847
|
-
let n =
|
|
2851
|
+
let n = Rn(t), r = zn(t), i = Bn(t), o = t.req.header("host") ?? t.req.header("x-forwarded-host") ?? "";
|
|
2848
2852
|
if (a = a.replace(X, (e, t) => {
|
|
2849
2853
|
switch (t) {
|
|
2850
2854
|
case "tenant_id": return n ?? "";
|
|
@@ -2859,7 +2863,7 @@ var fr = B({
|
|
|
2859
2863
|
return o.fetch(s);
|
|
2860
2864
|
};
|
|
2861
2865
|
}
|
|
2862
|
-
}),
|
|
2866
|
+
}), mr = V({
|
|
2863
2867
|
type: "redirect",
|
|
2864
2868
|
optionsSchema: e.object({
|
|
2865
2869
|
upstream_url: e.string().refine((e) => {
|
|
@@ -2888,7 +2892,7 @@ var fr = B({
|
|
|
2888
2892
|
});
|
|
2889
2893
|
};
|
|
2890
2894
|
}
|
|
2891
|
-
}),
|
|
2895
|
+
}), hr = V({
|
|
2892
2896
|
type: "static",
|
|
2893
2897
|
optionsSchema: e.object({
|
|
2894
2898
|
status: e.number().int().default(200),
|
|
@@ -2908,15 +2912,15 @@ var fr = B({
|
|
|
2908
2912
|
});
|
|
2909
2913
|
//#endregion
|
|
2910
2914
|
//#region src/data-plane/handlers/index.ts
|
|
2911
|
-
function
|
|
2912
|
-
e.add(
|
|
2915
|
+
function gr(e) {
|
|
2916
|
+
e.add(Un).add(Kn).add(qn).add(Jn).add(Yn).add($n).add(er).add(Y).add(lr).add(pr).add(mr).add(hr);
|
|
2913
2917
|
}
|
|
2914
2918
|
//#endregion
|
|
2915
2919
|
//#region src/data-plane/matcher.ts
|
|
2916
|
-
function
|
|
2920
|
+
function _r(e) {
|
|
2917
2921
|
return [...e].sort((e, t) => e.priority === t.priority ? e.created_at.localeCompare(t.created_at) : e.priority - t.priority);
|
|
2918
2922
|
}
|
|
2919
|
-
function
|
|
2923
|
+
function vr(e, t) {
|
|
2920
2924
|
let n = e.toLowerCase(), r = t.toLowerCase();
|
|
2921
2925
|
if (n === r) return !0;
|
|
2922
2926
|
if (n.startsWith("*.")) {
|
|
@@ -2925,13 +2929,13 @@ function _r(e, t) {
|
|
|
2925
2929
|
}
|
|
2926
2930
|
return !1;
|
|
2927
2931
|
}
|
|
2928
|
-
function
|
|
2929
|
-
return !e || e.length === 0 ? !0 : e.some((e) =>
|
|
2932
|
+
function yr(e, t) {
|
|
2933
|
+
return !e || e.length === 0 ? !0 : e.some((e) => vr(e, t));
|
|
2930
2934
|
}
|
|
2931
|
-
function
|
|
2935
|
+
function br(e) {
|
|
2932
2936
|
let t = (e.headers ? Object.entries(e.headers) : []).map(([e, t]) => [e.toLowerCase(), new RegExp(t)]), n = (e.query ? Object.entries(e.query) : []).map(([e, t]) => [e, new RegExp(t)]), r = e.hosts;
|
|
2933
2937
|
return async (e, i) => {
|
|
2934
|
-
if (r && !
|
|
2938
|
+
if (r && !yr(r, e.req.header("host") ?? "")) return new Response("No matching route", { status: 404 });
|
|
2935
2939
|
for (let [n, r] of t) {
|
|
2936
2940
|
let t = e.req.header(n);
|
|
2937
2941
|
if (t === void 0 || !r.test(t)) return new Response("No matching route", { status: 404 });
|
|
@@ -2948,7 +2952,7 @@ function yr(e) {
|
|
|
2948
2952
|
}
|
|
2949
2953
|
//#endregion
|
|
2950
2954
|
//#region src/data-plane/compile.ts
|
|
2951
|
-
var
|
|
2955
|
+
var xr = [
|
|
2952
2956
|
"GET",
|
|
2953
2957
|
"POST",
|
|
2954
2958
|
"PUT",
|
|
@@ -2957,58 +2961,59 @@ var br = [
|
|
|
2957
2961
|
"OPTIONS",
|
|
2958
2962
|
"HEAD"
|
|
2959
2963
|
];
|
|
2960
|
-
function
|
|
2964
|
+
function Sr(e, n, r) {
|
|
2961
2965
|
let i = new t();
|
|
2962
2966
|
r && i.use("*", async (e, t) => {
|
|
2963
|
-
|
|
2967
|
+
Ln(e, r), await t();
|
|
2964
2968
|
});
|
|
2965
|
-
let a =
|
|
2969
|
+
let a = _r(e);
|
|
2966
2970
|
for (let e of a) {
|
|
2967
2971
|
let t = [];
|
|
2968
|
-
t.push(
|
|
2972
|
+
t.push(br(e.match));
|
|
2969
2973
|
for (let r of e.handlers) t.push(n.build(r.type, r.options));
|
|
2970
|
-
let r = e.match.methods?.length ? e.match.methods.map((e) => e.toUpperCase()) :
|
|
2974
|
+
let r = e.match.methods?.length ? e.match.methods.map((e) => e.toUpperCase()) : xr, a = e.match.path || "/*";
|
|
2971
2975
|
i.on(r, [a], ...t);
|
|
2972
2976
|
}
|
|
2973
2977
|
return i.all("*", (e) => e.text("No matching route", 404)), i;
|
|
2974
2978
|
}
|
|
2975
2979
|
//#endregion
|
|
2976
2980
|
//#region src/data-plane/router.ts
|
|
2977
|
-
function Sr(e) {
|
|
2978
|
-
return e.resolver ? e.resolver : e.cache ? R(e.data, e.cache) : R(e.data, e.cacheTtlMs ?? 3e4);
|
|
2979
|
-
}
|
|
2980
2981
|
function Cr(e) {
|
|
2982
|
+
return e.resolver ? e.resolver : e.cache ? z(e.data, e.cache) : z(e.data, e.cacheTtlMs ?? 3e4);
|
|
2983
|
+
}
|
|
2984
|
+
function wr(e) {
|
|
2981
2985
|
if (e.registry) return e.registry;
|
|
2982
|
-
let t = new
|
|
2983
|
-
return
|
|
2986
|
+
let t = new B(e.bindings ?? {});
|
|
2987
|
+
return gr(t), t;
|
|
2984
2988
|
}
|
|
2985
2989
|
function Z(e) {
|
|
2986
|
-
let t =
|
|
2990
|
+
let t = Cr(e), n = wr(e), r = /* @__PURE__ */ new WeakMap();
|
|
2987
2991
|
return async (e) => {
|
|
2988
2992
|
let i = e.req.header("host") ?? e.req.header("x-forwarded-host");
|
|
2989
2993
|
if (!i) return e.text("Missing host", 400);
|
|
2990
2994
|
let a = await t.resolveHost(i);
|
|
2991
2995
|
if (!a) return e.text("Unknown host", 404);
|
|
2992
2996
|
let o = r.get(a);
|
|
2993
|
-
return o || (o =
|
|
2997
|
+
return o || (o = Sr(a.routes, n, {
|
|
2994
2998
|
tenant_id: a.tenant_id,
|
|
2995
2999
|
custom_domain_id: a.custom_domain_id,
|
|
2996
3000
|
domain: a.domain
|
|
2997
3001
|
}), r.set(a, o)), o.fetch(e.req.raw);
|
|
2998
3002
|
};
|
|
2999
3003
|
}
|
|
3000
|
-
function
|
|
3004
|
+
function Tr(e) {
|
|
3001
3005
|
let n = new t();
|
|
3002
3006
|
return n.all("*", Z(e)), n;
|
|
3003
3007
|
}
|
|
3004
3008
|
//#endregion
|
|
3005
3009
|
//#region src/app.ts
|
|
3006
|
-
function
|
|
3010
|
+
function Er(e) {
|
|
3007
3011
|
let n = new t();
|
|
3008
3012
|
return n.all("*", Z({
|
|
3009
3013
|
data: e.data,
|
|
3010
3014
|
cacheTtlMs: e.cacheTtlMs,
|
|
3011
3015
|
cache: e.cache,
|
|
3016
|
+
resolver: e.resolver,
|
|
3012
3017
|
registry: e.registry,
|
|
3013
3018
|
bindings: e.bindings
|
|
3014
3019
|
})), n;
|
|
@@ -3018,11 +3023,11 @@ function Tr(e) {
|
|
|
3018
3023
|
function Q(e, t) {
|
|
3019
3024
|
return new Request(`https://proxy-cache.internal/${encodeURIComponent(e)}/hosts/${encodeURIComponent(t.toLowerCase())}`, { method: "GET" });
|
|
3020
3025
|
}
|
|
3021
|
-
function
|
|
3026
|
+
function Dr() {
|
|
3022
3027
|
return globalThis.caches?.default;
|
|
3023
3028
|
}
|
|
3024
|
-
function
|
|
3025
|
-
let t = e.cache ??
|
|
3029
|
+
function Or(e) {
|
|
3030
|
+
let t = e.cache ?? Dr();
|
|
3026
3031
|
if (!t) return e.upstream;
|
|
3027
3032
|
let n = e.namespace ?? "authhero-proxy", r = e.cacheTtlSeconds ?? 60, i = e.negativeCacheTtlSeconds ?? 10, a = e.waitUntil;
|
|
3028
3033
|
return { async resolveHost(o) {
|
|
@@ -3037,15 +3042,57 @@ function Dr(e) {
|
|
|
3037
3042
|
return a ? a(f) : await f.catch(() => void 0), l;
|
|
3038
3043
|
} };
|
|
3039
3044
|
}
|
|
3040
|
-
function
|
|
3045
|
+
function kr(e, t) {
|
|
3041
3046
|
return Q(e, t);
|
|
3042
3047
|
}
|
|
3043
3048
|
//#endregion
|
|
3049
|
+
//#region src/data-plane/cache-adapter-cache.ts
|
|
3050
|
+
function Ar(e) {
|
|
3051
|
+
let { upstream: t, cache: n, freshTtlMs: r, staleTtlMs: i = 0, negativeTtlMs: a = r, keyPrefix: o = "authhero-proxy-host", waitUntil: s } = e, c = /* @__PURE__ */ new Map();
|
|
3052
|
+
function l(e) {
|
|
3053
|
+
return `${o}:${e.toLowerCase()}`;
|
|
3054
|
+
}
|
|
3055
|
+
async function u(e) {
|
|
3056
|
+
let o = c.get(e);
|
|
3057
|
+
if (o) return o;
|
|
3058
|
+
let s = (async () => {
|
|
3059
|
+
try {
|
|
3060
|
+
let o = await t.resolveHost(e), s = Date.now(), c = o === null ? a : r, u = o === null ? 0 : i, d = {
|
|
3061
|
+
value: o,
|
|
3062
|
+
freshUntilMs: s + c,
|
|
3063
|
+
staleUntilMs: s + c + u
|
|
3064
|
+
}, f = Math.max(1, Math.ceil((c + u) / 1e3));
|
|
3065
|
+
return await n.set(l(e), d, f), o;
|
|
3066
|
+
} finally {
|
|
3067
|
+
c.delete(e);
|
|
3068
|
+
}
|
|
3069
|
+
})();
|
|
3070
|
+
return c.set(e, s), s;
|
|
3071
|
+
}
|
|
3072
|
+
return { async resolveHost(e) {
|
|
3073
|
+
let t = l(e), r = await n.get(t), i = Date.now();
|
|
3074
|
+
if (r && typeof r.freshUntilMs == "number") {
|
|
3075
|
+
if (r.freshUntilMs > i) return r.value;
|
|
3076
|
+
if (r.staleUntilMs > i) {
|
|
3077
|
+
if (!c.has(e)) {
|
|
3078
|
+
let t = u(e).catch(() => void 0);
|
|
3079
|
+
s && s(t);
|
|
3080
|
+
}
|
|
3081
|
+
return r.value;
|
|
3082
|
+
}
|
|
3083
|
+
}
|
|
3084
|
+
return u(e);
|
|
3085
|
+
} };
|
|
3086
|
+
}
|
|
3087
|
+
function jr(e, t) {
|
|
3088
|
+
return `${e}:${t.toLowerCase()}`;
|
|
3089
|
+
}
|
|
3090
|
+
//#endregion
|
|
3044
3091
|
//#region src/static/index.ts
|
|
3045
3092
|
function $() {
|
|
3046
3093
|
throw Error("Static proxy adapter is read-only; configure routes at init time");
|
|
3047
3094
|
}
|
|
3048
|
-
function
|
|
3095
|
+
function Mr(e, t, n, r, i, a) {
|
|
3049
3096
|
return {
|
|
3050
3097
|
id: e.id ?? `${n}:${t}`,
|
|
3051
3098
|
tenant_id: r,
|
|
@@ -3060,10 +3107,10 @@ function kr(e, t, n, r, i, a) {
|
|
|
3060
3107
|
updated_at: e.updated_at ?? a
|
|
3061
3108
|
};
|
|
3062
3109
|
}
|
|
3063
|
-
function
|
|
3110
|
+
function Nr(e) {
|
|
3064
3111
|
let t = (/* @__PURE__ */ new Date()).toISOString(), n = e.defaultTenantId ?? "static", r = /* @__PURE__ */ new Map();
|
|
3065
3112
|
for (let [i, a] of Object.entries(e.hosts)) {
|
|
3066
|
-
let e = i.toLowerCase(), o = Array.isArray(a) ? { routes: a } : a, s = o.tenant_id ?? n, c = o.custom_domain_id ?? e, l = o.routes.map((n, r) =>
|
|
3113
|
+
let e = i.toLowerCase(), o = Array.isArray(a) ? { routes: a } : a, s = o.tenant_id ?? n, c = o.custom_domain_id ?? e, l = o.routes.map((n, r) => Mr(n, r, e, s, c, t)).sort((e, t) => e.priority - t.priority);
|
|
3067
3114
|
r.set(e, {
|
|
3068
3115
|
tenant_id: s,
|
|
3069
3116
|
custom_domain_id: c,
|
|
@@ -3107,7 +3154,7 @@ function Ar(e) {
|
|
|
3107
3154
|
}
|
|
3108
3155
|
};
|
|
3109
3156
|
}
|
|
3110
|
-
function
|
|
3157
|
+
function Pr(e, t = {}) {
|
|
3111
3158
|
return {
|
|
3112
3159
|
priority: t.priority,
|
|
3113
3160
|
match: { path: t.path ?? "/*" },
|
|
@@ -3121,8 +3168,11 @@ function jr(e, t = {}) {
|
|
|
3121
3168
|
};
|
|
3122
3169
|
}
|
|
3123
3170
|
//#endregion
|
|
3171
|
+
//#region src/constants.ts
|
|
3172
|
+
var Fr = "proxy:resolve_host";
|
|
3173
|
+
//#endregion
|
|
3124
3174
|
//#region src/http-adapter/index.ts
|
|
3125
|
-
function
|
|
3175
|
+
function Ir() {
|
|
3126
3176
|
let e = () => {
|
|
3127
3177
|
throw Error("HTTP proxy adapter does not expose write access to proxy_routes; mutate via the control-plane management API");
|
|
3128
3178
|
};
|
|
@@ -3144,41 +3194,42 @@ function Mr() {
|
|
|
3144
3194
|
}
|
|
3145
3195
|
};
|
|
3146
3196
|
}
|
|
3147
|
-
function
|
|
3148
|
-
let t = e.fetch ?? fetch, n = e.baseUrl.replace(/\/+$/, ""), r = e.resolveHostPath ?? "/api/v2/proxy/control-plane/hosts/", i = e.audience ?? `${n}/api/v2/`, a = e.tokenRefreshSkewSeconds ?? 60,
|
|
3149
|
-
function
|
|
3150
|
-
let t = new AbortController(), n = setTimeout(() => t.abort(),
|
|
3197
|
+
function Lr(e) {
|
|
3198
|
+
let t = e.fetch ?? fetch, n = e.baseUrl.replace(/\/+$/, ""), r = e.resolveHostPath ?? "/api/v2/proxy/control-plane/hosts/", i = e.audience ?? `${n}/api/v2/`, a = e.scope ?? "proxy:resolve_host", o = e.tokenRefreshSkewSeconds ?? 60, s = e.timeoutMs ?? 5e3;
|
|
3199
|
+
function c(e) {
|
|
3200
|
+
let t = new AbortController(), n = setTimeout(() => t.abort(), s);
|
|
3151
3201
|
return e(t.signal).finally(() => clearTimeout(n));
|
|
3152
3202
|
}
|
|
3153
|
-
let
|
|
3154
|
-
async function
|
|
3155
|
-
let r = await
|
|
3203
|
+
let l = null, u = null;
|
|
3204
|
+
async function d() {
|
|
3205
|
+
let r = await c((r) => t(`${n}/oauth/token`, {
|
|
3156
3206
|
method: "POST",
|
|
3157
3207
|
headers: { "content-type": "application/json" },
|
|
3158
3208
|
body: JSON.stringify({
|
|
3159
3209
|
grant_type: "client_credentials",
|
|
3160
3210
|
client_id: e.clientId,
|
|
3161
3211
|
client_secret: e.clientSecret,
|
|
3162
|
-
audience: i
|
|
3212
|
+
audience: i,
|
|
3213
|
+
scope: a
|
|
3163
3214
|
}),
|
|
3164
3215
|
signal: r
|
|
3165
3216
|
}));
|
|
3166
3217
|
if (!r.ok) throw Error(`Proxy adapter token request failed: ${r.status} ${await r.text().catch(() => "")}`);
|
|
3167
|
-
let
|
|
3168
|
-
return
|
|
3169
|
-
value:
|
|
3170
|
-
expires_at: Date.now() + (
|
|
3171
|
-
},
|
|
3218
|
+
let s = await r.json(), u = s.expires_in ?? 3600;
|
|
3219
|
+
return l = {
|
|
3220
|
+
value: s.access_token,
|
|
3221
|
+
expires_at: Date.now() + (u - o) * 1e3
|
|
3222
|
+
}, s.access_token;
|
|
3172
3223
|
}
|
|
3173
|
-
async function
|
|
3174
|
-
return
|
|
3175
|
-
|
|
3176
|
-
}),
|
|
3224
|
+
async function f() {
|
|
3225
|
+
return l && l.expires_at > Date.now() ? l.value : u || (u = d().finally(() => {
|
|
3226
|
+
u = null;
|
|
3227
|
+
}), u);
|
|
3177
3228
|
}
|
|
3178
3229
|
return {
|
|
3179
|
-
proxyRoutes:
|
|
3230
|
+
proxyRoutes: Ir(),
|
|
3180
3231
|
async resolveHost(e) {
|
|
3181
|
-
let i = await
|
|
3232
|
+
let i = await f(), a = `${n}${r}${encodeURIComponent(e.toLowerCase())}`, o = await c((e) => t(a, {
|
|
3182
3233
|
headers: { authorization: `Bearer ${i}` },
|
|
3183
3234
|
signal: e
|
|
3184
3235
|
}));
|
|
@@ -3189,4 +3240,4 @@ function Nr(e) {
|
|
|
3189
3240
|
};
|
|
3190
3241
|
}
|
|
3191
3242
|
//#endregion
|
|
3192
|
-
export {
|
|
3243
|
+
export { B as HandlerRegistry, Fr as PROXY_RESOLVE_HOST_SCOPE, Kn as basicAuthHandler, jr as buildCacheAdapterKey, kr as buildCacheApiKey, br as buildMatchFilter, Jn as cacheHandler, Sr as compileHostApp, Un as corsHandler, Ar as createCacheAdapterHostCache, Or as createCacheApiHostCache, Lr as createHttpProxyAdapter, z as createInMemoryHostCache, Er as createProxyApp, Z as createProxyDataPlaneHandler, Tr as createProxyDataPlaneRouter, Nr as createStaticProxyAdapter, V as defineHandler, pr as dispatchNamespaceHandler, Yn as forwardedHeadersHandler, F as handlerConfigSchema, qn as headersHandler, Y as httpHandler, Pr as httpRoute, P as matchSchema, yr as matchesAnyHost, vr as matchesHost, I as proxyRouteInsertSchema, mn as proxyRouteSchema, hn as proxyRouteUpdateSchema, mr as redirectHandler, gr as registerBuiltinHandlers, $n as rewriteCookiesHandler, er as rewriteLocationHandler, lr as serviceBindingHandler, _r as sortRoutes, hr as staticHandler };
|