@kong-ui-public/entities-upstreams-targets 3.5.55 → 3.5.56
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.
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { ref as
|
|
2
|
-
import { useAxios as
|
|
3
|
-
import { useRouter as
|
|
4
|
-
import { AddIcon as
|
|
5
|
-
import { createI18n as
|
|
6
|
-
const
|
|
1
|
+
import { ref as V, defineComponent as se, computed as w, watch as ce, onBeforeMount as Pe, resolveComponent as K, openBlock as x, createElementBlock as ae, createVNode as h, unref as e, withCtx as n, createBlock as B, Teleport as dt, createTextVNode as Q, toDisplayString as f, createElementVNode as b, reactive as Ue, renderSlot as pt, createCommentVNode as L, createSlots as xt, Fragment as Ie, renderList as Ot, normalizeClass as $t } from "vue";
|
|
2
|
+
import { useAxios as we, useFetcher as mt, useDeleteUrlBuilder as ft, FetcherStatus as yt, EntityBaseTable as gt, EntityFilter as Pt, PermissionsWrapper as ne, TableTags as vt, EntityDeleteModal as bt, EntityTypes as kt, useErrors as _t, EntityBaseFormType as oe, EntityBaseForm as Ct, SupportedEntityType as Me, useDebouncedFilter as ht, EntityFormSection as _e, useHelpers as Mt, ConfigurationSchemaSection as re, ConfigurationSchemaType as At, EntityBaseConfigCard as Kt } from "@kong-ui-public/entities-shared";
|
|
3
|
+
import { useRouter as Ht } from "vue-router";
|
|
4
|
+
import { AddIcon as Ae, TrashIcon as Vt } from "@kong/icons";
|
|
5
|
+
import { createI18n as Nt, i18nTComponent as Et } from "@kong-ui-public/i18n";
|
|
6
|
+
const Rt = {
|
|
7
7
|
list: {
|
|
8
8
|
table_headers: {
|
|
9
9
|
id: "ID",
|
|
@@ -289,7 +289,7 @@ const Dt = {
|
|
|
289
289
|
labels: {
|
|
290
290
|
created_at: "Created at"
|
|
291
291
|
}
|
|
292
|
-
},
|
|
292
|
+
}, Bt = {
|
|
293
293
|
list: {
|
|
294
294
|
table_headers: {
|
|
295
295
|
id: "ID",
|
|
@@ -357,28 +357,28 @@ const Dt = {
|
|
|
357
357
|
}
|
|
358
358
|
}
|
|
359
359
|
}
|
|
360
|
-
},
|
|
361
|
-
upstreams:
|
|
362
|
-
targets:
|
|
360
|
+
}, Dt = {
|
|
361
|
+
upstreams: Rt,
|
|
362
|
+
targets: Bt
|
|
363
363
|
};
|
|
364
|
-
function
|
|
365
|
-
const a =
|
|
364
|
+
function jt() {
|
|
365
|
+
const a = Nt("en-us", Dt);
|
|
366
366
|
return {
|
|
367
367
|
i18n: a,
|
|
368
|
-
i18nT:
|
|
368
|
+
i18nT: Et(a)
|
|
369
369
|
// Translation component <i18n-t>
|
|
370
370
|
};
|
|
371
371
|
}
|
|
372
372
|
function ke(a) {
|
|
373
|
-
const { replaceId:
|
|
373
|
+
const { replaceId: E = !1 } = a, i = V([]);
|
|
374
374
|
return {
|
|
375
|
-
addedItems:
|
|
375
|
+
addedItems: i,
|
|
376
376
|
trackNewItems: (u, k) => {
|
|
377
377
|
if (k) {
|
|
378
378
|
const g = { ...u };
|
|
379
|
-
|
|
379
|
+
E && (g.value = u.label), i.value.push(g);
|
|
380
380
|
} else
|
|
381
|
-
|
|
381
|
+
i.value = i.value.filter((g) => g.value !== u.value);
|
|
382
382
|
}
|
|
383
383
|
};
|
|
384
384
|
}
|
|
@@ -751,20 +751,20 @@ const qe = [
|
|
|
751
751
|
label: "599",
|
|
752
752
|
value: "599"
|
|
753
753
|
}
|
|
754
|
-
],
|
|
755
|
-
function
|
|
756
|
-
const a = (l) => /^\d+$/.test(l),
|
|
754
|
+
], Oe = 10, $e = 65536, Lt = 0, Qt = 65535, fe = 0, ye = 255, St = 0, Ut = 255, Wt = 0, Jt = 65535, ut = 0, ct = 65535, zt = 0, Gt = 2 ** 31, It = ["200", "302"], qt = ["200", "201", "202", "203", "204", "205", "206", "207", "208", "226", "300", "301", "302", "303", "304", "305", "306", "307", "308"], wt = ["429", "404", "500", "501", "502", "503", "504", "505"], Ft = ["429", "500", "503"];
|
|
755
|
+
function Fe() {
|
|
756
|
+
const a = (l) => /^\d+$/.test(l), E = (l, c, H) => {
|
|
757
757
|
if (a(l)) {
|
|
758
758
|
const m = Number(l);
|
|
759
|
-
return m >= c && m <=
|
|
759
|
+
return m >= c && m <= H;
|
|
760
760
|
} else
|
|
761
761
|
return !1;
|
|
762
|
-
},
|
|
763
|
-
var
|
|
762
|
+
}, i = (l) => l.map((c) => Number(c)), s = (l) => l.map((c) => c.toString()), u = (l) => {
|
|
763
|
+
var H, m, t, R, q, p, S, W, A, X, z, v, U, I, O, y, D, J, te, le, M, $, G, C, T, P, _, d, r, o, Y, j, Z, ee, ie, ve, be, de, Ke, Ve, Ne, Ee, Re, Be, De, je, Le, Qe, We, Je, ze, Ge, Xe, Ye, Ze, et, tt, at, lt, st, it, rt, ot, nt;
|
|
764
764
|
return {
|
|
765
765
|
name: (l == null ? void 0 : l.name) || "",
|
|
766
766
|
hostHeader: (l == null ? void 0 : l.host_header) || "",
|
|
767
|
-
clientCertificate: ((
|
|
767
|
+
clientCertificate: ((H = l == null ? void 0 : l.client_certificate) == null ? void 0 : H.id) || "",
|
|
768
768
|
tags: ((m = l == null ? void 0 : l.tags) == null ? void 0 : m.join(", ")) || "",
|
|
769
769
|
algorithm: (l == null ? void 0 : l.algorithm) || "round-robin",
|
|
770
770
|
slots: ((t = l == null ? void 0 : l.slots) == null ? void 0 : t.toString()) || "10000",
|
|
@@ -778,41 +778,41 @@ function Te() {
|
|
|
778
778
|
hashFallbackHeader: (l == null ? void 0 : l.hash_fallback_header) || "",
|
|
779
779
|
hashFallbackQueryArgument: (l == null ? void 0 : l.hash_fallback_query_arg) || "",
|
|
780
780
|
hashFallbackUriCapture: (l == null ? void 0 : l.hash_fallback_uri_capture) || "",
|
|
781
|
-
activeHealthSwitch: l ? ((
|
|
782
|
-
passiveHealthSwitch: l ? ((
|
|
781
|
+
activeHealthSwitch: l ? ((q = (R = l.healthchecks.active) == null ? void 0 : R.healthy) == null ? void 0 : q.interval) !== 0 || ((S = (p = l.healthchecks.active) == null ? void 0 : p.unhealthy) == null ? void 0 : S.interval) !== 0 : !1,
|
|
782
|
+
passiveHealthSwitch: l ? ((A = (W = l.healthchecks.passive) == null ? void 0 : W.healthy) == null ? void 0 : A.successes) !== 0 || ((z = (X = l.healthchecks.passive) == null ? void 0 : X.unhealthy) == null ? void 0 : z.timeouts) !== 0 || ((U = (v = l.healthchecks.passive) == null ? void 0 : v.unhealthy) == null ? void 0 : U.tcp_failures) !== 0 || ((O = (I = l.healthchecks.passive) == null ? void 0 : I.unhealthy) == null ? void 0 : O.http_failures) !== 0 : !1,
|
|
783
783
|
healthchecksThreshold: ((y = l == null ? void 0 : l.healthchecks.threshold) == null ? void 0 : y.toString()) || "0",
|
|
784
784
|
activeHealthCheck: {
|
|
785
785
|
type: ((D = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : D.type) || "http",
|
|
786
786
|
httpPath: ((J = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : J.http_path) || "/",
|
|
787
|
-
timeout: ((
|
|
788
|
-
concurrency: ((
|
|
789
|
-
httpsSni: ((
|
|
790
|
-
verifySsl: ((
|
|
791
|
-
headers: (
|
|
792
|
-
interval: ((d = (
|
|
793
|
-
successes: ((
|
|
794
|
-
httpStatuses: (
|
|
795
|
-
unhealthyInterval: ((
|
|
796
|
-
httpFailures: ((
|
|
797
|
-
tcpFailures: ((
|
|
798
|
-
unhealthyHttpStatuses: (
|
|
799
|
-
unhealthyTimeouts: ((
|
|
787
|
+
timeout: ((le = (te = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : te.timeout) == null ? void 0 : le.toString()) || "1",
|
|
788
|
+
concurrency: (($ = (M = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : M.concurrency) == null ? void 0 : $.toString()) || "10",
|
|
789
|
+
httpsSni: ((G = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : G.https_sni) || "",
|
|
790
|
+
verifySsl: ((C = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : C.https_verify_certificate) || !1,
|
|
791
|
+
headers: (T = l == null ? void 0 : l.healthchecks.active) != null && T.headers && Object.entries(l.healthchecks.active.headers).length > 0 ? Object.entries(l.healthchecks.active.headers).map(([Tt, xe]) => ({ key: Tt, values: xe == null ? void 0 : xe.join(", ") })) : [{ key: "", values: "" }],
|
|
792
|
+
interval: ((d = (_ = (P = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : P.healthy) == null ? void 0 : _.interval) == null ? void 0 : d.toString()) || "0",
|
|
793
|
+
successes: ((Y = (o = (r = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : r.healthy) == null ? void 0 : o.successes) == null ? void 0 : Y.toString()) || "5",
|
|
794
|
+
httpStatuses: (Z = (j = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : j.healthy) != null && Z.http_statuses ? s(l.healthchecks.active.healthy.http_statuses) : It,
|
|
795
|
+
unhealthyInterval: ((ve = (ie = (ee = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : ee.unhealthy) == null ? void 0 : ie.interval) == null ? void 0 : ve.toString()) || "0",
|
|
796
|
+
httpFailures: ((Ke = (de = (be = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : be.unhealthy) == null ? void 0 : de.http_failures) == null ? void 0 : Ke.toString()) || "5",
|
|
797
|
+
tcpFailures: ((Ee = (Ne = (Ve = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : Ve.unhealthy) == null ? void 0 : Ne.tcp_failures) == null ? void 0 : Ee.toString()) || "5",
|
|
798
|
+
unhealthyHttpStatuses: (Be = (Re = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : Re.unhealthy) != null && Be.http_statuses ? s(l.healthchecks.active.unhealthy.http_statuses) : wt,
|
|
799
|
+
unhealthyTimeouts: ((Le = (je = (De = l == null ? void 0 : l.healthchecks.active) == null ? void 0 : De.unhealthy) == null ? void 0 : je.timeouts) == null ? void 0 : Le.toString()) || "0"
|
|
800
800
|
},
|
|
801
801
|
passiveHealthCheck: {
|
|
802
|
-
type: ((
|
|
803
|
-
successes: ((
|
|
804
|
-
httpStatuses: (
|
|
805
|
-
timeouts: ((
|
|
806
|
-
httpFailures: ((
|
|
807
|
-
tcpFailures: ((
|
|
808
|
-
unhealthyHttpStatuses: (
|
|
802
|
+
type: ((Qe = l == null ? void 0 : l.healthchecks.passive) == null ? void 0 : Qe.type) || "http",
|
|
803
|
+
successes: ((ze = (Je = (We = l == null ? void 0 : l.healthchecks.passive) == null ? void 0 : We.healthy) == null ? void 0 : Je.successes) == null ? void 0 : ze.toString()) || "0",
|
|
804
|
+
httpStatuses: (Xe = (Ge = l == null ? void 0 : l.healthchecks.passive) == null ? void 0 : Ge.healthy) != null && Xe.http_statuses ? s(l.healthchecks.passive.healthy.http_statuses) : qt,
|
|
805
|
+
timeouts: ((et = (Ze = (Ye = l == null ? void 0 : l.healthchecks.passive) == null ? void 0 : Ye.unhealthy) == null ? void 0 : Ze.timeouts) == null ? void 0 : et.toString()) || "0",
|
|
806
|
+
httpFailures: ((lt = (at = (tt = l == null ? void 0 : l.healthchecks.passive) == null ? void 0 : tt.unhealthy) == null ? void 0 : at.http_failures) == null ? void 0 : lt.toString()) || "5",
|
|
807
|
+
tcpFailures: ((rt = (it = (st = l == null ? void 0 : l.healthchecks.passive) == null ? void 0 : st.unhealthy) == null ? void 0 : it.tcp_failures) == null ? void 0 : rt.toString()) || "5",
|
|
808
|
+
unhealthyHttpStatuses: (nt = (ot = l == null ? void 0 : l.healthchecks.passive) == null ? void 0 : ot.unhealthy) != null && nt.http_statuses ? s(l.healthchecks.passive.unhealthy.http_statuses) : Ft
|
|
809
809
|
}
|
|
810
810
|
};
|
|
811
811
|
};
|
|
812
812
|
return {
|
|
813
813
|
isInteger: a,
|
|
814
|
-
inRange:
|
|
815
|
-
stringToNumberArray:
|
|
814
|
+
inRange: E,
|
|
815
|
+
stringToNumberArray: i,
|
|
816
816
|
numberToStringArray: s,
|
|
817
817
|
upstreamsResponseToFields: (l) => u(l),
|
|
818
818
|
getDefaultUpstreamFields: () => u(),
|
|
@@ -827,31 +827,31 @@ function Te() {
|
|
|
827
827
|
};
|
|
828
828
|
}
|
|
829
829
|
const he = {
|
|
830
|
-
useI18n:
|
|
830
|
+
useI18n: jt,
|
|
831
831
|
useMultiselectCreation: ke,
|
|
832
|
-
useHelpers:
|
|
833
|
-
},
|
|
832
|
+
useHelpers: Fe
|
|
833
|
+
}, pe = "/v2/control-planes/{controlPlaneId}/core-entities", me = "/{workspace}", ge = {
|
|
834
834
|
list: {
|
|
835
|
-
konnect: `${
|
|
836
|
-
kongManager: `${
|
|
835
|
+
konnect: `${pe}/upstreams`,
|
|
836
|
+
kongManager: `${me}/upstreams`
|
|
837
837
|
},
|
|
838
838
|
form: {
|
|
839
839
|
konnect: {
|
|
840
|
+
getServices: `${pe}/services`,
|
|
841
|
+
getCertificates: `${pe}/certificates`,
|
|
842
|
+
validate: `${pe}/v1/schemas/json/upstream/validate`,
|
|
843
|
+
create: `${pe}/upstreams`,
|
|
844
|
+
edit: `${pe}/upstreams/{id}`
|
|
845
|
+
},
|
|
846
|
+
kongManager: {
|
|
840
847
|
getServices: `${me}/services`,
|
|
841
848
|
getCertificates: `${me}/certificates`,
|
|
842
|
-
validate: `${me}/
|
|
849
|
+
validate: `${me}/schemas/upstreams/validate`,
|
|
843
850
|
create: `${me}/upstreams`,
|
|
844
851
|
edit: `${me}/upstreams/{id}`
|
|
845
|
-
},
|
|
846
|
-
kongManager: {
|
|
847
|
-
getServices: `${fe}/services`,
|
|
848
|
-
getCertificates: `${fe}/certificates`,
|
|
849
|
-
validate: `${fe}/schemas/upstreams/validate`,
|
|
850
|
-
create: `${fe}/upstreams`,
|
|
851
|
-
edit: `${fe}/upstreams/{id}`
|
|
852
852
|
}
|
|
853
853
|
}
|
|
854
|
-
},
|
|
854
|
+
}, Xt = { class: "kong-ui-entities-upstreams-list" }, Yt = { class: "upstream-name" }, Zt = /* @__PURE__ */ se({
|
|
855
855
|
__name: "UpstreamsList",
|
|
856
856
|
props: {
|
|
857
857
|
/** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
|
|
@@ -896,135 +896,134 @@ const he = {
|
|
|
896
896
|
}
|
|
897
897
|
},
|
|
898
898
|
emits: ["error", "copy:success", "copy:error", "delete:success"],
|
|
899
|
-
setup(a, { emit:
|
|
900
|
-
var
|
|
901
|
-
const
|
|
899
|
+
setup(a, { emit: E }) {
|
|
900
|
+
var G;
|
|
901
|
+
const i = E, s = a, { i18n: { t: u } } = he.useI18n(), k = Ht(), { axiosInstance: g } = we((G = s.config) == null ? void 0 : G.axiosRequestConfig), N = V(1), F = w(() => s.config.app !== "kongManager" || !!s.config.disableSorting), l = {
|
|
902
902
|
// the Name column is non-hidable
|
|
903
903
|
name: { label: u("upstreams.list.table_headers.name"), searchable: !0, sortable: !0, hidable: !1 },
|
|
904
904
|
slots: { label: u("upstreams.list.table_headers.slots"), searchable: !0, sortable: !0 },
|
|
905
905
|
tags: { label: u("upstreams.list.table_headers.tags"), sortable: !1 }
|
|
906
|
-
}, c = l,
|
|
907
|
-
var
|
|
908
|
-
let
|
|
909
|
-
return s.config.app === "konnect" ?
|
|
910
|
-
}), m =
|
|
911
|
-
const
|
|
912
|
-
if (
|
|
906
|
+
}, c = l, H = w(() => {
|
|
907
|
+
var T, P;
|
|
908
|
+
let C = `${s.config.apiBaseUrl}${ge.list[s.config.app]}`;
|
|
909
|
+
return s.config.app === "konnect" ? C = C.replace(/{controlPlaneId}/gi, ((T = s.config) == null ? void 0 : T.controlPlaneId) || "") : s.config.app === "kongManager" && (C = C.replace(/\/{workspace}/gi, (P = s.config) != null && P.workspace ? `/${s.config.workspace}` : "")), C;
|
|
910
|
+
}), m = V(""), t = w(() => {
|
|
911
|
+
const C = s.config.app === "konnect" || s.config.isExactMatch;
|
|
912
|
+
if (C)
|
|
913
913
|
return {
|
|
914
|
-
isExactMatch:
|
|
914
|
+
isExactMatch: C,
|
|
915
915
|
placeholder: u("upstreams.search.placeholder")
|
|
916
916
|
};
|
|
917
|
-
const { name:
|
|
917
|
+
const { name: T, slots: P } = l;
|
|
918
918
|
return {
|
|
919
|
-
isExactMatch:
|
|
920
|
-
fields: { name:
|
|
919
|
+
isExactMatch: C,
|
|
920
|
+
fields: { name: T, slots: P },
|
|
921
921
|
schema: s.config.filterSchema
|
|
922
922
|
};
|
|
923
|
-
}), { fetcher:
|
|
923
|
+
}), { fetcher: R, fetcherState: q } = mt(s.config, H.value), p = () => {
|
|
924
924
|
m.value = "";
|
|
925
|
-
},
|
|
926
|
-
|
|
927
|
-
},
|
|
928
|
-
const
|
|
929
|
-
if (!
|
|
930
|
-
|
|
931
|
-
entity:
|
|
925
|
+
}, S = () => {
|
|
926
|
+
N.value++;
|
|
927
|
+
}, W = V(null), A = (C, T) => {
|
|
928
|
+
const P = C.id;
|
|
929
|
+
if (!T(P)) {
|
|
930
|
+
i("copy:error", {
|
|
931
|
+
entity: C,
|
|
932
932
|
field: "id",
|
|
933
933
|
message: u("upstreams.errors.copy")
|
|
934
934
|
});
|
|
935
935
|
return;
|
|
936
936
|
}
|
|
937
|
-
|
|
938
|
-
entity:
|
|
937
|
+
i("copy:success", {
|
|
938
|
+
entity: C,
|
|
939
939
|
field: "id",
|
|
940
|
-
message: u("upstreams.copy.success", { val:
|
|
940
|
+
message: u("upstreams.copy.success", { val: P })
|
|
941
941
|
});
|
|
942
|
-
},
|
|
943
|
-
const
|
|
944
|
-
if (!
|
|
945
|
-
|
|
946
|
-
entity:
|
|
942
|
+
}, X = (C, T) => {
|
|
943
|
+
const P = JSON.stringify(C);
|
|
944
|
+
if (!T(P)) {
|
|
945
|
+
i("copy:error", {
|
|
946
|
+
entity: C,
|
|
947
947
|
message: u("upstreams.errors.copy")
|
|
948
948
|
});
|
|
949
949
|
return;
|
|
950
950
|
}
|
|
951
|
-
|
|
952
|
-
entity:
|
|
951
|
+
i("copy:success", {
|
|
952
|
+
entity: C,
|
|
953
953
|
message: u("upstreams.copy.success_brief")
|
|
954
954
|
});
|
|
955
|
-
},
|
|
956
|
-
var
|
|
957
|
-
await ((
|
|
958
|
-
},
|
|
955
|
+
}, z = async (C) => {
|
|
956
|
+
var P;
|
|
957
|
+
await ((P = s.canRetrieve) == null ? void 0 : P.call(s, C)) && k.push(s.config.getViewRoute(C.id));
|
|
958
|
+
}, v = (C) => ({
|
|
959
959
|
label: u("upstreams.actions.view"),
|
|
960
|
-
to: s.config.getViewRoute(
|
|
961
|
-
}),
|
|
960
|
+
to: s.config.getViewRoute(C)
|
|
961
|
+
}), U = (C) => ({
|
|
962
962
|
label: u("upstreams.actions.edit"),
|
|
963
|
-
to: s.config.getEditRoute(
|
|
964
|
-
}),
|
|
965
|
-
|
|
966
|
-
},
|
|
967
|
-
|
|
968
|
-
},
|
|
969
|
-
var
|
|
970
|
-
if ((
|
|
971
|
-
|
|
963
|
+
to: s.config.getEditRoute(C)
|
|
964
|
+
}), I = V(void 0), O = V(!1), y = V(!1), D = V(""), J = ft(s.config, H.value), te = (C) => {
|
|
965
|
+
I.value = C, O.value = !0;
|
|
966
|
+
}, le = () => {
|
|
967
|
+
O.value = !1;
|
|
968
|
+
}, M = async () => {
|
|
969
|
+
var C, T, P;
|
|
970
|
+
if ((C = I.value) != null && C.id) {
|
|
971
|
+
y.value = !0;
|
|
972
972
|
try {
|
|
973
|
-
await g.delete(
|
|
974
|
-
} catch (
|
|
975
|
-
|
|
973
|
+
await g.delete(J(I.value.id)), y.value = !1, O.value = !1, N.value++, i("delete:success", I.value);
|
|
974
|
+
} catch (_) {
|
|
975
|
+
D.value = ((P = (T = _.response) == null ? void 0 : T.data) == null ? void 0 : P.message) || _.message || u("upstreams.errors.delete"), i("error", _);
|
|
976
976
|
} finally {
|
|
977
|
-
|
|
977
|
+
y.value = !1;
|
|
978
978
|
}
|
|
979
979
|
}
|
|
980
|
-
}
|
|
981
|
-
ce(
|
|
982
|
-
var
|
|
983
|
-
if (
|
|
984
|
-
|
|
980
|
+
};
|
|
981
|
+
ce(q, (C) => {
|
|
982
|
+
var T, P, _;
|
|
983
|
+
if (C.status === yt.Error) {
|
|
984
|
+
W.value = {
|
|
985
985
|
title: u("upstreams.errors.general")
|
|
986
|
-
}, (
|
|
986
|
+
}, (_ = (P = (T = C.error) == null ? void 0 : T.response) == null ? void 0 : P.data) != null && _.message && (W.value.message = C.error.response.data.message), i("error", C.error);
|
|
987
987
|
return;
|
|
988
988
|
}
|
|
989
|
-
|
|
989
|
+
W.value = null;
|
|
990
990
|
});
|
|
991
|
-
const
|
|
991
|
+
const $ = V({
|
|
992
992
|
ctaPath: s.config.createRoute,
|
|
993
993
|
ctaText: void 0,
|
|
994
994
|
message: `${u("upstreams.list.empty_state.description")}${s.config.additionMessageForEmptyState ? ` ${s.config.additionMessageForEmptyState}` : ""}`,
|
|
995
995
|
title: u("upstreams.title")
|
|
996
996
|
});
|
|
997
|
-
return
|
|
998
|
-
await s.canCreate() && (
|
|
999
|
-
}), (
|
|
1000
|
-
const
|
|
1001
|
-
return x(),
|
|
1002
|
-
h(e(
|
|
997
|
+
return Pe(async () => {
|
|
998
|
+
await s.canCreate() && ($.value.title = u("upstreams.list.empty_state.title"), $.value.ctaText = u("upstreams.actions.create"));
|
|
999
|
+
}), (C, T) => {
|
|
1000
|
+
const P = K("KButton"), _ = K("KDropdownItem"), d = K("KClipboardProvider");
|
|
1001
|
+
return x(), ae("div", Xt, [
|
|
1002
|
+
h(e(gt), {
|
|
1003
1003
|
"cache-identifier": a.cacheIdentifier,
|
|
1004
1004
|
"disable-sorting": F.value,
|
|
1005
|
-
"empty-state-options":
|
|
1005
|
+
"empty-state-options": $.value,
|
|
1006
1006
|
"enable-entity-actions": "",
|
|
1007
|
-
"error-message":
|
|
1008
|
-
fetcher: e(
|
|
1009
|
-
"fetcher-cache-key":
|
|
1010
|
-
"hide-toolbar": O.value,
|
|
1007
|
+
"error-message": W.value,
|
|
1008
|
+
fetcher: e(R),
|
|
1009
|
+
"fetcher-cache-key": N.value,
|
|
1011
1010
|
"pagination-type": "offset",
|
|
1012
1011
|
"preferences-storage-key": "kong-ui-entities-upstreams-list",
|
|
1013
1012
|
query: m.value,
|
|
1014
1013
|
"table-headers": e(c),
|
|
1015
1014
|
onClearSearchInput: p,
|
|
1016
|
-
"onClick:row":
|
|
1017
|
-
onSort:
|
|
1015
|
+
"onClick:row": T[1] || (T[1] = (r) => z(r)),
|
|
1016
|
+
onSort: S
|
|
1018
1017
|
}, {
|
|
1019
1018
|
"toolbar-filter": n(() => [
|
|
1020
|
-
h(e(
|
|
1019
|
+
h(e(Pt), {
|
|
1021
1020
|
modelValue: m.value,
|
|
1022
|
-
"onUpdate:modelValue":
|
|
1021
|
+
"onUpdate:modelValue": T[0] || (T[0] = (r) => m.value = r),
|
|
1023
1022
|
config: t.value
|
|
1024
1023
|
}, null, 8, ["modelValue", "config"])
|
|
1025
1024
|
]),
|
|
1026
1025
|
"toolbar-button": n(() => [
|
|
1027
|
-
(x(),
|
|
1026
|
+
(x(), B(dt, {
|
|
1028
1027
|
disabled: !a.useActionOutside,
|
|
1029
1028
|
to: "#kong-ui-app-page-header-action-button"
|
|
1030
1029
|
}, [
|
|
@@ -1032,57 +1031,55 @@ const he = {
|
|
|
1032
1031
|
"auth-function": () => a.canCreate()
|
|
1033
1032
|
}, {
|
|
1034
1033
|
default: n(() => [
|
|
1035
|
-
|
|
1034
|
+
h(P, {
|
|
1036
1035
|
appearance: "primary",
|
|
1037
1036
|
"data-testid": "toolbar-add-upstream",
|
|
1038
1037
|
size: a.useActionOutside ? "medium" : "large",
|
|
1039
1038
|
to: a.config.createRoute
|
|
1040
1039
|
}, {
|
|
1041
1040
|
default: n(() => [
|
|
1042
|
-
h(e(
|
|
1043
|
-
|
|
1041
|
+
h(e(Ae)),
|
|
1042
|
+
Q(" " + f(e(u)("upstreams.list.toolbar_actions.new_upstream")), 1)
|
|
1044
1043
|
]),
|
|
1045
1044
|
_: 1
|
|
1046
|
-
}, 8, ["size", "to"])
|
|
1047
|
-
[ft, Q.value]
|
|
1048
|
-
])
|
|
1045
|
+
}, 8, ["size", "to"])
|
|
1049
1046
|
]),
|
|
1050
1047
|
_: 1
|
|
1051
1048
|
}, 8, ["auth-function"])
|
|
1052
1049
|
], 8, ["disabled"]))
|
|
1053
1050
|
]),
|
|
1054
|
-
name: n(({ rowValue:
|
|
1055
|
-
b("span",
|
|
1051
|
+
name: n(({ rowValue: r }) => [
|
|
1052
|
+
b("span", Yt, f(r), 1)
|
|
1056
1053
|
]),
|
|
1057
|
-
tags: n(({ rowValue:
|
|
1058
|
-
h(e(
|
|
1054
|
+
tags: n(({ rowValue: r }) => [
|
|
1055
|
+
h(e(vt), {
|
|
1059
1056
|
"tag-max-width": "auto",
|
|
1060
|
-
tags:
|
|
1057
|
+
tags: r
|
|
1061
1058
|
}, null, 8, ["tags"])
|
|
1062
1059
|
]),
|
|
1063
|
-
actions: n(({ row:
|
|
1064
|
-
h(
|
|
1065
|
-
default: n(({ copyToClipboard:
|
|
1066
|
-
h(
|
|
1060
|
+
actions: n(({ row: r }) => [
|
|
1061
|
+
h(d, null, {
|
|
1062
|
+
default: n(({ copyToClipboard: o }) => [
|
|
1063
|
+
h(_, {
|
|
1067
1064
|
"data-testid": "action-entity-copy-id",
|
|
1068
|
-
onClick: (
|
|
1065
|
+
onClick: (Y) => A(r, o)
|
|
1069
1066
|
}, {
|
|
1070
1067
|
default: n(() => [
|
|
1071
|
-
|
|
1068
|
+
Q(f(e(u)("upstreams.actions.copy_id")), 1)
|
|
1072
1069
|
]),
|
|
1073
1070
|
_: 2
|
|
1074
1071
|
}, 1032, ["onClick"])
|
|
1075
1072
|
]),
|
|
1076
1073
|
_: 2
|
|
1077
1074
|
}, 1024),
|
|
1078
|
-
h(
|
|
1079
|
-
default: n(({ copyToClipboard:
|
|
1080
|
-
h(
|
|
1075
|
+
h(d, null, {
|
|
1076
|
+
default: n(({ copyToClipboard: o }) => [
|
|
1077
|
+
h(_, {
|
|
1081
1078
|
"data-testid": "action-entity-copy-json",
|
|
1082
|
-
onClick: (
|
|
1079
|
+
onClick: (Y) => X(r, o)
|
|
1083
1080
|
}, {
|
|
1084
1081
|
default: n(() => [
|
|
1085
|
-
|
|
1082
|
+
Q(f(e(u)("upstreams.actions.copy_json")), 1)
|
|
1086
1083
|
]),
|
|
1087
1084
|
_: 2
|
|
1088
1085
|
}, 1032, ["onClick"])
|
|
@@ -1090,40 +1087,40 @@ const he = {
|
|
|
1090
1087
|
_: 2
|
|
1091
1088
|
}, 1024),
|
|
1092
1089
|
h(e(ne), {
|
|
1093
|
-
"auth-function": () => a.canRetrieve(
|
|
1090
|
+
"auth-function": () => a.canRetrieve(r)
|
|
1094
1091
|
}, {
|
|
1095
1092
|
default: n(() => [
|
|
1096
|
-
h(
|
|
1093
|
+
h(_, {
|
|
1097
1094
|
"data-testid": "action-entity-view",
|
|
1098
1095
|
"has-divider": "",
|
|
1099
|
-
item:
|
|
1096
|
+
item: v(r.id)
|
|
1100
1097
|
}, null, 8, ["item"])
|
|
1101
1098
|
]),
|
|
1102
1099
|
_: 2
|
|
1103
1100
|
}, 1032, ["auth-function"]),
|
|
1104
1101
|
h(e(ne), {
|
|
1105
|
-
"auth-function": () => a.canEdit(
|
|
1102
|
+
"auth-function": () => a.canEdit(r)
|
|
1106
1103
|
}, {
|
|
1107
1104
|
default: n(() => [
|
|
1108
|
-
h(
|
|
1105
|
+
h(_, {
|
|
1109
1106
|
"data-testid": "action-entity-edit",
|
|
1110
|
-
item:
|
|
1107
|
+
item: U(r.id)
|
|
1111
1108
|
}, null, 8, ["item"])
|
|
1112
1109
|
]),
|
|
1113
1110
|
_: 2
|
|
1114
1111
|
}, 1032, ["auth-function"]),
|
|
1115
1112
|
h(e(ne), {
|
|
1116
|
-
"auth-function": () => a.canDelete(
|
|
1113
|
+
"auth-function": () => a.canDelete(r)
|
|
1117
1114
|
}, {
|
|
1118
1115
|
default: n(() => [
|
|
1119
|
-
h(
|
|
1116
|
+
h(_, {
|
|
1120
1117
|
danger: "",
|
|
1121
1118
|
"data-testid": "action-entity-delete",
|
|
1122
1119
|
"has-divider": "",
|
|
1123
|
-
onClick: (
|
|
1120
|
+
onClick: (o) => te(r)
|
|
1124
1121
|
}, {
|
|
1125
1122
|
default: n(() => [
|
|
1126
|
-
|
|
1123
|
+
Q(f(e(u)("upstreams.actions.delete")), 1)
|
|
1127
1124
|
]),
|
|
1128
1125
|
_: 2
|
|
1129
1126
|
}, 1032, ["onClick"])
|
|
@@ -1132,27 +1129,27 @@ const he = {
|
|
|
1132
1129
|
}, 1032, ["auth-function"])
|
|
1133
1130
|
]),
|
|
1134
1131
|
_: 1
|
|
1135
|
-
}, 8, ["cache-identifier", "disable-sorting", "empty-state-options", "error-message", "fetcher", "fetcher-cache-key", "
|
|
1136
|
-
h(e(
|
|
1137
|
-
"action-pending":
|
|
1132
|
+
}, 8, ["cache-identifier", "disable-sorting", "empty-state-options", "error-message", "fetcher", "fetcher-cache-key", "query", "table-headers"]),
|
|
1133
|
+
h(e(bt), {
|
|
1134
|
+
"action-pending": y.value,
|
|
1138
1135
|
description: e(u)("upstreams.delete.description"),
|
|
1139
|
-
"entity-name":
|
|
1140
|
-
"entity-type": e(
|
|
1141
|
-
error:
|
|
1136
|
+
"entity-name": I.value && (I.value.name || I.value.id),
|
|
1137
|
+
"entity-type": e(kt).Upstream,
|
|
1138
|
+
error: D.value,
|
|
1142
1139
|
title: e(u)("upstreams.delete.title"),
|
|
1143
|
-
visible:
|
|
1144
|
-
onCancel:
|
|
1145
|
-
onProceed:
|
|
1140
|
+
visible: O.value,
|
|
1141
|
+
onCancel: le,
|
|
1142
|
+
onProceed: M
|
|
1146
1143
|
}, null, 8, ["action-pending", "description", "entity-name", "entity-type", "error", "title", "visible"])
|
|
1147
1144
|
]);
|
|
1148
1145
|
};
|
|
1149
1146
|
}
|
|
1150
|
-
}), ue = (a,
|
|
1151
|
-
const
|
|
1152
|
-
for (const [s, u] of
|
|
1153
|
-
|
|
1154
|
-
return
|
|
1155
|
-
},
|
|
1147
|
+
}), ue = (a, E) => {
|
|
1148
|
+
const i = a.__vccOpts || a;
|
|
1149
|
+
for (const [s, u] of E)
|
|
1150
|
+
i[s] = u;
|
|
1151
|
+
return i;
|
|
1152
|
+
}, La = /* @__PURE__ */ ue(Zt, [["__scopeId", "data-v-abc61ea4"]]), Ce = "/v2/control-planes/{controlPlaneId}/core-entities", He = "/{workspace}", Se = {
|
|
1156
1153
|
list: {
|
|
1157
1154
|
konnect: `${Ce}/upstreams/{upstreamId}/targets`,
|
|
1158
1155
|
kongManager: `${He}/upstreams/{upstreamId}/targets`
|
|
@@ -1169,10 +1166,10 @@ const he = {
|
|
|
1169
1166
|
validate: `${He}/schemas/targets/validate`
|
|
1170
1167
|
}
|
|
1171
1168
|
}
|
|
1172
|
-
},
|
|
1169
|
+
}, ea = { class: "kong-ui-entities-target-form" }, ta = { class: "target-form-container" }, aa = {
|
|
1173
1170
|
key: 0,
|
|
1174
1171
|
class: "target-form-info"
|
|
1175
|
-
},
|
|
1172
|
+
}, la = /* @__PURE__ */ se({
|
|
1176
1173
|
__name: "TargetForm",
|
|
1177
1174
|
props: {
|
|
1178
1175
|
/** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
|
|
@@ -1195,12 +1192,12 @@ const he = {
|
|
|
1195
1192
|
}
|
|
1196
1193
|
},
|
|
1197
1194
|
emits: ["update", "error", "loading", "cancel"],
|
|
1198
|
-
setup(a, { emit:
|
|
1199
|
-
var
|
|
1200
|
-
const
|
|
1195
|
+
setup(a, { emit: E }) {
|
|
1196
|
+
var z;
|
|
1197
|
+
const i = E, s = a, { i18n: { t: u } } = he.useI18n(), { getMessageFromError: k } = _t(), { axiosInstance: g } = we((z = s.config) == null ? void 0 : z.axiosRequestConfig), N = w(() => {
|
|
1201
1198
|
var v;
|
|
1202
1199
|
return Se.form[s.config.app].edit.replace(/{upstreamId}/gi, ((v = s.config) == null ? void 0 : v.upstreamId) || "");
|
|
1203
|
-
}), F =
|
|
1200
|
+
}), F = w(() => s.targetId ? oe.Edit : oe.Create), l = w(() => F.value === oe.Edit ? u("targets.form.edit.title") : u("targets.form.create.title")), c = Ue({
|
|
1204
1201
|
fields: {
|
|
1205
1202
|
target: "",
|
|
1206
1203
|
weight: 100,
|
|
@@ -1208,7 +1205,7 @@ const he = {
|
|
|
1208
1205
|
},
|
|
1209
1206
|
isReadonly: !1,
|
|
1210
1207
|
errorMessage: ""
|
|
1211
|
-
}),
|
|
1208
|
+
}), H = Ue({
|
|
1212
1209
|
target: "",
|
|
1213
1210
|
weight: 100,
|
|
1214
1211
|
tags: ""
|
|
@@ -1216,83 +1213,83 @@ const he = {
|
|
|
1216
1213
|
target: "",
|
|
1217
1214
|
weight: 100,
|
|
1218
1215
|
tags: ""
|
|
1219
|
-
}, t =
|
|
1216
|
+
}, t = w(() => {
|
|
1220
1217
|
const v = parseInt(c.fields.weight.toString(), 10);
|
|
1221
1218
|
return v < 0 || v > 65535;
|
|
1222
|
-
}),
|
|
1223
|
-
() => JSON.stringify(c.fields) !== JSON.stringify(
|
|
1224
|
-
),
|
|
1225
|
-
var
|
|
1226
|
-
c.fields.target = (v == null ? void 0 : v.target) || "", c.fields.weight = (v == null ? void 0 : v.weight) ?? "", c.fields.tags = ((
|
|
1219
|
+
}), R = w(
|
|
1220
|
+
() => JSON.stringify(c.fields) !== JSON.stringify(H) && !!c.fields.target && !!c.fields.weight && !t.value
|
|
1221
|
+
), q = (v) => {
|
|
1222
|
+
var U;
|
|
1223
|
+
c.fields.target = (v == null ? void 0 : v.target) || "", c.fields.weight = (v == null ? void 0 : v.weight) ?? "", c.fields.tags = ((U = v == null ? void 0 : v.tags) == null ? void 0 : U.join(", ")) || "", Object.assign(H, c.fields);
|
|
1227
1224
|
}, p = () => {
|
|
1228
|
-
c.errorMessage = "",
|
|
1229
|
-
},
|
|
1230
|
-
var
|
|
1225
|
+
c.errorMessage = "", i("cancel");
|
|
1226
|
+
}, S = w(() => {
|
|
1227
|
+
var U, I;
|
|
1231
1228
|
let v = `${s.config.apiBaseUrl}${Se.form[s.config.app].validate}`;
|
|
1232
|
-
return s.config.app === "konnect" ? v = v.replace(/{controlPlaneId}/gi, ((
|
|
1233
|
-
}),
|
|
1234
|
-
var
|
|
1229
|
+
return s.config.app === "konnect" ? v = v.replace(/{controlPlaneId}/gi, ((U = s.config) == null ? void 0 : U.controlPlaneId) || "") : s.config.app === "kongManager" && (v = v.replace(/\/{workspace}/gi, (I = s.config) != null && I.workspace ? `/${s.config.workspace}` : "")), v = v.replace(/{id}/gi, s.targetId), v;
|
|
1230
|
+
}), W = w(() => {
|
|
1231
|
+
var U, I, O, y;
|
|
1235
1232
|
let v = `${s.config.apiBaseUrl}${Se.form[s.config.app][F.value]}`;
|
|
1236
|
-
return s.config.app === "konnect" ? v = v.replace(/{controlPlaneId}/gi, ((
|
|
1237
|
-
}),
|
|
1238
|
-
var v,
|
|
1233
|
+
return s.config.app === "konnect" ? v = v.replace(/{controlPlaneId}/gi, ((U = s.config) == null ? void 0 : U.controlPlaneId) || "").replace(/{upstreamId}/gi, ((I = s.config) == null ? void 0 : I.upstreamId) || "") : s.config.app === "kongManager" && (v = v.replace(/\/{workspace}/gi, (O = s.config) != null && O.workspace ? `/${s.config.workspace}` : "").replace(/{upstreamId}/gi, ((y = s.config) == null ? void 0 : y.upstreamId) || "")), v = v.replace(/{id}/gi, s.targetId), v;
|
|
1234
|
+
}), A = w(() => {
|
|
1235
|
+
var v, U, I;
|
|
1239
1236
|
return {
|
|
1240
1237
|
target: c.fields.target,
|
|
1241
1238
|
weight: parseInt(c.fields.weight),
|
|
1242
|
-
tags: (
|
|
1239
|
+
tags: (I = (U = (v = c.fields.tags) == null ? void 0 : v.split(",")) == null ? void 0 : U.map((O) => String(O || "").trim())) == null ? void 0 : I.filter((O) => O !== ""),
|
|
1243
1240
|
upstream: { id: s.config.upstreamId }
|
|
1244
1241
|
};
|
|
1245
|
-
}),
|
|
1246
|
-
var v,
|
|
1242
|
+
}), X = async () => {
|
|
1243
|
+
var v, U;
|
|
1247
1244
|
try {
|
|
1248
1245
|
c.isReadonly = !0, c.errorMessage = "";
|
|
1249
|
-
let
|
|
1250
|
-
if (await g.post(
|
|
1251
|
-
const { data:
|
|
1252
|
-
c.fields.target = (
|
|
1246
|
+
let I;
|
|
1247
|
+
if (await g.post(S.value, A.value), F.value === "create" ? I = await g.post(W.value, A.value) : F.value === "edit" && (I = ((v = s.config) == null ? void 0 : v.app) === "konnect" ? await g.put(W.value, A.value) : await g.patch(W.value, A.value)), I) {
|
|
1248
|
+
const { data: O } = I;
|
|
1249
|
+
c.fields.target = (O == null ? void 0 : O.name) || "", c.fields.weight = (O == null ? void 0 : O.weight) ?? 100, c.fields.tags = ((U = O == null ? void 0 : O.tags) == null ? void 0 : U.join(", ")) || "", i("update", O), Object.assign(c.fields, m);
|
|
1253
1250
|
}
|
|
1254
|
-
} catch (
|
|
1255
|
-
c.errorMessage = k(
|
|
1251
|
+
} catch (I) {
|
|
1252
|
+
c.errorMessage = k(I), i("error", I);
|
|
1256
1253
|
} finally {
|
|
1257
1254
|
c.isReadonly = !1;
|
|
1258
1255
|
}
|
|
1259
1256
|
};
|
|
1260
1257
|
return ce(() => s.targetId, () => {
|
|
1261
1258
|
Object.assign(c.fields, m);
|
|
1262
|
-
}), (v,
|
|
1263
|
-
const
|
|
1264
|
-
return x(),
|
|
1265
|
-
"action-button-disabled": !
|
|
1259
|
+
}), (v, U) => {
|
|
1260
|
+
const I = K("KInput"), O = K("KPrompt");
|
|
1261
|
+
return x(), B(O, {
|
|
1262
|
+
"action-button-disabled": !R.value || c.isReadonly,
|
|
1266
1263
|
"action-button-text": e(u)("targets.form.buttons.save"),
|
|
1267
1264
|
"cancel-button-text": e(u)("targets.form.buttons.cancel"),
|
|
1268
1265
|
title: l.value,
|
|
1269
1266
|
visible: a.isVisible,
|
|
1270
1267
|
onCancel: p,
|
|
1271
|
-
onProceed:
|
|
1268
|
+
onProceed: X
|
|
1272
1269
|
}, {
|
|
1273
1270
|
default: n(() => [
|
|
1274
|
-
b("div",
|
|
1275
|
-
h(e(
|
|
1271
|
+
b("div", ea, [
|
|
1272
|
+
h(e(Ct), {
|
|
1276
1273
|
config: a.config,
|
|
1277
1274
|
"edit-id": a.targetId,
|
|
1278
|
-
"entity-type": e(
|
|
1275
|
+
"entity-type": e(Me).Target,
|
|
1279
1276
|
"error-message": c.errorMessage,
|
|
1280
|
-
"fetch-url":
|
|
1281
|
-
"form-fields":
|
|
1277
|
+
"fetch-url": N.value,
|
|
1278
|
+
"form-fields": A.value,
|
|
1282
1279
|
"is-readonly": c.isReadonly,
|
|
1283
1280
|
onCancel: p,
|
|
1284
|
-
"onFetch:error":
|
|
1285
|
-
"onFetch:success":
|
|
1286
|
-
onLoading:
|
|
1281
|
+
"onFetch:error": U[3] || (U[3] = (y) => v.$emit("error", y)),
|
|
1282
|
+
"onFetch:success": q,
|
|
1283
|
+
onLoading: U[4] || (U[4] = (y) => v.$emit("loading", y))
|
|
1287
1284
|
}, {
|
|
1288
1285
|
default: n(() => [
|
|
1289
|
-
b("div",
|
|
1290
|
-
v.$slots.info ? (x(),
|
|
1291
|
-
|
|
1292
|
-
])) :
|
|
1293
|
-
h(
|
|
1286
|
+
b("div", ta, [
|
|
1287
|
+
v.$slots.info ? (x(), ae("div", aa, [
|
|
1288
|
+
pt(v.$slots, "info", {}, void 0, !0)
|
|
1289
|
+
])) : L("", !0),
|
|
1290
|
+
h(I, {
|
|
1294
1291
|
modelValue: c.fields.target,
|
|
1295
|
-
"onUpdate:modelValue":
|
|
1292
|
+
"onUpdate:modelValue": U[0] || (U[0] = (y) => c.fields.target = y),
|
|
1296
1293
|
modelModifiers: { trim: !0 },
|
|
1297
1294
|
autocomplete: "off",
|
|
1298
1295
|
class: "target-form-input",
|
|
@@ -1307,9 +1304,9 @@ const he = {
|
|
|
1307
1304
|
required: "",
|
|
1308
1305
|
type: "text"
|
|
1309
1306
|
}, null, 8, ["modelValue", "label", "label-attributes", "placeholder", "readonly"]),
|
|
1310
|
-
h(
|
|
1307
|
+
h(I, {
|
|
1311
1308
|
modelValue: c.fields.weight,
|
|
1312
|
-
"onUpdate:modelValue":
|
|
1309
|
+
"onUpdate:modelValue": U[1] || (U[1] = (y) => c.fields.weight = y),
|
|
1313
1310
|
autocomplete: "off",
|
|
1314
1311
|
class: "target-form-input",
|
|
1315
1312
|
"data-testid": "target-form-weight",
|
|
@@ -1326,9 +1323,9 @@ const he = {
|
|
|
1326
1323
|
required: "",
|
|
1327
1324
|
type: "number"
|
|
1328
1325
|
}, null, 8, ["modelValue", "error", "error-message", "label", "label-attributes", "readonly"]),
|
|
1329
|
-
h(
|
|
1326
|
+
h(I, {
|
|
1330
1327
|
modelValue: c.fields.tags,
|
|
1331
|
-
"onUpdate:modelValue":
|
|
1328
|
+
"onUpdate:modelValue": U[2] || (U[2] = (y) => c.fields.tags = y),
|
|
1332
1329
|
modelModifiers: { trim: !0 },
|
|
1333
1330
|
autocomplete: "off",
|
|
1334
1331
|
class: "target-form-input",
|
|
@@ -1349,7 +1346,7 @@ const he = {
|
|
|
1349
1346
|
}, 8, ["action-button-disabled", "action-button-text", "cancel-button-text", "title", "visible"]);
|
|
1350
1347
|
};
|
|
1351
1348
|
}
|
|
1352
|
-
}),
|
|
1349
|
+
}), sa = /* @__PURE__ */ ue(la, [["__scopeId", "data-v-6a64b86e"]]), ia = { class: "kong-ui-entities-targets-list" }, ra = { class: "target-address" }, oa = /* @__PURE__ */ se({
|
|
1353
1350
|
__name: "TargetsList",
|
|
1354
1351
|
props: {
|
|
1355
1352
|
/** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
|
|
@@ -1388,79 +1385,79 @@ const he = {
|
|
|
1388
1385
|
}
|
|
1389
1386
|
},
|
|
1390
1387
|
emits: ["error", "copy:success", "copy:error", "delete:success", "health-actions:healthy", "health-actions:unhealthy", "create:target", "update:target"],
|
|
1391
|
-
setup(a, { emit:
|
|
1392
|
-
var
|
|
1393
|
-
const
|
|
1388
|
+
setup(a, { emit: E }) {
|
|
1389
|
+
var P;
|
|
1390
|
+
const i = E, s = a, { i18n: { t: u } } = he.useI18n(), { axiosInstance: k } = we((P = s.config) == null ? void 0 : P.axiosRequestConfig), g = V(1), N = w(() => s.config.app !== "kongManager" || !!s.config.disableSorting), l = {
|
|
1394
1391
|
// the Target Address column is non-hidable
|
|
1395
1392
|
target: { label: u("targets.list.table_headers.target_address"), sortable: !0, hidable: !1 },
|
|
1396
1393
|
weight: { label: u("targets.list.table_headers.weight"), sortable: !0 },
|
|
1397
1394
|
tags: { label: u("targets.list.table_headers.tags"), sortable: !1 }
|
|
1398
|
-
}, c =
|
|
1399
|
-
var
|
|
1400
|
-
let
|
|
1401
|
-
return s.config.app === "konnect" ?
|
|
1402
|
-
}), { fetcher:
|
|
1395
|
+
}, c = w(() => {
|
|
1396
|
+
var d, r, o, Y;
|
|
1397
|
+
let _ = `${s.config.apiBaseUrl}${Se.list[s.config.app]}`;
|
|
1398
|
+
return s.config.app === "konnect" ? _ = _.replace(/{controlPlaneId}/gi, ((d = s.config) == null ? void 0 : d.controlPlaneId) || "").replace(/{upstreamId}/gi, ((r = s.config) == null ? void 0 : r.upstreamId) || "") : s.config.app === "kongManager" && (_ = _.replace(/\/{workspace}/gi, (o = s.config) != null && o.workspace ? `/${s.config.workspace}` : "").replace(/{upstreamId}/gi, ((Y = s.config) == null ? void 0 : Y.upstreamId) || "")), _;
|
|
1399
|
+
}), { fetcher: H, fetcherState: m } = mt(s.config, c.value), t = () => {
|
|
1403
1400
|
g.value++;
|
|
1404
|
-
},
|
|
1405
|
-
|
|
1406
|
-
},
|
|
1407
|
-
const
|
|
1408
|
-
if (!
|
|
1409
|
-
|
|
1410
|
-
entity:
|
|
1401
|
+
}, R = V(null), q = () => {
|
|
1402
|
+
$.value = !0;
|
|
1403
|
+
}, p = (_, d) => {
|
|
1404
|
+
const r = _.id;
|
|
1405
|
+
if (!d(r)) {
|
|
1406
|
+
i("copy:error", {
|
|
1407
|
+
entity: _,
|
|
1411
1408
|
field: "id",
|
|
1412
1409
|
message: u("targets.errors.copy")
|
|
1413
1410
|
});
|
|
1414
1411
|
return;
|
|
1415
1412
|
}
|
|
1416
|
-
|
|
1417
|
-
entity:
|
|
1413
|
+
i("copy:success", {
|
|
1414
|
+
entity: _,
|
|
1418
1415
|
field: "id",
|
|
1419
|
-
message: u("targets.copy.success", { val:
|
|
1416
|
+
message: u("targets.copy.success", { val: r })
|
|
1420
1417
|
});
|
|
1421
|
-
},
|
|
1422
|
-
const
|
|
1423
|
-
if (!
|
|
1424
|
-
|
|
1425
|
-
entity:
|
|
1418
|
+
}, S = (_, d) => {
|
|
1419
|
+
const r = JSON.stringify(_);
|
|
1420
|
+
if (!d(r)) {
|
|
1421
|
+
i("copy:error", {
|
|
1422
|
+
entity: _,
|
|
1426
1423
|
message: u("targets.errors.copy")
|
|
1427
1424
|
});
|
|
1428
1425
|
return;
|
|
1429
1426
|
}
|
|
1430
|
-
|
|
1431
|
-
entity:
|
|
1427
|
+
i("copy:success", {
|
|
1428
|
+
entity: _,
|
|
1432
1429
|
message: u("targets.copy.success_brief")
|
|
1433
1430
|
});
|
|
1434
|
-
},
|
|
1435
|
-
|
|
1436
|
-
},
|
|
1437
|
-
|
|
1438
|
-
},
|
|
1439
|
-
|
|
1440
|
-
},
|
|
1441
|
-
var
|
|
1442
|
-
if ((
|
|
1443
|
-
|
|
1431
|
+
}, W = (_) => {
|
|
1432
|
+
M.value = _, $.value = !0;
|
|
1433
|
+
}, A = (_) => s.config.app === "konnect" ? !1 : s.config.canMarkHealthy(_), X = (_) => s.config.app === "konnect" ? !1 : s.config.canMarkUnhealthy(_), z = V(void 0), v = V(!1), U = V(!1), I = V(""), O = ft(s.config, c.value), y = (_) => {
|
|
1434
|
+
z.value = _, v.value = !0;
|
|
1435
|
+
}, D = () => {
|
|
1436
|
+
v.value = !1;
|
|
1437
|
+
}, J = async () => {
|
|
1438
|
+
var _, d, r;
|
|
1439
|
+
if ((_ = z.value) != null && _.id) {
|
|
1440
|
+
U.value = !0;
|
|
1444
1441
|
try {
|
|
1445
|
-
await k.delete(
|
|
1446
|
-
} catch (
|
|
1447
|
-
|
|
1442
|
+
await k.delete(O(z.value.id)), U.value = !1, v.value = !1, g.value++, i("delete:success", z.value);
|
|
1443
|
+
} catch (o) {
|
|
1444
|
+
I.value = ((r = (d = o.response) == null ? void 0 : d.data) == null ? void 0 : r.message) || o.message || u("targets.errors.delete"), i("error", o);
|
|
1448
1445
|
} finally {
|
|
1449
|
-
|
|
1446
|
+
U.value = !1;
|
|
1450
1447
|
}
|
|
1451
1448
|
}
|
|
1452
|
-
}
|
|
1453
|
-
ce(m, (
|
|
1454
|
-
var
|
|
1455
|
-
if (
|
|
1456
|
-
|
|
1449
|
+
};
|
|
1450
|
+
ce(m, (_) => {
|
|
1451
|
+
var d, r, o;
|
|
1452
|
+
if (_.status === yt.Error) {
|
|
1453
|
+
R.value = {
|
|
1457
1454
|
title: u("targets.errors.general")
|
|
1458
|
-
}, (
|
|
1455
|
+
}, (o = (r = (d = _.error) == null ? void 0 : d.response) == null ? void 0 : r.data) != null && o.message && (R.value.message = _.error.response.data.message), i("error", _.error);
|
|
1459
1456
|
return;
|
|
1460
1457
|
}
|
|
1461
|
-
|
|
1458
|
+
R.value = null;
|
|
1462
1459
|
});
|
|
1463
|
-
const
|
|
1460
|
+
const te = V({
|
|
1464
1461
|
ctaText: void 0,
|
|
1465
1462
|
message: `${u("targets.list.empty_state.description")}${s.config.additionMessageForEmptyState ? ` ${s.config.additionMessageForEmptyState}` : ""}`,
|
|
1466
1463
|
title: u("targets.title"),
|
|
@@ -1469,10 +1466,10 @@ const he = {
|
|
|
1469
1466
|
ctaPath: s.config.createRoute
|
|
1470
1467
|
}
|
|
1471
1468
|
});
|
|
1472
|
-
|
|
1473
|
-
await s.canCreate() && (
|
|
1469
|
+
Pe(async () => {
|
|
1470
|
+
await s.canCreate() && (te.value.title = u("targets.list.empty_state.title"), te.value.ctaText = u("targets.actions.create"));
|
|
1474
1471
|
});
|
|
1475
|
-
const
|
|
1472
|
+
const le = w(() => ({
|
|
1476
1473
|
app: s.config.app,
|
|
1477
1474
|
apiBaseUrl: s.config.apiBaseUrl,
|
|
1478
1475
|
upstreamId: s.config.upstreamId,
|
|
@@ -1485,33 +1482,32 @@ const he = {
|
|
|
1485
1482
|
...s.config.app === "kongManager" && {
|
|
1486
1483
|
workspace: s.config.workspace
|
|
1487
1484
|
}
|
|
1488
|
-
})),
|
|
1489
|
-
|
|
1490
|
-
},
|
|
1491
|
-
|
|
1492
|
-
},
|
|
1493
|
-
|
|
1485
|
+
})), M = V(""), $ = V(!1), G = (_) => {
|
|
1486
|
+
M.value ? i("update:target", _) : i("create:target", _), C();
|
|
1487
|
+
}, C = () => {
|
|
1488
|
+
T(), g.value++;
|
|
1489
|
+
}, T = () => {
|
|
1490
|
+
$.value = !1, M.value = "";
|
|
1494
1491
|
};
|
|
1495
|
-
return (
|
|
1496
|
-
const
|
|
1497
|
-
return x(),
|
|
1498
|
-
h(e(
|
|
1492
|
+
return (_, d) => {
|
|
1493
|
+
const r = K("KButton"), o = K("KDropdownItem"), Y = K("KClipboardProvider");
|
|
1494
|
+
return x(), ae("div", ia, [
|
|
1495
|
+
h(e(gt), {
|
|
1499
1496
|
"cache-identifier": a.cacheIdentifier,
|
|
1500
|
-
"disable-sorting":
|
|
1501
|
-
"empty-state-options":
|
|
1497
|
+
"disable-sorting": N.value,
|
|
1498
|
+
"empty-state-options": te.value,
|
|
1502
1499
|
"enable-entity-actions": "",
|
|
1503
|
-
"error-message":
|
|
1504
|
-
fetcher: e(
|
|
1500
|
+
"error-message": R.value,
|
|
1501
|
+
fetcher: e(H),
|
|
1505
1502
|
"fetcher-cache-key": g.value,
|
|
1506
|
-
"hide-toolbar": U.value,
|
|
1507
1503
|
"pagination-type": "offset",
|
|
1508
1504
|
"preferences-storage-key": "kong-ui-entities-targets-list",
|
|
1509
1505
|
"table-headers": e(l),
|
|
1510
|
-
onEmptyStateCtaClicked:
|
|
1506
|
+
onEmptyStateCtaClicked: d[1] || (d[1] = () => s.config.createRoute ? void 0 : q()),
|
|
1511
1507
|
onSort: t
|
|
1512
1508
|
}, {
|
|
1513
1509
|
"toolbar-button": n(() => [
|
|
1514
|
-
(x(),
|
|
1510
|
+
(x(), B(dt, {
|
|
1515
1511
|
disabled: !a.useActionOutside,
|
|
1516
1512
|
to: "#kong-ui-app-page-header-action-button"
|
|
1517
1513
|
}, [
|
|
@@ -1519,58 +1515,56 @@ const he = {
|
|
|
1519
1515
|
"auth-function": () => a.canCreate()
|
|
1520
1516
|
}, {
|
|
1521
1517
|
default: n(() => [
|
|
1522
|
-
|
|
1518
|
+
h(r, {
|
|
1523
1519
|
appearance: "primary",
|
|
1524
1520
|
"data-testid": "toolbar-new-target",
|
|
1525
1521
|
size: a.useActionOutside ? "medium" : "large",
|
|
1526
1522
|
to: s.config.createRoute ? s.config.createRoute : void 0,
|
|
1527
|
-
onClick:
|
|
1523
|
+
onClick: d[0] || (d[0] = () => s.config.createRoute ? void 0 : q())
|
|
1528
1524
|
}, {
|
|
1529
1525
|
default: n(() => [
|
|
1530
|
-
h(e(
|
|
1531
|
-
|
|
1526
|
+
h(e(Ae)),
|
|
1527
|
+
Q(" " + f(e(u)("targets.list.toolbar_actions.new_target")), 1)
|
|
1532
1528
|
]),
|
|
1533
1529
|
_: 1
|
|
1534
|
-
}, 8, ["size", "to"])
|
|
1535
|
-
[ft, ae.value]
|
|
1536
|
-
])
|
|
1530
|
+
}, 8, ["size", "to"])
|
|
1537
1531
|
]),
|
|
1538
1532
|
_: 1
|
|
1539
1533
|
}, 8, ["auth-function"])
|
|
1540
1534
|
], 8, ["disabled"]))
|
|
1541
1535
|
]),
|
|
1542
|
-
target: n(({ rowValue:
|
|
1543
|
-
b("span",
|
|
1536
|
+
target: n(({ rowValue: j }) => [
|
|
1537
|
+
b("span", ra, f(j), 1)
|
|
1544
1538
|
]),
|
|
1545
|
-
tags: n(({ rowValue:
|
|
1546
|
-
h(e(
|
|
1539
|
+
tags: n(({ rowValue: j }) => [
|
|
1540
|
+
h(e(vt), {
|
|
1547
1541
|
"tag-max-width": "auto",
|
|
1548
|
-
tags:
|
|
1542
|
+
tags: j
|
|
1549
1543
|
}, null, 8, ["tags"])
|
|
1550
1544
|
]),
|
|
1551
|
-
actions: n(({ row:
|
|
1552
|
-
h(
|
|
1553
|
-
default: n(({ copyToClipboard:
|
|
1554
|
-
h(
|
|
1545
|
+
actions: n(({ row: j }) => [
|
|
1546
|
+
h(Y, null, {
|
|
1547
|
+
default: n(({ copyToClipboard: Z }) => [
|
|
1548
|
+
h(o, {
|
|
1555
1549
|
"data-testid": "action-entity-copy-id",
|
|
1556
|
-
onClick: (
|
|
1550
|
+
onClick: (ee) => p(j, Z)
|
|
1557
1551
|
}, {
|
|
1558
1552
|
default: n(() => [
|
|
1559
|
-
|
|
1553
|
+
Q(f(e(u)("targets.actions.copy_id")), 1)
|
|
1560
1554
|
]),
|
|
1561
1555
|
_: 2
|
|
1562
1556
|
}, 1032, ["onClick"])
|
|
1563
1557
|
]),
|
|
1564
1558
|
_: 2
|
|
1565
1559
|
}, 1024),
|
|
1566
|
-
h(
|
|
1567
|
-
default: n(({ copyToClipboard:
|
|
1568
|
-
h(
|
|
1560
|
+
h(Y, null, {
|
|
1561
|
+
default: n(({ copyToClipboard: Z }) => [
|
|
1562
|
+
h(o, {
|
|
1569
1563
|
"data-testid": "action-entity-copy-json",
|
|
1570
|
-
onClick: (
|
|
1564
|
+
onClick: (ee) => S(j, Z)
|
|
1571
1565
|
}, {
|
|
1572
1566
|
default: n(() => [
|
|
1573
|
-
|
|
1567
|
+
Q(f(e(u)("targets.actions.copy_json")), 1)
|
|
1574
1568
|
]),
|
|
1575
1569
|
_: 2
|
|
1576
1570
|
}, 1032, ["onClick"])
|
|
@@ -1578,16 +1572,16 @@ const he = {
|
|
|
1578
1572
|
_: 2
|
|
1579
1573
|
}, 1024),
|
|
1580
1574
|
h(e(ne), {
|
|
1581
|
-
"auth-function": () => a.canEdit(
|
|
1575
|
+
"auth-function": () => a.canEdit(j)
|
|
1582
1576
|
}, {
|
|
1583
1577
|
default: n(() => [
|
|
1584
|
-
h(
|
|
1578
|
+
h(o, {
|
|
1585
1579
|
"data-testid": "action-entity-edit",
|
|
1586
1580
|
"has-divider": "",
|
|
1587
|
-
onClick: (
|
|
1581
|
+
onClick: (Z) => W(j.id)
|
|
1588
1582
|
}, {
|
|
1589
1583
|
default: n(() => [
|
|
1590
|
-
|
|
1584
|
+
Q(f(e(u)("targets.actions.edit")), 1)
|
|
1591
1585
|
]),
|
|
1592
1586
|
_: 2
|
|
1593
1587
|
}, 1032, ["onClick"])
|
|
@@ -1595,15 +1589,15 @@ const he = {
|
|
|
1595
1589
|
_: 2
|
|
1596
1590
|
}, 1032, ["auth-function"]),
|
|
1597
1591
|
h(e(ne), {
|
|
1598
|
-
"auth-function": () =>
|
|
1592
|
+
"auth-function": () => A(j)
|
|
1599
1593
|
}, {
|
|
1600
1594
|
default: n(() => [
|
|
1601
|
-
h(
|
|
1595
|
+
h(o, {
|
|
1602
1596
|
"data-testid": "action-target-mark-healthy",
|
|
1603
|
-
onClick: (
|
|
1597
|
+
onClick: (Z) => i("health-actions:healthy", j)
|
|
1604
1598
|
}, {
|
|
1605
1599
|
default: n(() => [
|
|
1606
|
-
|
|
1600
|
+
Q(f(e(u)("targets.actions.mark_healthy")), 1)
|
|
1607
1601
|
]),
|
|
1608
1602
|
_: 2
|
|
1609
1603
|
}, 1032, ["onClick"])
|
|
@@ -1611,15 +1605,15 @@ const he = {
|
|
|
1611
1605
|
_: 2
|
|
1612
1606
|
}, 1032, ["auth-function"]),
|
|
1613
1607
|
h(e(ne), {
|
|
1614
|
-
"auth-function": () =>
|
|
1608
|
+
"auth-function": () => X(j)
|
|
1615
1609
|
}, {
|
|
1616
1610
|
default: n(() => [
|
|
1617
|
-
h(
|
|
1611
|
+
h(o, {
|
|
1618
1612
|
"data-testid": "action-target-mark-unhealthy",
|
|
1619
|
-
onClick: (
|
|
1613
|
+
onClick: (Z) => i("health-actions:unhealthy", j)
|
|
1620
1614
|
}, {
|
|
1621
1615
|
default: n(() => [
|
|
1622
|
-
|
|
1616
|
+
Q(f(e(u)("targets.actions.mark_unhealthy")), 1)
|
|
1623
1617
|
]),
|
|
1624
1618
|
_: 2
|
|
1625
1619
|
}, 1032, ["onClick"])
|
|
@@ -1627,17 +1621,17 @@ const he = {
|
|
|
1627
1621
|
_: 2
|
|
1628
1622
|
}, 1032, ["auth-function"]),
|
|
1629
1623
|
h(e(ne), {
|
|
1630
|
-
"auth-function": () => a.canDelete(
|
|
1624
|
+
"auth-function": () => a.canDelete(j)
|
|
1631
1625
|
}, {
|
|
1632
1626
|
default: n(() => [
|
|
1633
|
-
h(
|
|
1627
|
+
h(o, {
|
|
1634
1628
|
danger: "",
|
|
1635
1629
|
"data-testid": "action-entity-delete",
|
|
1636
1630
|
"has-divider": "",
|
|
1637
|
-
onClick: (
|
|
1631
|
+
onClick: (Z) => y(j)
|
|
1638
1632
|
}, {
|
|
1639
1633
|
default: n(() => [
|
|
1640
|
-
|
|
1634
|
+
Q(f(e(u)("targets.actions.delete")), 1)
|
|
1641
1635
|
]),
|
|
1642
1636
|
_: 2
|
|
1643
1637
|
}, 1032, ["onClick"])
|
|
@@ -1646,29 +1640,29 @@ const he = {
|
|
|
1646
1640
|
}, 1032, ["auth-function"])
|
|
1647
1641
|
]),
|
|
1648
1642
|
_: 1
|
|
1649
|
-
}, 8, ["cache-identifier", "disable-sorting", "empty-state-options", "error-message", "fetcher", "fetcher-cache-key", "
|
|
1650
|
-
h(e(
|
|
1651
|
-
"action-pending":
|
|
1643
|
+
}, 8, ["cache-identifier", "disable-sorting", "empty-state-options", "error-message", "fetcher", "fetcher-cache-key", "table-headers"]),
|
|
1644
|
+
h(e(bt), {
|
|
1645
|
+
"action-pending": U.value,
|
|
1652
1646
|
description: e(u)("targets.delete.description"),
|
|
1653
|
-
"entity-type": e(
|
|
1654
|
-
error:
|
|
1647
|
+
"entity-type": e(kt).Target,
|
|
1648
|
+
error: I.value,
|
|
1655
1649
|
"need-confirm": !1,
|
|
1656
1650
|
title: e(u)("targets.delete.title"),
|
|
1657
|
-
visible:
|
|
1658
|
-
onCancel:
|
|
1659
|
-
onProceed:
|
|
1651
|
+
visible: v.value,
|
|
1652
|
+
onCancel: D,
|
|
1653
|
+
onProceed: J
|
|
1660
1654
|
}, null, 8, ["action-pending", "description", "entity-type", "error", "title", "visible"]),
|
|
1661
|
-
h(
|
|
1662
|
-
config:
|
|
1663
|
-
"is-visible":
|
|
1664
|
-
"target-id":
|
|
1665
|
-
onCancel:
|
|
1666
|
-
onUpdate:
|
|
1667
|
-
},
|
|
1668
|
-
|
|
1655
|
+
h(sa, {
|
|
1656
|
+
config: le.value,
|
|
1657
|
+
"is-visible": $.value,
|
|
1658
|
+
"target-id": M.value,
|
|
1659
|
+
onCancel: T,
|
|
1660
|
+
onUpdate: G
|
|
1661
|
+
}, xt({ _: 2 }, [
|
|
1662
|
+
_.$slots["form-info"] ? {
|
|
1669
1663
|
name: "info",
|
|
1670
1664
|
fn: n(() => [
|
|
1671
|
-
|
|
1665
|
+
pt(_.$slots, "form-info", {}, void 0, !0)
|
|
1672
1666
|
]),
|
|
1673
1667
|
key: "0"
|
|
1674
1668
|
} : void 0
|
|
@@ -1676,7 +1670,7 @@ const he = {
|
|
|
1676
1670
|
]);
|
|
1677
1671
|
};
|
|
1678
1672
|
}
|
|
1679
|
-
}),
|
|
1673
|
+
}), Qa = /* @__PURE__ */ ue(oa, [["__scopeId", "data-v-9826b7b2"]]), na = { key: 1 }, ha = /* @__PURE__ */ se({
|
|
1680
1674
|
__name: "UpstreamsFormGeneralInfo",
|
|
1681
1675
|
props: {
|
|
1682
1676
|
config: {
|
|
@@ -1706,88 +1700,88 @@ const he = {
|
|
|
1706
1700
|
}
|
|
1707
1701
|
},
|
|
1708
1702
|
emits: ["update:name", "update:host-header", "update:client-certificate", "update:tags"],
|
|
1709
|
-
setup(a, { emit:
|
|
1710
|
-
var D, J,
|
|
1711
|
-
const { i18nT:
|
|
1703
|
+
setup(a, { emit: E }) {
|
|
1704
|
+
var D, J, te, le;
|
|
1705
|
+
const { i18nT: i, i18n: { t: s } } = he.useI18n(), u = a, k = E, {
|
|
1712
1706
|
debouncedQueryChange: g,
|
|
1713
|
-
loading:
|
|
1707
|
+
loading: N,
|
|
1714
1708
|
loadItems: F,
|
|
1715
1709
|
results: l,
|
|
1716
1710
|
allRecords: c
|
|
1717
|
-
} =
|
|
1711
|
+
} = ht(u.config, (J = ge.form[(D = u.config) == null ? void 0 : D.app]) == null ? void 0 : J.getServices, "", {
|
|
1718
1712
|
fetchedItemsKey: "data",
|
|
1719
1713
|
searchKeys: ["host"]
|
|
1720
1714
|
}), {
|
|
1721
|
-
debouncedQueryChange:
|
|
1715
|
+
debouncedQueryChange: H,
|
|
1722
1716
|
loading: m,
|
|
1723
1717
|
loadItems: t,
|
|
1724
|
-
results:
|
|
1725
|
-
} =
|
|
1726
|
-
var
|
|
1727
|
-
return !!u.name && !((
|
|
1728
|
-
}),
|
|
1729
|
-
var
|
|
1730
|
-
const
|
|
1731
|
-
return (
|
|
1732
|
-
|
|
1718
|
+
results: R
|
|
1719
|
+
} = ht(u.config, (le = ge.form[(te = u.config) == null ? void 0 : te.app]) == null ? void 0 : le.getCertificates), q = V(""), p = w(() => {
|
|
1720
|
+
var M;
|
|
1721
|
+
return !!u.name && !((M = c.value) != null && M.some(($) => $.host === u.name));
|
|
1722
|
+
}), S = w(() => {
|
|
1723
|
+
var $, G, C;
|
|
1724
|
+
const M = p.value && u.name.includes(($ = q.value) == null ? void 0 : $.toLowerCase());
|
|
1725
|
+
return (C = l.value) == null ? void 0 : C.map((T) => ({ label: T.host, value: T.id })).concat(
|
|
1726
|
+
M ? [{ label: u.name, value: ((G = X.value) == null ? void 0 : G.value) || u.name }] : []
|
|
1733
1727
|
);
|
|
1734
|
-
}),
|
|
1735
|
-
var
|
|
1736
|
-
return (
|
|
1737
|
-
}),
|
|
1738
|
-
var
|
|
1739
|
-
return ((
|
|
1740
|
-
}), v = (
|
|
1741
|
-
|
|
1742
|
-
},
|
|
1743
|
-
|
|
1744
|
-
},
|
|
1745
|
-
|
|
1746
|
-
},
|
|
1747
|
-
|
|
1748
|
-
}, y =
|
|
1749
|
-
return
|
|
1750
|
-
var
|
|
1728
|
+
}), W = w(() => {
|
|
1729
|
+
var M;
|
|
1730
|
+
return (M = R.value) == null ? void 0 : M.map(($) => ({ label: $.id, value: $.id }));
|
|
1731
|
+
}), A = V(""), X = V({ value: "", label: "" }), z = w(() => {
|
|
1732
|
+
var M, $;
|
|
1733
|
+
return ((M = S.value.find((G) => G.value === A.value)) == null ? void 0 : M.label) || (($ = X.value) == null ? void 0 : $.label);
|
|
1734
|
+
}), v = (M) => {
|
|
1735
|
+
q.value = M, g(M);
|
|
1736
|
+
}, U = (M) => {
|
|
1737
|
+
X.value = M;
|
|
1738
|
+
}, I = () => {
|
|
1739
|
+
X.value = { value: "", label: "" };
|
|
1740
|
+
}, O = (M) => {
|
|
1741
|
+
A.value = M, k("update:name", z.value);
|
|
1742
|
+
}, y = V(!1);
|
|
1743
|
+
return Pe(async () => {
|
|
1744
|
+
var M, $;
|
|
1751
1745
|
try {
|
|
1752
|
-
y.value = !0, await F(), u.name && (
|
|
1746
|
+
y.value = !0, await F(), u.name && (A.value = (($ = (M = S.value.find((G) => G.label === u.name)) == null ? void 0 : M.value) == null ? void 0 : $.toString()) || u.name), await t();
|
|
1753
1747
|
} finally {
|
|
1754
1748
|
y.value = !1;
|
|
1755
1749
|
}
|
|
1756
|
-
}), (
|
|
1757
|
-
const
|
|
1758
|
-
return x(),
|
|
1750
|
+
}), (M, $) => {
|
|
1751
|
+
const G = K("KSkeleton"), C = K("KSelect"), T = K("KInput");
|
|
1752
|
+
return x(), B(e(_e), {
|
|
1759
1753
|
class: "kong-ui-entities-upstreams-general-info",
|
|
1760
1754
|
description: e(s)("upstreams.form.general_info.help"),
|
|
1761
1755
|
title: e(s)("upstreams.form.general_info.title")
|
|
1762
1756
|
}, {
|
|
1763
1757
|
default: n(() => [
|
|
1764
|
-
y.value ? (x(),
|
|
1758
|
+
y.value ? (x(), B(G, {
|
|
1765
1759
|
key: 0,
|
|
1766
1760
|
type: "form"
|
|
1767
|
-
})) : (x(),
|
|
1768
|
-
h(
|
|
1761
|
+
})) : (x(), ae("div", na, [
|
|
1762
|
+
h(C, {
|
|
1769
1763
|
class: "name-select margin-bottom-6",
|
|
1770
1764
|
clearable: "",
|
|
1771
1765
|
"data-testid": "upstreams-form-name",
|
|
1772
1766
|
"enable-filtering": "",
|
|
1773
1767
|
"enable-item-creation": "",
|
|
1774
1768
|
"filter-function": () => !0,
|
|
1775
|
-
items:
|
|
1769
|
+
items: S.value,
|
|
1776
1770
|
label: e(s)("upstreams.form.fields.name.label"),
|
|
1777
1771
|
"label-attributes": { tooltipAttributes: { "max-width": "400" } },
|
|
1778
|
-
loading: e(
|
|
1779
|
-
"model-value":
|
|
1772
|
+
loading: e(N),
|
|
1773
|
+
"model-value": A.value,
|
|
1780
1774
|
placeholder: e(s)("upstreams.form.fields.name.placeholder"),
|
|
1781
1775
|
readonly: a.readonly,
|
|
1782
1776
|
required: "",
|
|
1783
1777
|
width: "100%",
|
|
1784
|
-
onItemAdded:
|
|
1785
|
-
onItemRemoved:
|
|
1778
|
+
onItemAdded: U,
|
|
1779
|
+
onItemRemoved: I,
|
|
1786
1780
|
onQueryChange: v,
|
|
1787
|
-
"onUpdate:modelValue":
|
|
1781
|
+
"onUpdate:modelValue": O
|
|
1788
1782
|
}, {
|
|
1789
1783
|
"label-tooltip": n(() => [
|
|
1790
|
-
h(e(
|
|
1784
|
+
h(e(i), {
|
|
1791
1785
|
keypath: "upstreams.form.fields.name.tooltip",
|
|
1792
1786
|
scope: "global"
|
|
1793
1787
|
}, {
|
|
@@ -1799,7 +1793,7 @@ const he = {
|
|
|
1799
1793
|
]),
|
|
1800
1794
|
_: 1
|
|
1801
1795
|
}, 8, ["items", "label", "loading", "model-value", "placeholder", "readonly", "onUpdate:modelValue"]),
|
|
1802
|
-
h(
|
|
1796
|
+
h(T, {
|
|
1803
1797
|
autocomplete: "off",
|
|
1804
1798
|
class: "margin-bottom-6",
|
|
1805
1799
|
"data-testid": "upstreams-form-host-header",
|
|
@@ -1807,15 +1801,15 @@ const he = {
|
|
|
1807
1801
|
"model-value": a.hostHeader,
|
|
1808
1802
|
readonly: a.readonly,
|
|
1809
1803
|
type: "text",
|
|
1810
|
-
"onUpdate:modelValue":
|
|
1804
|
+
"onUpdate:modelValue": $[0] || ($[0] = (P) => k("update:host-header", P))
|
|
1811
1805
|
}, null, 8, ["label", "model-value", "readonly"]),
|
|
1812
|
-
h(
|
|
1806
|
+
h(C, {
|
|
1813
1807
|
class: "certificate-select margin-bottom-6",
|
|
1814
1808
|
clearable: "",
|
|
1815
1809
|
"data-testid": "upstreams-form-client-certificate",
|
|
1816
1810
|
"enable-filtering": "",
|
|
1817
1811
|
"filter-function": () => !0,
|
|
1818
|
-
items:
|
|
1812
|
+
items: W.value,
|
|
1819
1813
|
label: e(s)("upstreams.form.fields.client_certificate.label"),
|
|
1820
1814
|
"label-attributes": {
|
|
1821
1815
|
info: e(s)("upstreams.form.fields.client_certificate.tooltip"),
|
|
@@ -1826,10 +1820,10 @@ const he = {
|
|
|
1826
1820
|
placeholder: e(s)("upstreams.form.fields.client_certificate.placeholder"),
|
|
1827
1821
|
readonly: a.readonly,
|
|
1828
1822
|
width: "100%",
|
|
1829
|
-
onQueryChange: e(
|
|
1830
|
-
"onUpdate:modelValue":
|
|
1823
|
+
onQueryChange: e(H),
|
|
1824
|
+
"onUpdate:modelValue": $[1] || ($[1] = (P) => k("update:client-certificate", P))
|
|
1831
1825
|
}, null, 8, ["items", "label", "label-attributes", "loading", "model-value", "placeholder", "readonly", "onQueryChange"]),
|
|
1832
|
-
h(
|
|
1826
|
+
h(T, {
|
|
1833
1827
|
autocomplete: "off",
|
|
1834
1828
|
"data-testid": "upstreams-form-tags",
|
|
1835
1829
|
help: e(s)("upstreams.form.fields.tags.help"),
|
|
@@ -1842,7 +1836,7 @@ const he = {
|
|
|
1842
1836
|
placeholder: e(s)("upstreams.form.fields.tags.placeholder"),
|
|
1843
1837
|
readonly: a.readonly,
|
|
1844
1838
|
type: "text",
|
|
1845
|
-
"onUpdate:modelValue":
|
|
1839
|
+
"onUpdate:modelValue": $[2] || ($[2] = (P) => k("update:tags", P))
|
|
1846
1840
|
}, null, 8, ["help", "label", "label-attributes", "model-value", "placeholder", "readonly"])
|
|
1847
1841
|
]))
|
|
1848
1842
|
]),
|
|
@@ -1850,10 +1844,10 @@ const he = {
|
|
|
1850
1844
|
}, 8, ["description", "title"]);
|
|
1851
1845
|
};
|
|
1852
1846
|
}
|
|
1853
|
-
}),
|
|
1847
|
+
}), ua = /* @__PURE__ */ ue(ha, [["__scopeId", "data-v-626ed41f"]]), Te = {
|
|
1854
1848
|
upstreamObject: "https://docs.konghq.com/gateway/latest/admin-api/#upstream-object",
|
|
1855
1849
|
loadBalancing: "https://docs.konghq.com/gateway/latest/how-kong-works/load-balancing/#main"
|
|
1856
|
-
},
|
|
1850
|
+
}, ca = { class: "fields-group-title" }, da = { class: "fields-group-text" }, pa = { class: "fields-group-title" }, ma = { class: "fields-group-text" }, fa = /* @__PURE__ */ se({
|
|
1857
1851
|
__name: "UpstreamsFormLoadBalancing",
|
|
1858
1852
|
props: {
|
|
1859
1853
|
algorithm: {
|
|
@@ -1911,8 +1905,8 @@ const he = {
|
|
|
1911
1905
|
}
|
|
1912
1906
|
},
|
|
1913
1907
|
emits: ["update:algorithm", "update:slots", "update:hash-on", "update:hash-fallback", "update:hash-on-header", "update:hash-on-cookie", "update:hash-on-cookie-path", "update:hash-on-query-argument", "update:hash-on-uri-capture", "update:hash-fallback-header", "update:hash-fallback-query-argument", "update:hash-fallback-uri-capture"],
|
|
1914
|
-
setup(a, { emit:
|
|
1915
|
-
const { i18nT:
|
|
1908
|
+
setup(a, { emit: E }) {
|
|
1909
|
+
const { i18nT: i, i18n: { t: s } } = he.useI18n(), { inRange: u } = Fe(), k = a, g = E, N = V([
|
|
1916
1910
|
{
|
|
1917
1911
|
label: s("upstreams.form.algorithms.round_robin_label"),
|
|
1918
1912
|
value: "round-robin",
|
|
@@ -1933,7 +1927,7 @@ const he = {
|
|
|
1933
1927
|
value: "latency",
|
|
1934
1928
|
selected: !1
|
|
1935
1929
|
}
|
|
1936
|
-
]), F =
|
|
1930
|
+
]), F = V([
|
|
1937
1931
|
{
|
|
1938
1932
|
label: s("upstreams.form.hash_labels.none"),
|
|
1939
1933
|
value: "none",
|
|
@@ -1975,70 +1969,70 @@ const he = {
|
|
|
1975
1969
|
selected: !1
|
|
1976
1970
|
}
|
|
1977
1971
|
]);
|
|
1978
|
-
ce(() => k.hashOn, (
|
|
1979
|
-
m === "header" &&
|
|
1980
|
-
}), ce(() => k.hashFallback, (
|
|
1981
|
-
m === "header" &&
|
|
1972
|
+
ce(() => k.hashOn, (H, m) => {
|
|
1973
|
+
m === "header" && H !== m && g("update:hash-on-header", ""), m === "cookie" && H !== m && (g("update:hash-on-cookie", ""), g("update:hash-on-cookie-path", "/")), m === "query_arg" && H !== m && g("update:hash-on-query-argument", ""), m === "uri_capture" && H !== m && g("update:hash-on-uri-capture", ""), (H === "cookie" || H === "none") && (g("update:hash-fallback", "none"), g("update:hash-fallback-header", ""), g("update:hash-fallback-query-argument", ""), g("update:hash-fallback-uri-capture", ""));
|
|
1974
|
+
}), ce(() => k.hashFallback, (H, m) => {
|
|
1975
|
+
m === "header" && H !== m && g("update:hash-fallback-header", ""), m === "cookie" && H !== m && (g("update:hash-on-cookie", ""), g("update:hash-on-cookie-path", "/")), m === "query_arg" && H !== m && g("update:hash-fallback-query-argument", ""), m === "uri_capture" && H !== m && g("update:hash-fallback-uri-capture", "");
|
|
1982
1976
|
});
|
|
1983
|
-
const l =
|
|
1984
|
-
return (
|
|
1985
|
-
const t =
|
|
1986
|
-
return x(),
|
|
1977
|
+
const l = w(() => k.hashOn === "cookie" || k.hashOn === "none"), c = w(() => k.slots ? u(k.slots, Oe, $e) ? "" : s("upstreams.form.errors.in_range") : "");
|
|
1978
|
+
return (H, m) => {
|
|
1979
|
+
const t = K("KExternalLink"), R = K("KSelect"), q = K("KInput"), p = K("KCard");
|
|
1980
|
+
return x(), B(e(_e), {
|
|
1987
1981
|
class: "kong-ui-entities-upstreams-load-balancing",
|
|
1988
1982
|
title: e(s)("upstreams.form.load_balancing.title")
|
|
1989
1983
|
}, {
|
|
1990
1984
|
description: n(() => [
|
|
1991
1985
|
b("p", null, [
|
|
1992
|
-
|
|
1986
|
+
Q(f(e(s)("upstreams.form.load_balancing.help")) + " ", 1),
|
|
1993
1987
|
h(t, {
|
|
1994
1988
|
"hide-icon": "",
|
|
1995
|
-
href: e(
|
|
1989
|
+
href: e(Te).upstreamObject
|
|
1996
1990
|
}, {
|
|
1997
1991
|
default: n(() => [
|
|
1998
|
-
|
|
1992
|
+
Q(f(e(s)("upstreams.form.buttons.view_documentation")), 1)
|
|
1999
1993
|
]),
|
|
2000
1994
|
_: 1
|
|
2001
1995
|
}, 8, ["href"])
|
|
2002
1996
|
])
|
|
2003
1997
|
]),
|
|
2004
1998
|
default: n(() => [
|
|
2005
|
-
h(
|
|
1999
|
+
h(R, {
|
|
2006
2000
|
class: "algorithm-select",
|
|
2007
|
-
items:
|
|
2001
|
+
items: N.value,
|
|
2008
2002
|
label: e(s)("upstreams.form.fields.algorithm.label"),
|
|
2009
2003
|
"model-value": a.algorithm,
|
|
2010
2004
|
readonly: a.readonly,
|
|
2011
2005
|
width: "100%",
|
|
2012
|
-
"onUpdate:modelValue": m[0] || (m[0] = (
|
|
2006
|
+
"onUpdate:modelValue": m[0] || (m[0] = (S) => g("update:algorithm", S))
|
|
2013
2007
|
}, null, 8, ["items", "label", "model-value", "readonly"]),
|
|
2014
|
-
h(
|
|
2008
|
+
h(q, {
|
|
2015
2009
|
autocomplete: "off",
|
|
2016
2010
|
"data-testid": "upstreams-form-slots",
|
|
2017
2011
|
error: !!c.value,
|
|
2018
2012
|
"error-message": c.value,
|
|
2019
2013
|
help: e(s)("upstreams.form.fields.slots.help"),
|
|
2020
2014
|
label: e(s)("upstreams.form.fields.slots.label"),
|
|
2021
|
-
max: e(
|
|
2022
|
-
min: e(
|
|
2015
|
+
max: e($e),
|
|
2016
|
+
min: e(Oe),
|
|
2023
2017
|
"model-value": a.slots,
|
|
2024
2018
|
readonly: a.readonly,
|
|
2025
2019
|
type: "number",
|
|
2026
|
-
"onUpdate:modelValue": m[1] || (m[1] = (
|
|
2020
|
+
"onUpdate:modelValue": m[1] || (m[1] = (S) => g("update:slots", S))
|
|
2027
2021
|
}, null, 8, ["error", "error-message", "help", "label", "max", "min", "model-value", "readonly"]),
|
|
2028
2022
|
h(p, null, {
|
|
2029
2023
|
default: n(() => [
|
|
2030
|
-
b("h5",
|
|
2031
|
-
b("p",
|
|
2032
|
-
h(
|
|
2024
|
+
b("h5", ca, f(e(s)("upstreams.form.fields.hash_on.label")), 1),
|
|
2025
|
+
b("p", da, f(e(s)("upstreams.form.fields.hash_on.help")), 1),
|
|
2026
|
+
h(R, {
|
|
2033
2027
|
class: "hash-on-select",
|
|
2034
2028
|
items: F.value,
|
|
2035
2029
|
label: e(s)("upstreams.form.fields.hash_on.label"),
|
|
2036
2030
|
"model-value": a.hashOn,
|
|
2037
2031
|
readonly: a.readonly,
|
|
2038
2032
|
width: "100%",
|
|
2039
|
-
"onUpdate:modelValue": m[2] || (m[2] = (
|
|
2033
|
+
"onUpdate:modelValue": m[2] || (m[2] = (S) => g("update:hash-on", S))
|
|
2040
2034
|
}, null, 8, ["items", "label", "model-value", "readonly"]),
|
|
2041
|
-
a.hashOn === "header" ? (x(),
|
|
2035
|
+
a.hashOn === "header" ? (x(), B(q, {
|
|
2042
2036
|
key: 0,
|
|
2043
2037
|
autocomplete: "off",
|
|
2044
2038
|
class: "margin-top-6",
|
|
@@ -2048,10 +2042,10 @@ const he = {
|
|
|
2048
2042
|
readonly: a.readonly,
|
|
2049
2043
|
required: "",
|
|
2050
2044
|
type: "text",
|
|
2051
|
-
"onUpdate:modelValue": m[3] || (m[3] = (
|
|
2052
|
-
}, null, 8, ["label", "model-value", "readonly"])) :
|
|
2053
|
-
a.hashOn === "cookie" ? (x(),
|
|
2054
|
-
h(
|
|
2045
|
+
"onUpdate:modelValue": m[3] || (m[3] = (S) => g("update:hash-on-header", S))
|
|
2046
|
+
}, null, 8, ["label", "model-value", "readonly"])) : L("", !0),
|
|
2047
|
+
a.hashOn === "cookie" ? (x(), ae(Ie, { key: 1 }, [
|
|
2048
|
+
h(q, {
|
|
2055
2049
|
autocomplete: "off",
|
|
2056
2050
|
class: "margin-top-6",
|
|
2057
2051
|
"data-testid": "upstreams-form-hash-on-cookie",
|
|
@@ -2060,9 +2054,9 @@ const he = {
|
|
|
2060
2054
|
readonly: a.readonly,
|
|
2061
2055
|
required: "",
|
|
2062
2056
|
type: "text",
|
|
2063
|
-
"onUpdate:modelValue": m[4] || (m[4] = (
|
|
2057
|
+
"onUpdate:modelValue": m[4] || (m[4] = (S) => g("update:hash-on-cookie", S))
|
|
2064
2058
|
}, null, 8, ["label", "model-value", "readonly"]),
|
|
2065
|
-
h(
|
|
2059
|
+
h(q, {
|
|
2066
2060
|
autocomplete: "off",
|
|
2067
2061
|
class: "margin-top-6",
|
|
2068
2062
|
"data-testid": "upstreams-form-hash-on-cookie-path",
|
|
@@ -2071,10 +2065,10 @@ const he = {
|
|
|
2071
2065
|
readonly: a.readonly,
|
|
2072
2066
|
required: "",
|
|
2073
2067
|
type: "text",
|
|
2074
|
-
"onUpdate:modelValue": m[5] || (m[5] = (
|
|
2068
|
+
"onUpdate:modelValue": m[5] || (m[5] = (S) => g("update:hash-on-cookie-path", S))
|
|
2075
2069
|
}, null, 8, ["label", "model-value", "readonly"])
|
|
2076
|
-
], 64)) :
|
|
2077
|
-
a.hashOn === "query_arg" ? (x(),
|
|
2070
|
+
], 64)) : L("", !0),
|
|
2071
|
+
a.hashOn === "query_arg" ? (x(), B(q, {
|
|
2078
2072
|
key: 2,
|
|
2079
2073
|
autocomplete: "off",
|
|
2080
2074
|
class: "margin-top-6",
|
|
@@ -2084,9 +2078,9 @@ const he = {
|
|
|
2084
2078
|
readonly: a.readonly,
|
|
2085
2079
|
required: "",
|
|
2086
2080
|
type: "text",
|
|
2087
|
-
"onUpdate:modelValue": m[6] || (m[6] = (
|
|
2088
|
-
}, null, 8, ["label", "model-value", "readonly"])) :
|
|
2089
|
-
a.hashOn === "uri_capture" ? (x(),
|
|
2081
|
+
"onUpdate:modelValue": m[6] || (m[6] = (S) => g("update:hash-on-query-argument", S))
|
|
2082
|
+
}, null, 8, ["label", "model-value", "readonly"])) : L("", !0),
|
|
2083
|
+
a.hashOn === "uri_capture" ? (x(), B(q, {
|
|
2090
2084
|
key: 3,
|
|
2091
2085
|
autocomplete: "off",
|
|
2092
2086
|
class: "margin-top-6",
|
|
@@ -2096,16 +2090,16 @@ const he = {
|
|
|
2096
2090
|
readonly: a.readonly,
|
|
2097
2091
|
required: "",
|
|
2098
2092
|
type: "text",
|
|
2099
|
-
"onUpdate:modelValue": m[7] || (m[7] = (
|
|
2100
|
-
}, null, 8, ["label", "model-value", "readonly"])) :
|
|
2093
|
+
"onUpdate:modelValue": m[7] || (m[7] = (S) => g("update:hash-on-uri-capture", S))
|
|
2094
|
+
}, null, 8, ["label", "model-value", "readonly"])) : L("", !0)
|
|
2101
2095
|
]),
|
|
2102
2096
|
_: 1
|
|
2103
2097
|
}),
|
|
2104
2098
|
h(p, null, {
|
|
2105
2099
|
default: n(() => [
|
|
2106
|
-
b("h5",
|
|
2107
|
-
b("p",
|
|
2108
|
-
h(
|
|
2100
|
+
b("h5", pa, f(e(s)("upstreams.form.fields.hash_fallback.label")), 1),
|
|
2101
|
+
b("p", ma, f(e(s)("upstreams.form.fields.hash_fallback.help")), 1),
|
|
2102
|
+
h(R, {
|
|
2109
2103
|
class: "hash-fallback-select",
|
|
2110
2104
|
disabled: l.value,
|
|
2111
2105
|
items: F.value,
|
|
@@ -2114,10 +2108,10 @@ const he = {
|
|
|
2114
2108
|
"model-value": a.hashFallback,
|
|
2115
2109
|
readonly: a.readonly,
|
|
2116
2110
|
width: "100%",
|
|
2117
|
-
"onUpdate:modelValue": m[8] || (m[8] = (
|
|
2111
|
+
"onUpdate:modelValue": m[8] || (m[8] = (S) => g("update:hash-fallback", S))
|
|
2118
2112
|
}, {
|
|
2119
2113
|
"label-tooltip": n(() => [
|
|
2120
|
-
h(e(
|
|
2114
|
+
h(e(i), {
|
|
2121
2115
|
keypath: "upstreams.form.fields.hash_fallback.tooltip",
|
|
2122
2116
|
scope: "global"
|
|
2123
2117
|
}, {
|
|
@@ -2132,7 +2126,7 @@ const he = {
|
|
|
2132
2126
|
]),
|
|
2133
2127
|
_: 1
|
|
2134
2128
|
}, 8, ["disabled", "items", "label", "model-value", "readonly"]),
|
|
2135
|
-
a.hashFallback === "header" ? (x(),
|
|
2129
|
+
a.hashFallback === "header" ? (x(), B(q, {
|
|
2136
2130
|
key: 0,
|
|
2137
2131
|
autocomplete: "off",
|
|
2138
2132
|
class: "margin-top-6",
|
|
@@ -2142,10 +2136,10 @@ const he = {
|
|
|
2142
2136
|
readonly: a.readonly,
|
|
2143
2137
|
required: "",
|
|
2144
2138
|
type: "text",
|
|
2145
|
-
"onUpdate:modelValue": m[9] || (m[9] = (
|
|
2146
|
-
}, null, 8, ["label", "model-value", "readonly"])) :
|
|
2147
|
-
a.hashFallback === "cookie" ? (x(),
|
|
2148
|
-
h(
|
|
2139
|
+
"onUpdate:modelValue": m[9] || (m[9] = (S) => g("update:hash-fallback-header", S))
|
|
2140
|
+
}, null, 8, ["label", "model-value", "readonly"])) : L("", !0),
|
|
2141
|
+
a.hashFallback === "cookie" ? (x(), ae(Ie, { key: 1 }, [
|
|
2142
|
+
h(q, {
|
|
2149
2143
|
autocomplete: "off",
|
|
2150
2144
|
class: "margin-top-6",
|
|
2151
2145
|
"data-testid": "upstreams-form-hash-on-cookie",
|
|
@@ -2154,9 +2148,9 @@ const he = {
|
|
|
2154
2148
|
readonly: a.readonly,
|
|
2155
2149
|
required: "",
|
|
2156
2150
|
type: "text",
|
|
2157
|
-
"onUpdate:modelValue": m[10] || (m[10] = (
|
|
2151
|
+
"onUpdate:modelValue": m[10] || (m[10] = (S) => g("update:hash-on-cookie", S))
|
|
2158
2152
|
}, null, 8, ["label", "model-value", "readonly"]),
|
|
2159
|
-
h(
|
|
2153
|
+
h(q, {
|
|
2160
2154
|
autocomplete: "off",
|
|
2161
2155
|
class: "margin-top-6",
|
|
2162
2156
|
"data-testid": "upstreams-form-hash-on-cookie-path",
|
|
@@ -2165,10 +2159,10 @@ const he = {
|
|
|
2165
2159
|
readonly: a.readonly,
|
|
2166
2160
|
required: "",
|
|
2167
2161
|
type: "text",
|
|
2168
|
-
"onUpdate:modelValue": m[11] || (m[11] = (
|
|
2162
|
+
"onUpdate:modelValue": m[11] || (m[11] = (S) => g("update:hash-on-cookie-path", S))
|
|
2169
2163
|
}, null, 8, ["label", "model-value", "readonly"])
|
|
2170
|
-
], 64)) :
|
|
2171
|
-
a.hashFallback === "query_arg" ? (x(),
|
|
2164
|
+
], 64)) : L("", !0),
|
|
2165
|
+
a.hashFallback === "query_arg" ? (x(), B(q, {
|
|
2172
2166
|
key: 2,
|
|
2173
2167
|
autocomplete: "off",
|
|
2174
2168
|
class: "margin-top-6",
|
|
@@ -2178,9 +2172,9 @@ const he = {
|
|
|
2178
2172
|
readonly: a.readonly,
|
|
2179
2173
|
required: "",
|
|
2180
2174
|
type: "text",
|
|
2181
|
-
"onUpdate:modelValue": m[12] || (m[12] = (
|
|
2182
|
-
}, null, 8, ["label", "model-value", "readonly"])) :
|
|
2183
|
-
a.hashFallback === "uri_capture" ? (x(),
|
|
2175
|
+
"onUpdate:modelValue": m[12] || (m[12] = (S) => g("update:hash-fallback-query-argument", S))
|
|
2176
|
+
}, null, 8, ["label", "model-value", "readonly"])) : L("", !0),
|
|
2177
|
+
a.hashFallback === "uri_capture" ? (x(), B(q, {
|
|
2184
2178
|
key: 3,
|
|
2185
2179
|
autocomplete: "off",
|
|
2186
2180
|
class: "margin-top-6",
|
|
@@ -2190,8 +2184,8 @@ const he = {
|
|
|
2190
2184
|
readonly: a.readonly,
|
|
2191
2185
|
required: "",
|
|
2192
2186
|
type: "text",
|
|
2193
|
-
"onUpdate:modelValue": m[13] || (m[13] = (
|
|
2194
|
-
}, null, 8, ["label", "model-value", "readonly"])) :
|
|
2187
|
+
"onUpdate:modelValue": m[13] || (m[13] = (S) => g("update:hash-fallback-uri-capture", S))
|
|
2188
|
+
}, null, 8, ["label", "model-value", "readonly"])) : L("", !0)
|
|
2195
2189
|
]),
|
|
2196
2190
|
_: 1
|
|
2197
2191
|
})
|
|
@@ -2200,7 +2194,7 @@ const he = {
|
|
|
2200
2194
|
}, 8, ["title"]);
|
|
2201
2195
|
};
|
|
2202
2196
|
}
|
|
2203
|
-
}),
|
|
2197
|
+
}), ya = /* @__PURE__ */ ue(fa, [["__scopeId", "data-v-d662db8e"]]), ga = { class: "fields-group-title" }, va = { class: "fields-group-text" }, ba = { class: "fields-group-title" }, ka = { class: "fields-group-text" }, _a = /* @__PURE__ */ se({
|
|
2204
2198
|
__name: "UpstreamsFormHealthChecks",
|
|
2205
2199
|
props: {
|
|
2206
2200
|
activeHealthSwitch: {
|
|
@@ -2222,23 +2216,23 @@ const he = {
|
|
|
2222
2216
|
}
|
|
2223
2217
|
},
|
|
2224
2218
|
emits: ["update:active-health-switch", "update:passive-health-switch", "update:healthchecks-threshold"],
|
|
2225
|
-
setup(a, { emit:
|
|
2226
|
-
const { i18n: { t:
|
|
2219
|
+
setup(a, { emit: E }) {
|
|
2220
|
+
const { i18n: { t: i } } = he.useI18n(), s = E;
|
|
2227
2221
|
return (u, k) => {
|
|
2228
|
-
const g =
|
|
2229
|
-
return x(),
|
|
2222
|
+
const g = K("KExternalLink"), N = K("KInputSwitch"), F = K("KCard"), l = K("KInput");
|
|
2223
|
+
return x(), B(e(_e), {
|
|
2230
2224
|
class: "kong-ui-entities-upstreams-healthchecks",
|
|
2231
|
-
title: e(
|
|
2225
|
+
title: e(i)("upstreams.form.health_check.title")
|
|
2232
2226
|
}, {
|
|
2233
2227
|
description: n(() => [
|
|
2234
2228
|
b("p", null, [
|
|
2235
|
-
|
|
2229
|
+
Q(f(e(i)("upstreams.form.health_check.help")) + " ", 1),
|
|
2236
2230
|
h(g, {
|
|
2237
2231
|
"hide-icon": "",
|
|
2238
|
-
href: e(
|
|
2232
|
+
href: e(Te).loadBalancing
|
|
2239
2233
|
}, {
|
|
2240
2234
|
default: n(() => [
|
|
2241
|
-
|
|
2235
|
+
Q(f(e(i)("upstreams.form.buttons.view_documentation")), 1)
|
|
2242
2236
|
]),
|
|
2243
2237
|
_: 1
|
|
2244
2238
|
}, 8, ["href"])
|
|
@@ -2247,9 +2241,9 @@ const he = {
|
|
|
2247
2241
|
default: n(() => [
|
|
2248
2242
|
h(F, null, {
|
|
2249
2243
|
default: n(() => [
|
|
2250
|
-
b("h5",
|
|
2251
|
-
b("p",
|
|
2252
|
-
h(
|
|
2244
|
+
b("h5", ga, f(e(i)("upstreams.form.fields.active_health_checks.label")), 1),
|
|
2245
|
+
b("p", va, f(e(i)("upstreams.form.fields.active_health_checks.help")), 1),
|
|
2246
|
+
h(N, {
|
|
2253
2247
|
class: "active-health-switch",
|
|
2254
2248
|
"data-testid": "active-health-switch",
|
|
2255
2249
|
disabled: a.readonly,
|
|
@@ -2261,9 +2255,9 @@ const he = {
|
|
|
2261
2255
|
}),
|
|
2262
2256
|
h(F, null, {
|
|
2263
2257
|
default: n(() => [
|
|
2264
|
-
b("h5",
|
|
2265
|
-
b("p",
|
|
2266
|
-
h(
|
|
2258
|
+
b("h5", ba, f(e(i)("upstreams.form.fields.passive_health_checks.label")), 1),
|
|
2259
|
+
b("p", ka, f(e(i)("upstreams.form.fields.passive_health_checks.help")), 1),
|
|
2260
|
+
h(N, {
|
|
2267
2261
|
class: "passive-health-switch",
|
|
2268
2262
|
"data-testid": "passive-health-switch",
|
|
2269
2263
|
disabled: a.readonly,
|
|
@@ -2276,9 +2270,9 @@ const he = {
|
|
|
2276
2270
|
h(l, {
|
|
2277
2271
|
autocomplete: "off",
|
|
2278
2272
|
"data-testid": "upstreams-form-healthchecks-threshold",
|
|
2279
|
-
label: e(
|
|
2280
|
-
max: e(
|
|
2281
|
-
min: e(
|
|
2273
|
+
label: e(i)("upstreams.form.fields.healthchecks_threshold.label"),
|
|
2274
|
+
max: e(Qt),
|
|
2275
|
+
min: e(Lt),
|
|
2282
2276
|
"model-value": a.healthchecksThreshold,
|
|
2283
2277
|
readonly: a.readonly,
|
|
2284
2278
|
type: "number",
|
|
@@ -2289,7 +2283,7 @@ const he = {
|
|
|
2289
2283
|
}, 8, ["title"]);
|
|
2290
2284
|
};
|
|
2291
2285
|
}
|
|
2292
|
-
}),
|
|
2286
|
+
}), Ca = /* @__PURE__ */ ue(_a, [["__scopeId", "data-v-bfdc5a59"]]), Ha = "#d60027", Sa = { key: 2 }, Ua = { class: "fields-group-title" }, Ia = { class: "fields-group-text" }, qa = { class: "fields-group-title" }, wa = { class: "fields-group-text" }, Fa = /* @__PURE__ */ se({
|
|
2293
2287
|
__name: "UpstreamsFormActiveHealthCheck",
|
|
2294
2288
|
props: {
|
|
2295
2289
|
config: {
|
|
@@ -2363,165 +2357,165 @@ const he = {
|
|
|
2363
2357
|
}
|
|
2364
2358
|
},
|
|
2365
2359
|
emits: ["update:type", "update:http-path", "update:timeout", "update:concurrency", "update:https-sni", "update:verify-ssl", "update:headers", "update:interval", "update:successes", "update:http-statuses", "update:unhealthy-interval", "update:http-failures", "update:tcp-failures", "update:unhealthy-http-statuses", "update:unhealthy-timeouts"],
|
|
2366
|
-
setup(a, { emit:
|
|
2367
|
-
const { i18n: { t:
|
|
2360
|
+
setup(a, { emit: E }) {
|
|
2361
|
+
const { i18n: { t: i } } = he.useI18n(), { objectsAreEqual: s } = Fe(), u = a, k = E, g = V([
|
|
2368
2362
|
{
|
|
2369
|
-
label:
|
|
2363
|
+
label: i("upstreams.form.healthcheck_type_labels.http"),
|
|
2370
2364
|
value: "http",
|
|
2371
2365
|
selected: !1
|
|
2372
2366
|
},
|
|
2373
2367
|
{
|
|
2374
|
-
label:
|
|
2368
|
+
label: i("upstreams.form.healthcheck_type_labels.https"),
|
|
2375
2369
|
value: "https",
|
|
2376
2370
|
selected: !1
|
|
2377
2371
|
},
|
|
2378
2372
|
{
|
|
2379
|
-
label:
|
|
2373
|
+
label: i("upstreams.form.healthcheck_type_labels.tcp"),
|
|
2380
2374
|
value: "tcp",
|
|
2381
2375
|
selected: !1
|
|
2382
2376
|
},
|
|
2383
2377
|
{
|
|
2384
|
-
label:
|
|
2378
|
+
label: i("upstreams.form.healthcheck_type_labels.grsp"),
|
|
2385
2379
|
value: "grpc",
|
|
2386
2380
|
selected: !1
|
|
2387
2381
|
},
|
|
2388
2382
|
{
|
|
2389
|
-
label:
|
|
2383
|
+
label: i("upstreams.form.healthcheck_type_labels.grsps"),
|
|
2390
2384
|
value: "grpcs",
|
|
2391
2385
|
selected: !1
|
|
2392
2386
|
}
|
|
2393
|
-
]),
|
|
2387
|
+
]), N = w(() => u.type === "https" || u.type === "grpcs"), F = w(() => u.type === "tcp"), {
|
|
2394
2388
|
trackNewItems: l
|
|
2395
2389
|
} = ke({ replaceId: !0 }), {
|
|
2396
2390
|
trackNewItems: c
|
|
2397
2391
|
} = ke({ replaceId: !0 });
|
|
2398
|
-
ce(() => u.type, (
|
|
2399
|
-
p === "tcp" &&
|
|
2392
|
+
ce(() => u.type, (q, p) => {
|
|
2393
|
+
p === "tcp" && q !== p && k("update:tcp-failures", "5"), (p === "https" || p === "grpcs") && q !== p && (k("update:https-sni", ""), k("update:verify-ssl", !1)), p !== "tcp" && q === "tcp" && (k("update:http-path", "/"), k("update:http-statuses", It), k("update:unhealthy-http-statuses", wt));
|
|
2400
2394
|
});
|
|
2401
|
-
const
|
|
2402
|
-
ce(() => u.headers, (
|
|
2403
|
-
s(
|
|
2395
|
+
const H = V([{ key: "", values: "" }]);
|
|
2396
|
+
ce(() => u.headers, (q) => {
|
|
2397
|
+
s(H.value, q) || (H.value = [...q]);
|
|
2404
2398
|
}, {
|
|
2405
2399
|
immediate: !0,
|
|
2406
2400
|
deep: !0
|
|
2407
2401
|
});
|
|
2408
2402
|
const m = () => {
|
|
2409
|
-
k("update:headers",
|
|
2403
|
+
k("update:headers", H.value);
|
|
2410
2404
|
}, t = () => {
|
|
2411
|
-
|
|
2412
|
-
},
|
|
2413
|
-
|
|
2405
|
+
H.value.push({ key: "", values: "" }), m();
|
|
2406
|
+
}, R = (q) => {
|
|
2407
|
+
q === 0 && H.value.length === 1 ? H.value[0] = { key: "", values: "" } : H.value.splice(q, 1), m();
|
|
2414
2408
|
};
|
|
2415
|
-
return (
|
|
2416
|
-
const
|
|
2417
|
-
return x(),
|
|
2409
|
+
return (q, p) => {
|
|
2410
|
+
const S = K("KExternalLink"), W = K("KSelect"), A = K("KInput"), X = K("KCheckbox"), z = K("KLabel"), v = K("KButton"), U = K("KMultiselect"), I = K("KCard");
|
|
2411
|
+
return x(), B(e(_e), {
|
|
2418
2412
|
class: "kong-ui-entities-upstreams-active-healthcheck",
|
|
2419
|
-
title: e(
|
|
2413
|
+
title: e(i)("upstreams.form.active_health_check.title")
|
|
2420
2414
|
}, {
|
|
2421
2415
|
description: n(() => [
|
|
2422
2416
|
b("p", null, [
|
|
2423
|
-
|
|
2424
|
-
h(
|
|
2417
|
+
Q(f(e(i)("upstreams.form.active_health_check.help")) + " ", 1),
|
|
2418
|
+
h(S, {
|
|
2425
2419
|
"hide-icon": "",
|
|
2426
|
-
href: e(
|
|
2420
|
+
href: e(Te).upstreamObject
|
|
2427
2421
|
}, {
|
|
2428
2422
|
default: n(() => [
|
|
2429
|
-
|
|
2423
|
+
Q(f(e(i)("upstreams.form.buttons.view_documentation")), 1)
|
|
2430
2424
|
]),
|
|
2431
2425
|
_: 1
|
|
2432
2426
|
}, 8, ["href"])
|
|
2433
2427
|
])
|
|
2434
2428
|
]),
|
|
2435
2429
|
default: n(() => {
|
|
2436
|
-
var
|
|
2430
|
+
var O;
|
|
2437
2431
|
return [
|
|
2438
|
-
h(
|
|
2432
|
+
h(W, {
|
|
2439
2433
|
class: "active-healthcheck-type-select",
|
|
2440
2434
|
items: g.value,
|
|
2441
|
-
label: e(
|
|
2435
|
+
label: e(i)("upstreams.form.fields.active_healthcheck_type.label"),
|
|
2442
2436
|
"model-value": a.type,
|
|
2443
2437
|
readonly: a.readonly,
|
|
2444
2438
|
width: "100%",
|
|
2445
2439
|
"onUpdate:modelValue": p[0] || (p[0] = (y) => k("update:type", y))
|
|
2446
2440
|
}, null, 8, ["items", "label", "model-value", "readonly"]),
|
|
2447
|
-
F.value ?
|
|
2441
|
+
F.value ? L("", !0) : (x(), B(A, {
|
|
2448
2442
|
key: 0,
|
|
2449
2443
|
autocomplete: "off",
|
|
2450
2444
|
"data-testid": "active-healthcheck-http-path",
|
|
2451
|
-
label: e(
|
|
2445
|
+
label: e(i)("upstreams.form.fields.http_path.label"),
|
|
2452
2446
|
"model-value": a.httpPath,
|
|
2453
2447
|
readonly: a.readonly,
|
|
2454
2448
|
type: "text",
|
|
2455
2449
|
"onUpdate:modelValue": p[1] || (p[1] = (y) => k("update:http-path", y))
|
|
2456
2450
|
}, null, 8, ["label", "model-value", "readonly"])),
|
|
2457
|
-
h(
|
|
2451
|
+
h(A, {
|
|
2458
2452
|
autocomplete: "off",
|
|
2459
2453
|
"data-testid": "active-healthcheck-timeout",
|
|
2460
|
-
label: e(
|
|
2461
|
-
max: e(
|
|
2462
|
-
min: e(
|
|
2454
|
+
label: e(i)("upstreams.form.fields.timeout.label"),
|
|
2455
|
+
max: e(Jt),
|
|
2456
|
+
min: e(Wt),
|
|
2463
2457
|
"model-value": a.timeout,
|
|
2464
2458
|
readonly: a.readonly,
|
|
2465
2459
|
type: "number",
|
|
2466
2460
|
"onUpdate:modelValue": p[2] || (p[2] = (y) => k("update:timeout", y))
|
|
2467
2461
|
}, null, 8, ["label", "max", "min", "model-value", "readonly"]),
|
|
2468
|
-
h(
|
|
2462
|
+
h(A, {
|
|
2469
2463
|
autocomplete: "off",
|
|
2470
2464
|
"data-testid": "active-healthcheck-concurrency",
|
|
2471
|
-
label: e(
|
|
2472
|
-
max: e(
|
|
2473
|
-
min: e(
|
|
2465
|
+
label: e(i)("upstreams.form.fields.concurrency.label"),
|
|
2466
|
+
max: e(Gt),
|
|
2467
|
+
min: e(zt),
|
|
2474
2468
|
"model-value": a.concurrency,
|
|
2475
2469
|
readonly: a.readonly,
|
|
2476
2470
|
type: "number",
|
|
2477
2471
|
"onUpdate:modelValue": p[3] || (p[3] = (y) => k("update:concurrency", y))
|
|
2478
2472
|
}, null, 8, ["label", "max", "min", "model-value", "readonly"]),
|
|
2479
|
-
|
|
2480
|
-
h(
|
|
2473
|
+
N.value ? (x(), ae(Ie, { key: 1 }, [
|
|
2474
|
+
h(A, {
|
|
2481
2475
|
autocomplete: "off",
|
|
2482
2476
|
class: "margin-bottom-6",
|
|
2483
2477
|
"data-testid": "active-healthcheck-https-sni",
|
|
2484
|
-
label: e(
|
|
2478
|
+
label: e(i)("upstreams.form.fields.https_sni.label"),
|
|
2485
2479
|
"model-value": a.httpsSni,
|
|
2486
2480
|
readonly: a.readonly,
|
|
2487
2481
|
type: "text",
|
|
2488
2482
|
"onUpdate:modelValue": p[4] || (p[4] = (y) => k("update:https-sni", y))
|
|
2489
2483
|
}, null, 8, ["label", "model-value", "readonly"]),
|
|
2490
|
-
h(
|
|
2484
|
+
h(X, {
|
|
2491
2485
|
"data-testid": "active-healthcheck-verify-ssl",
|
|
2492
2486
|
disabled: a.readonly,
|
|
2493
|
-
label: e(
|
|
2487
|
+
label: e(i)("upstreams.form.fields.verify_ssl.label"),
|
|
2494
2488
|
"model-value": a.verifySsl,
|
|
2495
2489
|
"onUpdate:modelValue": p[5] || (p[5] = (y) => k("update:verify-ssl", y))
|
|
2496
2490
|
}, null, 8, ["disabled", "label", "model-value"])
|
|
2497
|
-
], 64)) :
|
|
2498
|
-
((
|
|
2499
|
-
h(
|
|
2500
|
-
info: e(
|
|
2491
|
+
], 64)) : L("", !0),
|
|
2492
|
+
((O = a.config) == null ? void 0 : O.app) === "kongManager" ? (x(), ae("div", Sa, [
|
|
2493
|
+
h(z, {
|
|
2494
|
+
info: e(i)("upstreams.form.fields.headers.tooltip_active"),
|
|
2501
2495
|
"tooltip-attributes": { maxWidth: "250px" }
|
|
2502
2496
|
}, {
|
|
2503
2497
|
default: n(() => [
|
|
2504
|
-
|
|
2498
|
+
Q(f(e(i)("upstreams.form.fields.headers.label")), 1)
|
|
2505
2499
|
]),
|
|
2506
2500
|
_: 1
|
|
2507
2501
|
}, 8, ["info"]),
|
|
2508
2502
|
b("div", null, [
|
|
2509
|
-
(x(!0),
|
|
2503
|
+
(x(!0), ae(Ie, null, Ot(H.value, (y, D) => (x(), ae("div", {
|
|
2510
2504
|
key: `${y.header}_${D}`,
|
|
2511
|
-
class:
|
|
2505
|
+
class: $t(["headers-row", { "margin-top-6": D > 0 }])
|
|
2512
2506
|
}, [
|
|
2513
|
-
h(
|
|
2514
|
-
modelValue:
|
|
2515
|
-
"onUpdate:modelValue": (J) =>
|
|
2507
|
+
h(A, {
|
|
2508
|
+
modelValue: H.value[D].key,
|
|
2509
|
+
"onUpdate:modelValue": (J) => H.value[D].key = J,
|
|
2516
2510
|
autocomplete: "off",
|
|
2517
2511
|
"data-testid": `active-healthcheck-headers-header-${D + 1}`,
|
|
2518
2512
|
readonly: a.readonly,
|
|
2519
2513
|
type: "text",
|
|
2520
2514
|
onBlur: m
|
|
2521
2515
|
}, null, 8, ["modelValue", "onUpdate:modelValue", "data-testid", "readonly"]),
|
|
2522
|
-
h(
|
|
2523
|
-
modelValue:
|
|
2524
|
-
"onUpdate:modelValue": (J) =>
|
|
2516
|
+
h(A, {
|
|
2517
|
+
modelValue: H.value[D].values,
|
|
2518
|
+
"onUpdate:modelValue": (J) => H.value[D].values = J,
|
|
2525
2519
|
autocomplete: "off",
|
|
2526
2520
|
"data-testid": `active-healthcheck-headers-value-${D + 1}`,
|
|
2527
2521
|
readonly: a.readonly,
|
|
@@ -2532,19 +2526,19 @@ const he = {
|
|
|
2532
2526
|
appearance: "tertiary",
|
|
2533
2527
|
class: "btn-remove",
|
|
2534
2528
|
"data-testid": "btn-remove-header",
|
|
2535
|
-
disabled:
|
|
2529
|
+
disabled: H.value.length === 1,
|
|
2536
2530
|
icon: "",
|
|
2537
|
-
onClick: (J) =>
|
|
2531
|
+
onClick: (J) => R(D)
|
|
2538
2532
|
}, {
|
|
2539
2533
|
default: n(() => [
|
|
2540
|
-
h(e(
|
|
2534
|
+
h(e(Vt), {
|
|
2541
2535
|
class: "delete-item",
|
|
2542
|
-
color:
|
|
2536
|
+
color: H.value.length > 1 ? e(Ha) : void 0
|
|
2543
2537
|
}, null, 8, ["color"])
|
|
2544
2538
|
]),
|
|
2545
2539
|
_: 2
|
|
2546
2540
|
}, 1032, ["disabled", "onClick"]),
|
|
2547
|
-
|
|
2541
|
+
H.value && D === H.value.length - 1 ? (x(), B(v, {
|
|
2548
2542
|
key: 0,
|
|
2549
2543
|
appearance: "tertiary",
|
|
2550
2544
|
class: "btn-add-header",
|
|
@@ -2553,48 +2547,48 @@ const he = {
|
|
|
2553
2547
|
onClick: t
|
|
2554
2548
|
}, {
|
|
2555
2549
|
default: n(() => [
|
|
2556
|
-
h(e(
|
|
2550
|
+
h(e(Ae))
|
|
2557
2551
|
]),
|
|
2558
2552
|
_: 1
|
|
2559
|
-
})) :
|
|
2553
|
+
})) : L("", !0)
|
|
2560
2554
|
], 2))), 128))
|
|
2561
2555
|
])
|
|
2562
|
-
])) :
|
|
2563
|
-
h(
|
|
2556
|
+
])) : L("", !0),
|
|
2557
|
+
h(I, null, {
|
|
2564
2558
|
default: n(() => [
|
|
2565
|
-
b("h5",
|
|
2566
|
-
b("p",
|
|
2567
|
-
h(
|
|
2559
|
+
b("h5", Ua, f(e(i)("upstreams.form.healthy.label")), 1),
|
|
2560
|
+
b("p", Ia, f(e(i)("upstreams.form.healthy.help")), 1),
|
|
2561
|
+
h(A, {
|
|
2568
2562
|
autocomplete: "off",
|
|
2569
2563
|
class: "margin-bottom-6",
|
|
2570
2564
|
"data-testid": "active-healthcheck-interval",
|
|
2571
|
-
help: e(
|
|
2572
|
-
label: e(
|
|
2573
|
-
max: e(
|
|
2574
|
-
min: e(
|
|
2565
|
+
help: e(i)("upstreams.form.fields.interval.help"),
|
|
2566
|
+
label: e(i)("upstreams.form.fields.interval.label"),
|
|
2567
|
+
max: e(ct),
|
|
2568
|
+
min: e(ut),
|
|
2575
2569
|
"model-value": a.interval,
|
|
2576
2570
|
readonly: a.readonly,
|
|
2577
2571
|
type: "number",
|
|
2578
2572
|
"onUpdate:modelValue": p[6] || (p[6] = (y) => k("update:interval", y))
|
|
2579
2573
|
}, null, 8, ["help", "label", "max", "min", "model-value", "readonly"]),
|
|
2580
|
-
h(
|
|
2574
|
+
h(A, {
|
|
2581
2575
|
autocomplete: "off",
|
|
2582
2576
|
"data-testid": "active-healthcheck-successes",
|
|
2583
|
-
label: e(
|
|
2584
|
-
max: e(
|
|
2585
|
-
min: e(
|
|
2577
|
+
label: e(i)("upstreams.form.fields.successes.label"),
|
|
2578
|
+
max: e(ye),
|
|
2579
|
+
min: e(fe),
|
|
2586
2580
|
"model-value": a.successes,
|
|
2587
2581
|
readonly: a.readonly,
|
|
2588
2582
|
type: "number",
|
|
2589
2583
|
"onUpdate:modelValue": p[7] || (p[7] = (y) => k("update:successes", y))
|
|
2590
2584
|
}, null, 8, ["label", "max", "min", "model-value", "readonly"]),
|
|
2591
|
-
F.value ?
|
|
2585
|
+
F.value ? L("", !0) : (x(), B(U, {
|
|
2592
2586
|
key: 0,
|
|
2593
2587
|
autocomplete: "off",
|
|
2594
2588
|
class: "margin-top-6 active-healthcheck-http-statuses",
|
|
2595
2589
|
"enable-item-creation": "",
|
|
2596
2590
|
items: e(qe),
|
|
2597
|
-
label: e(
|
|
2591
|
+
label: e(i)("upstreams.form.fields.http_statuses.label"),
|
|
2598
2592
|
"model-value": a.httpStatuses,
|
|
2599
2593
|
readonly: a.readonly,
|
|
2600
2594
|
width: "100%",
|
|
@@ -2605,55 +2599,55 @@ const he = {
|
|
|
2605
2599
|
]),
|
|
2606
2600
|
_: 1
|
|
2607
2601
|
}),
|
|
2608
|
-
h(
|
|
2602
|
+
h(I, null, {
|
|
2609
2603
|
default: n(() => [
|
|
2610
|
-
b("h5",
|
|
2611
|
-
b("p",
|
|
2612
|
-
h(
|
|
2604
|
+
b("h5", qa, f(e(i)("upstreams.form.unhealthy.label")), 1),
|
|
2605
|
+
b("p", wa, f(e(i)("upstreams.form.unhealthy.help")), 1),
|
|
2606
|
+
h(A, {
|
|
2613
2607
|
autocomplete: "off",
|
|
2614
2608
|
class: "margin-bottom-6",
|
|
2615
2609
|
"data-testid": "active-healthcheck-unhealthy-interval",
|
|
2616
|
-
help: e(
|
|
2617
|
-
label: e(
|
|
2618
|
-
max: e(
|
|
2619
|
-
min: e(
|
|
2610
|
+
help: e(i)("upstreams.form.fields.interval.help"),
|
|
2611
|
+
label: e(i)("upstreams.form.fields.interval.label"),
|
|
2612
|
+
max: e(ct),
|
|
2613
|
+
min: e(ut),
|
|
2620
2614
|
"model-value": a.unhealthyInterval,
|
|
2621
2615
|
readonly: a.readonly,
|
|
2622
2616
|
type: "number",
|
|
2623
2617
|
"onUpdate:modelValue": p[11] || (p[11] = (y) => k("update:unhealthy-interval", y))
|
|
2624
2618
|
}, null, 8, ["help", "label", "max", "min", "model-value", "readonly"]),
|
|
2625
|
-
h(
|
|
2619
|
+
h(A, {
|
|
2626
2620
|
autocomplete: "off",
|
|
2627
2621
|
class: "margin-bottom-6",
|
|
2628
2622
|
"data-testid": "active-healthcheck-tcp-failures",
|
|
2629
|
-
label: e(
|
|
2630
|
-
max: e(
|
|
2631
|
-
min: e(
|
|
2623
|
+
label: e(i)("upstreams.form.fields.tcp_failures.label"),
|
|
2624
|
+
max: e(ye),
|
|
2625
|
+
min: e(fe),
|
|
2632
2626
|
"model-value": a.tcpFailures,
|
|
2633
2627
|
readonly: a.readonly,
|
|
2634
2628
|
type: "number",
|
|
2635
2629
|
"onUpdate:modelValue": p[12] || (p[12] = (y) => k("update:tcp-failures", y))
|
|
2636
2630
|
}, null, 8, ["label", "max", "min", "model-value", "readonly"]),
|
|
2637
|
-
F.value ?
|
|
2631
|
+
F.value ? L("", !0) : (x(), B(A, {
|
|
2638
2632
|
key: 0,
|
|
2639
2633
|
autocomplete: "off",
|
|
2640
2634
|
class: "margin-bottom-6",
|
|
2641
2635
|
"data-testid": "active-healthcheck-http-failures",
|
|
2642
|
-
label: e(
|
|
2643
|
-
max: e(
|
|
2644
|
-
min: e(
|
|
2636
|
+
label: e(i)("upstreams.form.fields.http_failures.label"),
|
|
2637
|
+
max: e(ye),
|
|
2638
|
+
min: e(fe),
|
|
2645
2639
|
"model-value": a.httpFailures,
|
|
2646
2640
|
readonly: a.readonly,
|
|
2647
2641
|
type: "number",
|
|
2648
2642
|
"onUpdate:modelValue": p[13] || (p[13] = (y) => k("update:http-failures", y))
|
|
2649
2643
|
}, null, 8, ["label", "max", "min", "model-value", "readonly"])),
|
|
2650
|
-
F.value ?
|
|
2644
|
+
F.value ? L("", !0) : (x(), B(U, {
|
|
2651
2645
|
key: 1,
|
|
2652
2646
|
autocomplete: "off",
|
|
2653
2647
|
class: "margin-bottom-6 active-healthcheck-unhealthy-http-statuses",
|
|
2654
2648
|
"enable-item-creation": "",
|
|
2655
2649
|
items: e(qe),
|
|
2656
|
-
label: e(
|
|
2650
|
+
label: e(i)("upstreams.form.fields.http_statuses.label"),
|
|
2657
2651
|
"model-value": a.unhealthyHttpStatuses,
|
|
2658
2652
|
readonly: a.readonly,
|
|
2659
2653
|
width: "100%",
|
|
@@ -2661,12 +2655,12 @@ const he = {
|
|
|
2661
2655
|
onItemRemoved: p[15] || (p[15] = (y) => e(c)(y, !1)),
|
|
2662
2656
|
"onUpdate:modelValue": p[16] || (p[16] = (y) => k("update:unhealthy-http-statuses", y))
|
|
2663
2657
|
}, null, 8, ["items", "label", "model-value", "readonly"])),
|
|
2664
|
-
h(
|
|
2658
|
+
h(A, {
|
|
2665
2659
|
autocomplete: "off",
|
|
2666
2660
|
"data-testid": "active-healthcheck-unhealthy-timeouts",
|
|
2667
|
-
label: e(
|
|
2668
|
-
max: e(
|
|
2669
|
-
min: e(
|
|
2661
|
+
label: e(i)("upstreams.form.fields.timeouts.label"),
|
|
2662
|
+
max: e(Ut),
|
|
2663
|
+
min: e(St),
|
|
2670
2664
|
"model-value": a.unhealthyTimeouts,
|
|
2671
2665
|
readonly: a.readonly,
|
|
2672
2666
|
type: "number",
|
|
@@ -2681,7 +2675,7 @@ const he = {
|
|
|
2681
2675
|
}, 8, ["title"]);
|
|
2682
2676
|
};
|
|
2683
2677
|
}
|
|
2684
|
-
}),
|
|
2678
|
+
}), Ta = /* @__PURE__ */ ue(Fa, [["__scopeId", "data-v-efccf560"]]), xa = { class: "fields-group-title" }, Oa = { class: "fields-group-text" }, $a = { class: "fields-group-title" }, Pa = { class: "fields-group-text" }, Ma = /* @__PURE__ */ se({
|
|
2685
2679
|
__name: "UpstreamsFormPassiveHealthCheck",
|
|
2686
2680
|
props: {
|
|
2687
2681
|
type: {
|
|
@@ -2719,55 +2713,55 @@ const he = {
|
|
|
2719
2713
|
}
|
|
2720
2714
|
},
|
|
2721
2715
|
emits: ["update:type", "update:successes", "update:http-statuses", "update:timeouts", "update:http-failures", "update:unhealthy-http-statuses", "update:tcp-failures"],
|
|
2722
|
-
setup(a, { emit:
|
|
2723
|
-
const { i18n: { t:
|
|
2716
|
+
setup(a, { emit: E }) {
|
|
2717
|
+
const { i18n: { t: i } } = he.useI18n(), s = a, u = E, k = V([
|
|
2724
2718
|
{
|
|
2725
|
-
label:
|
|
2719
|
+
label: i("upstreams.form.healthcheck_type_labels.http"),
|
|
2726
2720
|
value: "http",
|
|
2727
2721
|
selected: !1
|
|
2728
2722
|
},
|
|
2729
2723
|
{
|
|
2730
|
-
label:
|
|
2724
|
+
label: i("upstreams.form.healthcheck_type_labels.https"),
|
|
2731
2725
|
value: "https",
|
|
2732
2726
|
selected: !1
|
|
2733
2727
|
},
|
|
2734
2728
|
{
|
|
2735
|
-
label:
|
|
2729
|
+
label: i("upstreams.form.healthcheck_type_labels.tcp"),
|
|
2736
2730
|
value: "tcp",
|
|
2737
2731
|
selected: !1
|
|
2738
2732
|
},
|
|
2739
2733
|
{
|
|
2740
|
-
label:
|
|
2734
|
+
label: i("upstreams.form.healthcheck_type_labels.grsp"),
|
|
2741
2735
|
value: "grpc",
|
|
2742
2736
|
selected: !1
|
|
2743
2737
|
},
|
|
2744
2738
|
{
|
|
2745
|
-
label:
|
|
2739
|
+
label: i("upstreams.form.healthcheck_type_labels.grsps"),
|
|
2746
2740
|
value: "grpcs",
|
|
2747
2741
|
selected: !1
|
|
2748
2742
|
}
|
|
2749
|
-
]), g =
|
|
2750
|
-
trackNewItems:
|
|
2743
|
+
]), g = w(() => s.type === "tcp"), {
|
|
2744
|
+
trackNewItems: N
|
|
2751
2745
|
} = ke({ replaceId: !0 }), {
|
|
2752
2746
|
trackNewItems: F
|
|
2753
2747
|
} = ke({ replaceId: !0 });
|
|
2754
2748
|
return ce(() => s.type, (l, c) => {
|
|
2755
|
-
c === "tcp" && l !== c && u("update:tcp-failures", "5"), c !== "tcp" && l === "tcp" && (u("update:http-statuses",
|
|
2749
|
+
c === "tcp" && l !== c && u("update:tcp-failures", "5"), c !== "tcp" && l === "tcp" && (u("update:http-statuses", qt), u("update:unhealthy-http-statuses", Ft));
|
|
2756
2750
|
}), (l, c) => {
|
|
2757
|
-
const
|
|
2758
|
-
return x(),
|
|
2751
|
+
const H = K("KExternalLink"), m = K("KSelect"), t = K("KInput"), R = K("KMultiselect"), q = K("KCard");
|
|
2752
|
+
return x(), B(e(_e), {
|
|
2759
2753
|
class: "kong-ui-entities-upstreams-passive-healthcheck",
|
|
2760
|
-
title: e(
|
|
2754
|
+
title: e(i)("upstreams.form.passive_health_check.title")
|
|
2761
2755
|
}, {
|
|
2762
2756
|
description: n(() => [
|
|
2763
2757
|
b("p", null, [
|
|
2764
|
-
|
|
2765
|
-
h(
|
|
2758
|
+
Q(f(e(i)("upstreams.form.passive_health_check.help")) + " ", 1),
|
|
2759
|
+
h(H, {
|
|
2766
2760
|
"hide-icon": "",
|
|
2767
|
-
href: e(
|
|
2761
|
+
href: e(Te).upstreamObject
|
|
2768
2762
|
}, {
|
|
2769
2763
|
default: n(() => [
|
|
2770
|
-
|
|
2764
|
+
Q(f(e(i)("upstreams.form.buttons.view_documentation")), 1)
|
|
2771
2765
|
]),
|
|
2772
2766
|
_: 1
|
|
2773
2767
|
}, 8, ["href"])
|
|
@@ -2777,53 +2771,53 @@ const he = {
|
|
|
2777
2771
|
h(m, {
|
|
2778
2772
|
class: "passive-healthcheck-type-select",
|
|
2779
2773
|
items: k.value,
|
|
2780
|
-
label: e(
|
|
2774
|
+
label: e(i)("upstreams.form.fields.passive_health_check_type.label"),
|
|
2781
2775
|
"model-value": a.type,
|
|
2782
2776
|
readonly: a.readonly,
|
|
2783
2777
|
width: "100%",
|
|
2784
2778
|
"onUpdate:modelValue": c[0] || (c[0] = (p) => u("update:type", p))
|
|
2785
2779
|
}, null, 8, ["items", "label", "model-value", "readonly"]),
|
|
2786
|
-
h(
|
|
2780
|
+
h(q, null, {
|
|
2787
2781
|
default: n(() => [
|
|
2788
|
-
b("h5",
|
|
2789
|
-
b("p",
|
|
2782
|
+
b("h5", xa, f(e(i)("upstreams.form.passive_healthy.label")), 1),
|
|
2783
|
+
b("p", Oa, f(e(i)("upstreams.form.passive_healthy.help")), 1),
|
|
2790
2784
|
h(t, {
|
|
2791
2785
|
autocomplete: "off",
|
|
2792
2786
|
"data-testid": "passive-healthcheck-successes",
|
|
2793
|
-
label: e(
|
|
2794
|
-
max: e(
|
|
2795
|
-
min: e(
|
|
2787
|
+
label: e(i)("upstreams.form.fields.successes.label"),
|
|
2788
|
+
max: e(ye),
|
|
2789
|
+
min: e(fe),
|
|
2796
2790
|
"model-value": a.successes,
|
|
2797
2791
|
readonly: a.readonly,
|
|
2798
2792
|
type: "number",
|
|
2799
2793
|
"onUpdate:modelValue": c[1] || (c[1] = (p) => u("update:successes", p))
|
|
2800
2794
|
}, null, 8, ["label", "max", "min", "model-value", "readonly"]),
|
|
2801
|
-
g.value ?
|
|
2795
|
+
g.value ? L("", !0) : (x(), B(R, {
|
|
2802
2796
|
key: 0,
|
|
2803
2797
|
class: "margin-top-6 passive-healthcheck-http-statuses",
|
|
2804
2798
|
"enable-item-creation": "",
|
|
2805
2799
|
items: e(qe),
|
|
2806
|
-
label: e(
|
|
2800
|
+
label: e(i)("upstreams.form.fields.http_statuses.label"),
|
|
2807
2801
|
"model-value": a.httpStatuses,
|
|
2808
2802
|
readonly: a.readonly,
|
|
2809
2803
|
width: "100%",
|
|
2810
|
-
onItemAdded: c[2] || (c[2] = (p) => e(
|
|
2811
|
-
onItemRemoved: c[3] || (c[3] = (p) => e(
|
|
2804
|
+
onItemAdded: c[2] || (c[2] = (p) => e(N)(p, !0)),
|
|
2805
|
+
onItemRemoved: c[3] || (c[3] = (p) => e(N)(p, !1)),
|
|
2812
2806
|
"onUpdate:modelValue": c[4] || (c[4] = (p) => u("update:http-statuses", p))
|
|
2813
2807
|
}, null, 8, ["items", "label", "model-value", "readonly"]))
|
|
2814
2808
|
]),
|
|
2815
2809
|
_: 1
|
|
2816
2810
|
}),
|
|
2817
|
-
h(
|
|
2811
|
+
h(q, null, {
|
|
2818
2812
|
default: n(() => [
|
|
2819
|
-
b("h5",
|
|
2820
|
-
b("p",
|
|
2813
|
+
b("h5", $a, f(e(i)("upstreams.form.passive_unhealthy.label")), 1),
|
|
2814
|
+
b("p", Pa, f(e(i)("upstreams.form.passive_unhealthy.help")), 1),
|
|
2821
2815
|
h(t, {
|
|
2822
2816
|
autocomplete: "off",
|
|
2823
2817
|
"data-testid": "passive-healthcheck-timeouts",
|
|
2824
|
-
label: e(
|
|
2825
|
-
max: e(
|
|
2826
|
-
min: e(
|
|
2818
|
+
label: e(i)("upstreams.form.fields.timeouts.label"),
|
|
2819
|
+
max: e(Ut),
|
|
2820
|
+
min: e(St),
|
|
2827
2821
|
"model-value": a.timeouts,
|
|
2828
2822
|
readonly: a.readonly,
|
|
2829
2823
|
type: "number",
|
|
@@ -2833,34 +2827,34 @@ const he = {
|
|
|
2833
2827
|
autocomplete: "off",
|
|
2834
2828
|
class: "margin-top-6",
|
|
2835
2829
|
"data-testid": "passive-healthcheck-tcp-failures",
|
|
2836
|
-
label: e(
|
|
2837
|
-
max: e(
|
|
2838
|
-
min: e(
|
|
2830
|
+
label: e(i)("upstreams.form.fields.tcp_failures.label"),
|
|
2831
|
+
max: e(ye),
|
|
2832
|
+
min: e(fe),
|
|
2839
2833
|
"model-value": a.tcpFailures,
|
|
2840
2834
|
readonly: a.readonly,
|
|
2841
2835
|
type: "number",
|
|
2842
2836
|
"onUpdate:modelValue": c[6] || (c[6] = (p) => u("update:tcp-failures", p))
|
|
2843
2837
|
}, null, 8, ["label", "max", "min", "model-value", "readonly"]),
|
|
2844
|
-
g.value ?
|
|
2838
|
+
g.value ? L("", !0) : (x(), B(t, {
|
|
2845
2839
|
key: 0,
|
|
2846
2840
|
autocomplete: "off",
|
|
2847
2841
|
class: "margin-top-6",
|
|
2848
2842
|
"data-testid": "passive-healthcheck-http-failures",
|
|
2849
|
-
label: e(
|
|
2850
|
-
max: e(
|
|
2851
|
-
min: e(
|
|
2843
|
+
label: e(i)("upstreams.form.fields.http_failures.label"),
|
|
2844
|
+
max: e(ye),
|
|
2845
|
+
min: e(fe),
|
|
2852
2846
|
"model-value": a.httpFailures,
|
|
2853
2847
|
readonly: a.readonly,
|
|
2854
2848
|
type: "number",
|
|
2855
2849
|
"onUpdate:modelValue": c[7] || (c[7] = (p) => u("update:http-failures", p))
|
|
2856
2850
|
}, null, 8, ["label", "max", "min", "model-value", "readonly"])),
|
|
2857
|
-
g.value ?
|
|
2851
|
+
g.value ? L("", !0) : (x(), B(R, {
|
|
2858
2852
|
key: 1,
|
|
2859
2853
|
autocomplete: "off",
|
|
2860
2854
|
class: "margin-top-6 passive-healthcheck-unhealthy-http-statuses",
|
|
2861
2855
|
"enable-item-creation": "",
|
|
2862
2856
|
items: e(qe),
|
|
2863
|
-
label: e(
|
|
2857
|
+
label: e(i)("upstreams.form.fields.http_statuses.label"),
|
|
2864
2858
|
"model-value": a.unhealthyHttpStatuses,
|
|
2865
2859
|
readonly: a.readonly,
|
|
2866
2860
|
width: "100%",
|
|
@@ -2876,7 +2870,7 @@ const he = {
|
|
|
2876
2870
|
}, 8, ["title"]);
|
|
2877
2871
|
};
|
|
2878
2872
|
}
|
|
2879
|
-
}),
|
|
2873
|
+
}), Aa = /* @__PURE__ */ ue(Ma, [["__scopeId", "data-v-5bd9952e"]]), Ka = { class: "kong-ui-entities-upstreams-form" }, Va = /* @__PURE__ */ se({
|
|
2880
2874
|
__name: "UpstreamsForm",
|
|
2881
2875
|
props: {
|
|
2882
2876
|
/** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
|
|
@@ -2893,30 +2887,30 @@ const he = {
|
|
|
2893
2887
|
}
|
|
2894
2888
|
},
|
|
2895
2889
|
emits: ["update", "error", "loading"],
|
|
2896
|
-
setup(a, { emit:
|
|
2897
|
-
var
|
|
2898
|
-
const
|
|
2899
|
-
fields:
|
|
2890
|
+
setup(a, { emit: E }) {
|
|
2891
|
+
var _;
|
|
2892
|
+
const i = a, s = E, { inRange: u, stringToNumberArray: k, upstreamsResponseToFields: g, getDefaultUpstreamFields: N, objectsAreEqual: F, cloneDeep: l } = Fe(), { axiosInstance: c } = we((_ = i.config) == null ? void 0 : _.axiosRequestConfig), { getMessageFromError: H } = _t(), m = Ht(), t = Ue({
|
|
2893
|
+
fields: N(),
|
|
2900
2894
|
readonly: !1,
|
|
2901
2895
|
errorMessage: ""
|
|
2902
|
-
}),
|
|
2896
|
+
}), R = Ue(N()), q = w(() => !F(t.fields, R)), p = (d) => {
|
|
2903
2897
|
t.fields.activeHealthCheck.interval = d ? "5" : "0", t.fields.activeHealthCheck.successes = d ? "5" : "0", t.fields.activeHealthCheck.httpFailures = d ? "5" : "0", t.fields.activeHealthCheck.unhealthyInterval = d ? "5" : "0", t.fields.activeHealthCheck.tcpFailures = d ? "5" : "0";
|
|
2904
|
-
},
|
|
2898
|
+
}, S = (d) => {
|
|
2905
2899
|
t.fields.passiveHealthCheck.timeouts = d ? "5" : "0", t.fields.passiveHealthCheck.successes = d ? "80" : "0", t.fields.passiveHealthCheck.tcpFailures = d ? "5" : "0", t.fields.passiveHealthCheck.httpFailures = d ? "5" : "0";
|
|
2906
|
-
},
|
|
2907
|
-
var d,
|
|
2908
|
-
return (
|
|
2909
|
-
}),
|
|
2910
|
-
Object.assign(t.fields, g(d)), Object.assign(
|
|
2911
|
-
},
|
|
2900
|
+
}, W = w(() => t.fields.slots ? u(t.fields.slots, Oe, $e) : !0), A = w(() => t.fields.hashOn === "header" ? !!t.fields.hashOnHeader : !0), X = w(() => t.fields.hashOn === "cookie" || t.fields.hashFallback === "cookie" ? !!t.fields.hashOnCookie : !0), z = w(() => t.fields.hashOn === "cookie" || t.fields.hashFallback === "cookie" ? !!t.fields.hashOnCookiePath : !0), v = w(() => t.fields.hashOn === "query_arg" ? !!t.fields.hashOnQueryArgument : !0), U = w(() => t.fields.hashOn === "uri_capture" ? !!t.fields.hashOnUriCapture : !0), I = w(() => t.fields.hashFallback === "header" ? !!t.fields.hashFallbackHeader : !0), O = w(() => t.fields.hashFallback === "query_arg" ? !!t.fields.hashFallbackQueryArgument : !0), y = w(() => t.fields.hashFallback === "uri_capture" ? !!t.fields.hashFallbackUriCapture : !0), D = w(() => !!t.fields.name && W.value && A.value && X.value && z.value && v.value && U.value && I.value && O.value && y.value), J = w(() => i.upstreamId ? oe.Edit : oe.Create), te = w(() => {
|
|
2901
|
+
var d, r;
|
|
2902
|
+
return (r = ge.form[(d = i.config) == null ? void 0 : d.app]) == null ? void 0 : r.edit;
|
|
2903
|
+
}), le = (d) => {
|
|
2904
|
+
Object.assign(t.fields, g(d)), Object.assign(R, l(t.fields));
|
|
2905
|
+
}, M = () => {
|
|
2912
2906
|
var d;
|
|
2913
|
-
m.push(((d =
|
|
2914
|
-
},
|
|
2907
|
+
m.push(((d = i.config) == null ? void 0 : d.cancelRoute) || { name: "upstreams-list" });
|
|
2908
|
+
}, $ = (d) => {
|
|
2915
2909
|
s("loading", d);
|
|
2916
|
-
},
|
|
2910
|
+
}, G = (d) => {
|
|
2917
2911
|
s("error", d);
|
|
2918
|
-
},
|
|
2919
|
-
var
|
|
2912
|
+
}, C = w(() => {
|
|
2913
|
+
var r, o, Y, j, Z;
|
|
2920
2914
|
const d = {
|
|
2921
2915
|
name: t.fields.name,
|
|
2922
2916
|
slots: Number(t.fields.slots),
|
|
@@ -2925,19 +2919,19 @@ const he = {
|
|
|
2925
2919
|
hash_fallback: t.fields.hashFallback,
|
|
2926
2920
|
healthchecks: {}
|
|
2927
2921
|
};
|
|
2928
|
-
return t.fields.hostHeader && (d.host_header = t.fields.hostHeader), t.fields.clientCertificate && (d.client_certificate = { id: t.fields.clientCertificate }), t.fields.healthchecksThreshold && (d.healthchecks.threshold = Number(t.fields.healthchecksThreshold)), t.fields.tags && (d.tags = (o = (
|
|
2922
|
+
return t.fields.hostHeader && (d.host_header = t.fields.hostHeader), t.fields.clientCertificate && (d.client_certificate = { id: t.fields.clientCertificate }), t.fields.healthchecksThreshold && (d.healthchecks.threshold = Number(t.fields.healthchecksThreshold)), t.fields.tags && (d.tags = (o = (r = t.fields.tags.split(",")) == null ? void 0 : r.map((ee) => String(ee || "").trim())) == null ? void 0 : o.filter((ee) => ee !== "")), t.fields.hashOn === "header" && (d.hash_on_header = t.fields.hashOnHeader), (t.fields.hashOn === "cookie" || t.fields.hashFallback === "cookie") && (d.hash_on_cookie = t.fields.hashOnCookie, d.hash_on_cookie_path = t.fields.hashOnCookiePath), t.fields.hashOn === "query_arg" && (d.hash_on_query_arg = t.fields.hashOnQueryArgument), t.fields.hashOn === "uri_capture" && (d.hash_on_uri_capture = t.fields.hashOnUriCapture), t.fields.hashFallback === "header" && (d.hash_fallback_header = t.fields.hashFallbackHeader), t.fields.hashFallback === "query_arg" && (d.hash_fallback_query_arg = t.fields.hashFallbackQueryArgument), t.fields.hashFallback === "uri_capture" && (d.hash_fallback_uri_capture = t.fields.hashFallbackUriCapture), t.fields.activeHealthSwitch ? (d.healthchecks.active = {
|
|
2929
2923
|
type: t.fields.activeHealthCheck.type,
|
|
2930
2924
|
healthy: {},
|
|
2931
2925
|
unhealthy: {}
|
|
2932
|
-
}, t.fields.activeHealthCheck.timeout && (d.healthchecks.active.timeout = Number(t.fields.activeHealthCheck.timeout)), t.fields.activeHealthCheck.concurrency && (d.healthchecks.active.concurrency = Number(t.fields.activeHealthCheck.concurrency)), t.fields.activeHealthCheck.type !== "tcp" && t.fields.activeHealthCheck.httpPath && (d.healthchecks.active.http_path = t.fields.activeHealthCheck.httpPath), ((
|
|
2933
|
-
var
|
|
2934
|
-
return
|
|
2935
|
-
...
|
|
2936
|
-
[
|
|
2926
|
+
}, t.fields.activeHealthCheck.timeout && (d.healthchecks.active.timeout = Number(t.fields.activeHealthCheck.timeout)), t.fields.activeHealthCheck.concurrency && (d.healthchecks.active.concurrency = Number(t.fields.activeHealthCheck.concurrency)), t.fields.activeHealthCheck.type !== "tcp" && t.fields.activeHealthCheck.httpPath && (d.healthchecks.active.http_path = t.fields.activeHealthCheck.httpPath), ((Y = i.config) == null ? void 0 : Y.app) === "kongManager" && (t.fields.activeHealthCheck.headers.length === 0 ? d.healthchecks.active.headers = [] : d.healthchecks.active.headers = t.fields.activeHealthCheck.headers.reduce((ee, ie) => {
|
|
2927
|
+
var ve, be;
|
|
2928
|
+
return ie.key ? {
|
|
2929
|
+
...ee,
|
|
2930
|
+
[ie.key]: (be = (ve = ie.values.split(",")) == null ? void 0 : ve.map((de) => String(de || "").trim())) == null ? void 0 : be.filter((de) => de !== "")
|
|
2937
2931
|
} : {
|
|
2938
|
-
...
|
|
2932
|
+
...ee
|
|
2939
2933
|
};
|
|
2940
|
-
}, {})), (t.fields.activeHealthCheck.type === "https" || t.fields.activeHealthCheck.type === "grpcs") && t.fields.activeHealthCheck.httpsSni && (d.healthchecks.active.https_sni = t.fields.activeHealthCheck.httpsSni), (t.fields.activeHealthCheck.type === "https" || t.fields.activeHealthCheck.type === "grpcs") && (d.healthchecks.active.https_verify_certificate = t.fields.activeHealthCheck.verifySsl), t.fields.activeHealthCheck.interval && (d.healthchecks.active.healthy.interval = Number(t.fields.activeHealthCheck.interval)), t.fields.activeHealthCheck.successes && (d.healthchecks.active.healthy.successes = Number(t.fields.activeHealthCheck.successes)), t.fields.activeHealthCheck.type !== "tcp" && t.fields.activeHealthCheck.httpStatuses && (d.healthchecks.active.healthy.http_statuses = k(t.fields.activeHealthCheck.httpStatuses)), t.fields.activeHealthCheck.unhealthyInterval && (d.healthchecks.active.unhealthy.interval = Number(t.fields.activeHealthCheck.unhealthyInterval)), t.fields.activeHealthCheck.unhealthyTimeouts && (d.healthchecks.active.unhealthy.timeouts = Number(t.fields.activeHealthCheck.unhealthyTimeouts)), t.fields.activeHealthCheck.type !== "tcp" && t.fields.activeHealthCheck.unhealthyHttpStatuses && (d.healthchecks.active.unhealthy.http_statuses = k(t.fields.activeHealthCheck.unhealthyHttpStatuses)), t.fields.activeHealthCheck.type !== "tcp" && t.fields.activeHealthCheck.httpFailures && (d.healthchecks.active.unhealthy.http_failures = Number(t.fields.activeHealthCheck.httpFailures)), t.fields.activeHealthCheck.tcpFailures && (d.healthchecks.active.unhealthy.tcp_failures = Number(t.fields.activeHealthCheck.tcpFailures))) : ((
|
|
2934
|
+
}, {})), (t.fields.activeHealthCheck.type === "https" || t.fields.activeHealthCheck.type === "grpcs") && t.fields.activeHealthCheck.httpsSni && (d.healthchecks.active.https_sni = t.fields.activeHealthCheck.httpsSni), (t.fields.activeHealthCheck.type === "https" || t.fields.activeHealthCheck.type === "grpcs") && (d.healthchecks.active.https_verify_certificate = t.fields.activeHealthCheck.verifySsl), t.fields.activeHealthCheck.interval && (d.healthchecks.active.healthy.interval = Number(t.fields.activeHealthCheck.interval)), t.fields.activeHealthCheck.successes && (d.healthchecks.active.healthy.successes = Number(t.fields.activeHealthCheck.successes)), t.fields.activeHealthCheck.type !== "tcp" && t.fields.activeHealthCheck.httpStatuses && (d.healthchecks.active.healthy.http_statuses = k(t.fields.activeHealthCheck.httpStatuses)), t.fields.activeHealthCheck.unhealthyInterval && (d.healthchecks.active.unhealthy.interval = Number(t.fields.activeHealthCheck.unhealthyInterval)), t.fields.activeHealthCheck.unhealthyTimeouts && (d.healthchecks.active.unhealthy.timeouts = Number(t.fields.activeHealthCheck.unhealthyTimeouts)), t.fields.activeHealthCheck.type !== "tcp" && t.fields.activeHealthCheck.unhealthyHttpStatuses && (d.healthchecks.active.unhealthy.http_statuses = k(t.fields.activeHealthCheck.unhealthyHttpStatuses)), t.fields.activeHealthCheck.type !== "tcp" && t.fields.activeHealthCheck.httpFailures && (d.healthchecks.active.unhealthy.http_failures = Number(t.fields.activeHealthCheck.httpFailures)), t.fields.activeHealthCheck.tcpFailures && (d.healthchecks.active.unhealthy.tcp_failures = Number(t.fields.activeHealthCheck.tcpFailures))) : ((j = i.config) == null ? void 0 : j.app) === "kongManager" && J.value === oe.Edit && (d.healthchecks.active = {
|
|
2941
2935
|
type: t.fields.activeHealthCheck.type,
|
|
2942
2936
|
headers: {},
|
|
2943
2937
|
healthy: {
|
|
@@ -2953,7 +2947,7 @@ const he = {
|
|
|
2953
2947
|
type: t.fields.passiveHealthCheck.type,
|
|
2954
2948
|
healthy: {},
|
|
2955
2949
|
unhealthy: {}
|
|
2956
|
-
}, t.fields.passiveHealthCheck.successes && (d.healthchecks.passive.healthy.successes = Number(t.fields.passiveHealthCheck.successes)), t.fields.passiveHealthCheck.type !== "tcp" && t.fields.passiveHealthCheck.httpStatuses && (d.healthchecks.passive.healthy.http_statuses = k(t.fields.passiveHealthCheck.httpStatuses)), t.fields.passiveHealthCheck.timeouts && (d.healthchecks.passive.unhealthy.timeouts = Number(t.fields.passiveHealthCheck.timeouts)), t.fields.passiveHealthCheck.type !== "tcp" && t.fields.passiveHealthCheck.unhealthyHttpStatuses && (d.healthchecks.passive.unhealthy.http_statuses = k(t.fields.passiveHealthCheck.unhealthyHttpStatuses)), t.fields.passiveHealthCheck.type !== "tcp" && t.fields.passiveHealthCheck.httpFailures && (d.healthchecks.passive.unhealthy.http_failures = Number(t.fields.passiveHealthCheck.httpFailures)), t.fields.passiveHealthCheck.tcpFailures && (d.healthchecks.passive.unhealthy.tcp_failures = Number(t.fields.passiveHealthCheck.tcpFailures))) : ((
|
|
2950
|
+
}, t.fields.passiveHealthCheck.successes && (d.healthchecks.passive.healthy.successes = Number(t.fields.passiveHealthCheck.successes)), t.fields.passiveHealthCheck.type !== "tcp" && t.fields.passiveHealthCheck.httpStatuses && (d.healthchecks.passive.healthy.http_statuses = k(t.fields.passiveHealthCheck.httpStatuses)), t.fields.passiveHealthCheck.timeouts && (d.healthchecks.passive.unhealthy.timeouts = Number(t.fields.passiveHealthCheck.timeouts)), t.fields.passiveHealthCheck.type !== "tcp" && t.fields.passiveHealthCheck.unhealthyHttpStatuses && (d.healthchecks.passive.unhealthy.http_statuses = k(t.fields.passiveHealthCheck.unhealthyHttpStatuses)), t.fields.passiveHealthCheck.type !== "tcp" && t.fields.passiveHealthCheck.httpFailures && (d.healthchecks.passive.unhealthy.http_failures = Number(t.fields.passiveHealthCheck.httpFailures)), t.fields.passiveHealthCheck.tcpFailures && (d.healthchecks.passive.unhealthy.tcp_failures = Number(t.fields.passiveHealthCheck.tcpFailures))) : ((Z = i.config) == null ? void 0 : Z.app) === "kongManager" && J.value === oe.Edit && (d.healthchecks.passive = {
|
|
2957
2951
|
type: t.fields.passiveHealthCheck.type,
|
|
2958
2952
|
healthy: {
|
|
2959
2953
|
successes: 0
|
|
@@ -2964,152 +2958,152 @@ const he = {
|
|
|
2964
2958
|
http_failures: 0
|
|
2965
2959
|
}
|
|
2966
2960
|
}), d;
|
|
2967
|
-
}),
|
|
2968
|
-
var o,
|
|
2969
|
-
let
|
|
2970
|
-
return ((
|
|
2971
|
-
},
|
|
2961
|
+
}), T = (d) => {
|
|
2962
|
+
var o, Y, j, Z, ee, ie;
|
|
2963
|
+
let r = `${(o = i.config) == null ? void 0 : o.apiBaseUrl}${ge.form[(Y = i.config) == null ? void 0 : Y.app][d]}`;
|
|
2964
|
+
return ((j = i.config) == null ? void 0 : j.app) === "konnect" ? r = r.replace(/{controlPlaneId}/gi, ((Z = i.config) == null ? void 0 : Z.controlPlaneId) || "") : ((ee = i.config) == null ? void 0 : ee.app) === "kongManager" && (r = r.replace(/\/{workspace}/gi, (ie = i.config) != null && ie.workspace ? `/${i.config.workspace}` : "")), r = r.replace(/{id}/gi, i.upstreamId), r;
|
|
2965
|
+
}, P = async () => {
|
|
2972
2966
|
var d;
|
|
2973
2967
|
try {
|
|
2974
|
-
t.readonly = !0, await c.post(
|
|
2975
|
-
let
|
|
2976
|
-
J.value === oe.Create ?
|
|
2977
|
-
} catch (
|
|
2978
|
-
t.errorMessage =
|
|
2968
|
+
t.readonly = !0, await c.post(T("validate"), C.value);
|
|
2969
|
+
let r;
|
|
2970
|
+
J.value === oe.Create ? r = await c.post(T("create"), C.value) : J.value === oe.Edit && (r = ((d = i.config) == null ? void 0 : d.app) === "konnect" ? await c.put(T("edit"), C.value) : await c.patch(T("edit"), C.value)), s("update", r == null ? void 0 : r.data);
|
|
2971
|
+
} catch (r) {
|
|
2972
|
+
t.errorMessage = H(r), s("error", r);
|
|
2979
2973
|
} finally {
|
|
2980
2974
|
t.readonly = !1;
|
|
2981
2975
|
}
|
|
2982
2976
|
};
|
|
2983
|
-
return (d,
|
|
2984
|
-
h(e(
|
|
2985
|
-
"can-submit": D.value &&
|
|
2977
|
+
return (d, r) => (x(), ae("div", Ka, [
|
|
2978
|
+
h(e(Ct), {
|
|
2979
|
+
"can-submit": D.value && q.value,
|
|
2986
2980
|
config: a.config,
|
|
2987
2981
|
"edit-id": a.upstreamId,
|
|
2988
|
-
"entity-type": e(
|
|
2982
|
+
"entity-type": e(Me).Upstream,
|
|
2989
2983
|
"error-message": t.errorMessage,
|
|
2990
|
-
"fetch-url":
|
|
2991
|
-
"form-fields":
|
|
2984
|
+
"fetch-url": te.value,
|
|
2985
|
+
"form-fields": C.value,
|
|
2992
2986
|
"is-readonly": t.readonly,
|
|
2993
|
-
onCancel:
|
|
2994
|
-
"onFetch:error":
|
|
2995
|
-
"onFetch:success":
|
|
2996
|
-
onLoading:
|
|
2997
|
-
onSubmit:
|
|
2987
|
+
onCancel: M,
|
|
2988
|
+
"onFetch:error": G,
|
|
2989
|
+
"onFetch:success": le,
|
|
2990
|
+
onLoading: $,
|
|
2991
|
+
onSubmit: P
|
|
2998
2992
|
}, {
|
|
2999
2993
|
default: n(() => [
|
|
3000
|
-
h(
|
|
2994
|
+
h(ua, {
|
|
3001
2995
|
"client-certificate": t.fields.clientCertificate,
|
|
3002
|
-
"onUpdate:clientCertificate":
|
|
2996
|
+
"onUpdate:clientCertificate": r[0] || (r[0] = (o) => t.fields.clientCertificate = o),
|
|
3003
2997
|
"host-header": t.fields.hostHeader,
|
|
3004
|
-
"onUpdate:hostHeader":
|
|
2998
|
+
"onUpdate:hostHeader": r[1] || (r[1] = (o) => t.fields.hostHeader = o),
|
|
3005
2999
|
name: t.fields.name,
|
|
3006
|
-
"onUpdate:name":
|
|
3000
|
+
"onUpdate:name": r[2] || (r[2] = (o) => t.fields.name = o),
|
|
3007
3001
|
tags: t.fields.tags,
|
|
3008
|
-
"onUpdate:tags":
|
|
3002
|
+
"onUpdate:tags": r[3] || (r[3] = (o) => t.fields.tags = o),
|
|
3009
3003
|
config: a.config,
|
|
3010
3004
|
readonly: t.readonly
|
|
3011
3005
|
}, null, 8, ["client-certificate", "host-header", "name", "tags", "config", "readonly"]),
|
|
3012
|
-
h(
|
|
3006
|
+
h(ya, {
|
|
3013
3007
|
algorithm: t.fields.algorithm,
|
|
3014
|
-
"onUpdate:algorithm":
|
|
3008
|
+
"onUpdate:algorithm": r[4] || (r[4] = (o) => t.fields.algorithm = o),
|
|
3015
3009
|
"hash-fallback": t.fields.hashFallback,
|
|
3016
|
-
"onUpdate:hashFallback":
|
|
3010
|
+
"onUpdate:hashFallback": r[5] || (r[5] = (o) => t.fields.hashFallback = o),
|
|
3017
3011
|
"hash-fallback-header": t.fields.hashFallbackHeader,
|
|
3018
|
-
"onUpdate:hashFallbackHeader":
|
|
3012
|
+
"onUpdate:hashFallbackHeader": r[6] || (r[6] = (o) => t.fields.hashFallbackHeader = o),
|
|
3019
3013
|
"hash-fallback-query-argument": t.fields.hashFallbackQueryArgument,
|
|
3020
|
-
"onUpdate:hashFallbackQueryArgument":
|
|
3014
|
+
"onUpdate:hashFallbackQueryArgument": r[7] || (r[7] = (o) => t.fields.hashFallbackQueryArgument = o),
|
|
3021
3015
|
"hash-fallback-uri-capture": t.fields.hashFallbackUriCapture,
|
|
3022
|
-
"onUpdate:hashFallbackUriCapture":
|
|
3016
|
+
"onUpdate:hashFallbackUriCapture": r[8] || (r[8] = (o) => t.fields.hashFallbackUriCapture = o),
|
|
3023
3017
|
"hash-on": t.fields.hashOn,
|
|
3024
|
-
"onUpdate:hashOn":
|
|
3018
|
+
"onUpdate:hashOn": r[9] || (r[9] = (o) => t.fields.hashOn = o),
|
|
3025
3019
|
"hash-on-cookie": t.fields.hashOnCookie,
|
|
3026
|
-
"onUpdate:hashOnCookie":
|
|
3020
|
+
"onUpdate:hashOnCookie": r[10] || (r[10] = (o) => t.fields.hashOnCookie = o),
|
|
3027
3021
|
"hash-on-cookie-path": t.fields.hashOnCookiePath,
|
|
3028
|
-
"onUpdate:hashOnCookiePath":
|
|
3022
|
+
"onUpdate:hashOnCookiePath": r[11] || (r[11] = (o) => t.fields.hashOnCookiePath = o),
|
|
3029
3023
|
"hash-on-header": t.fields.hashOnHeader,
|
|
3030
|
-
"onUpdate:hashOnHeader":
|
|
3024
|
+
"onUpdate:hashOnHeader": r[12] || (r[12] = (o) => t.fields.hashOnHeader = o),
|
|
3031
3025
|
"hash-on-query-argument": t.fields.hashOnQueryArgument,
|
|
3032
|
-
"onUpdate:hashOnQueryArgument":
|
|
3026
|
+
"onUpdate:hashOnQueryArgument": r[13] || (r[13] = (o) => t.fields.hashOnQueryArgument = o),
|
|
3033
3027
|
"hash-on-uri-capture": t.fields.hashOnUriCapture,
|
|
3034
|
-
"onUpdate:hashOnUriCapture":
|
|
3028
|
+
"onUpdate:hashOnUriCapture": r[14] || (r[14] = (o) => t.fields.hashOnUriCapture = o),
|
|
3035
3029
|
slots: t.fields.slots,
|
|
3036
|
-
"onUpdate:slots":
|
|
3030
|
+
"onUpdate:slots": r[15] || (r[15] = (o) => t.fields.slots = o),
|
|
3037
3031
|
readonly: t.readonly
|
|
3038
3032
|
}, null, 8, ["algorithm", "hash-fallback", "hash-fallback-header", "hash-fallback-query-argument", "hash-fallback-uri-capture", "hash-on", "hash-on-cookie", "hash-on-cookie-path", "hash-on-header", "hash-on-query-argument", "hash-on-uri-capture", "slots", "readonly"]),
|
|
3039
|
-
h(
|
|
3033
|
+
h(Ca, {
|
|
3040
3034
|
"active-health-switch": t.fields.activeHealthSwitch,
|
|
3041
3035
|
"onUpdate:activeHealthSwitch": [
|
|
3042
|
-
|
|
3036
|
+
r[16] || (r[16] = (o) => t.fields.activeHealthSwitch = o),
|
|
3043
3037
|
p
|
|
3044
3038
|
],
|
|
3045
3039
|
"healthchecks-threshold": t.fields.healthchecksThreshold,
|
|
3046
|
-
"onUpdate:healthchecksThreshold":
|
|
3040
|
+
"onUpdate:healthchecksThreshold": r[17] || (r[17] = (o) => t.fields.healthchecksThreshold = o),
|
|
3047
3041
|
"passive-health-switch": t.fields.passiveHealthSwitch,
|
|
3048
3042
|
"onUpdate:passiveHealthSwitch": [
|
|
3049
|
-
|
|
3050
|
-
|
|
3043
|
+
r[18] || (r[18] = (o) => t.fields.passiveHealthSwitch = o),
|
|
3044
|
+
S
|
|
3051
3045
|
],
|
|
3052
3046
|
readonly: t.readonly
|
|
3053
3047
|
}, null, 8, ["active-health-switch", "healthchecks-threshold", "passive-health-switch", "readonly"]),
|
|
3054
|
-
t.fields.activeHealthSwitch ? (x(),
|
|
3048
|
+
t.fields.activeHealthSwitch ? (x(), B(Ta, {
|
|
3055
3049
|
key: 0,
|
|
3056
3050
|
concurrency: t.fields.activeHealthCheck.concurrency,
|
|
3057
|
-
"onUpdate:concurrency":
|
|
3051
|
+
"onUpdate:concurrency": r[19] || (r[19] = (o) => t.fields.activeHealthCheck.concurrency = o),
|
|
3058
3052
|
headers: t.fields.activeHealthCheck.headers,
|
|
3059
|
-
"onUpdate:headers":
|
|
3053
|
+
"onUpdate:headers": r[20] || (r[20] = (o) => t.fields.activeHealthCheck.headers = o),
|
|
3060
3054
|
"http-failures": t.fields.activeHealthCheck.httpFailures,
|
|
3061
|
-
"onUpdate:httpFailures":
|
|
3055
|
+
"onUpdate:httpFailures": r[21] || (r[21] = (o) => t.fields.activeHealthCheck.httpFailures = o),
|
|
3062
3056
|
"http-path": t.fields.activeHealthCheck.httpPath,
|
|
3063
|
-
"onUpdate:httpPath":
|
|
3057
|
+
"onUpdate:httpPath": r[22] || (r[22] = (o) => t.fields.activeHealthCheck.httpPath = o),
|
|
3064
3058
|
"http-statuses": t.fields.activeHealthCheck.httpStatuses,
|
|
3065
|
-
"onUpdate:httpStatuses":
|
|
3059
|
+
"onUpdate:httpStatuses": r[23] || (r[23] = (o) => t.fields.activeHealthCheck.httpStatuses = o),
|
|
3066
3060
|
"https-sni": t.fields.activeHealthCheck.httpsSni,
|
|
3067
|
-
"onUpdate:httpsSni":
|
|
3061
|
+
"onUpdate:httpsSni": r[24] || (r[24] = (o) => t.fields.activeHealthCheck.httpsSni = o),
|
|
3068
3062
|
interval: t.fields.activeHealthCheck.interval,
|
|
3069
|
-
"onUpdate:interval":
|
|
3063
|
+
"onUpdate:interval": r[25] || (r[25] = (o) => t.fields.activeHealthCheck.interval = o),
|
|
3070
3064
|
successes: t.fields.activeHealthCheck.successes,
|
|
3071
|
-
"onUpdate:successes":
|
|
3065
|
+
"onUpdate:successes": r[26] || (r[26] = (o) => t.fields.activeHealthCheck.successes = o),
|
|
3072
3066
|
"tcp-failures": t.fields.activeHealthCheck.tcpFailures,
|
|
3073
|
-
"onUpdate:tcpFailures":
|
|
3067
|
+
"onUpdate:tcpFailures": r[27] || (r[27] = (o) => t.fields.activeHealthCheck.tcpFailures = o),
|
|
3074
3068
|
timeout: t.fields.activeHealthCheck.timeout,
|
|
3075
|
-
"onUpdate:timeout":
|
|
3069
|
+
"onUpdate:timeout": r[28] || (r[28] = (o) => t.fields.activeHealthCheck.timeout = o),
|
|
3076
3070
|
type: t.fields.activeHealthCheck.type,
|
|
3077
|
-
"onUpdate:type":
|
|
3071
|
+
"onUpdate:type": r[29] || (r[29] = (o) => t.fields.activeHealthCheck.type = o),
|
|
3078
3072
|
"unhealthy-http-statuses": t.fields.activeHealthCheck.unhealthyHttpStatuses,
|
|
3079
|
-
"onUpdate:unhealthyHttpStatuses":
|
|
3073
|
+
"onUpdate:unhealthyHttpStatuses": r[30] || (r[30] = (o) => t.fields.activeHealthCheck.unhealthyHttpStatuses = o),
|
|
3080
3074
|
"unhealthy-interval": t.fields.activeHealthCheck.unhealthyInterval,
|
|
3081
|
-
"onUpdate:unhealthyInterval":
|
|
3075
|
+
"onUpdate:unhealthyInterval": r[31] || (r[31] = (o) => t.fields.activeHealthCheck.unhealthyInterval = o),
|
|
3082
3076
|
"unhealthy-timeouts": t.fields.activeHealthCheck.unhealthyTimeouts,
|
|
3083
|
-
"onUpdate:unhealthyTimeouts":
|
|
3077
|
+
"onUpdate:unhealthyTimeouts": r[32] || (r[32] = (o) => t.fields.activeHealthCheck.unhealthyTimeouts = o),
|
|
3084
3078
|
"verify-ssl": t.fields.activeHealthCheck.verifySsl,
|
|
3085
|
-
"onUpdate:verifySsl":
|
|
3079
|
+
"onUpdate:verifySsl": r[33] || (r[33] = (o) => t.fields.activeHealthCheck.verifySsl = o),
|
|
3086
3080
|
config: a.config,
|
|
3087
3081
|
readonly: t.readonly
|
|
3088
|
-
}, null, 8, ["concurrency", "headers", "http-failures", "http-path", "http-statuses", "https-sni", "interval", "successes", "tcp-failures", "timeout", "type", "unhealthy-http-statuses", "unhealthy-interval", "unhealthy-timeouts", "verify-ssl", "config", "readonly"])) :
|
|
3089
|
-
t.fields.passiveHealthSwitch ? (x(),
|
|
3082
|
+
}, null, 8, ["concurrency", "headers", "http-failures", "http-path", "http-statuses", "https-sni", "interval", "successes", "tcp-failures", "timeout", "type", "unhealthy-http-statuses", "unhealthy-interval", "unhealthy-timeouts", "verify-ssl", "config", "readonly"])) : L("", !0),
|
|
3083
|
+
t.fields.passiveHealthSwitch ? (x(), B(Aa, {
|
|
3090
3084
|
key: 1,
|
|
3091
3085
|
"http-failures": t.fields.passiveHealthCheck.httpFailures,
|
|
3092
|
-
"onUpdate:httpFailures":
|
|
3086
|
+
"onUpdate:httpFailures": r[34] || (r[34] = (o) => t.fields.passiveHealthCheck.httpFailures = o),
|
|
3093
3087
|
"http-statuses": t.fields.passiveHealthCheck.httpStatuses,
|
|
3094
|
-
"onUpdate:httpStatuses":
|
|
3088
|
+
"onUpdate:httpStatuses": r[35] || (r[35] = (o) => t.fields.passiveHealthCheck.httpStatuses = o),
|
|
3095
3089
|
successes: t.fields.passiveHealthCheck.successes,
|
|
3096
|
-
"onUpdate:successes":
|
|
3090
|
+
"onUpdate:successes": r[36] || (r[36] = (o) => t.fields.passiveHealthCheck.successes = o),
|
|
3097
3091
|
"tcp-failures": t.fields.passiveHealthCheck.tcpFailures,
|
|
3098
|
-
"onUpdate:tcpFailures":
|
|
3092
|
+
"onUpdate:tcpFailures": r[37] || (r[37] = (o) => t.fields.passiveHealthCheck.tcpFailures = o),
|
|
3099
3093
|
timeouts: t.fields.passiveHealthCheck.timeouts,
|
|
3100
|
-
"onUpdate:timeouts":
|
|
3094
|
+
"onUpdate:timeouts": r[38] || (r[38] = (o) => t.fields.passiveHealthCheck.timeouts = o),
|
|
3101
3095
|
type: t.fields.passiveHealthCheck.type,
|
|
3102
|
-
"onUpdate:type":
|
|
3096
|
+
"onUpdate:type": r[39] || (r[39] = (o) => t.fields.passiveHealthCheck.type = o),
|
|
3103
3097
|
"unhealthy-http-statuses": t.fields.passiveHealthCheck.unhealthyHttpStatuses,
|
|
3104
|
-
"onUpdate:unhealthyHttpStatuses":
|
|
3098
|
+
"onUpdate:unhealthyHttpStatuses": r[40] || (r[40] = (o) => t.fields.passiveHealthCheck.unhealthyHttpStatuses = o),
|
|
3105
3099
|
readonly: t.readonly
|
|
3106
|
-
}, null, 8, ["http-failures", "http-statuses", "successes", "tcp-failures", "timeouts", "type", "unhealthy-http-statuses", "readonly"])) :
|
|
3100
|
+
}, null, 8, ["http-failures", "http-statuses", "successes", "tcp-failures", "timeouts", "type", "unhealthy-http-statuses", "readonly"])) : L("", !0)
|
|
3107
3101
|
]),
|
|
3108
3102
|
_: 1
|
|
3109
3103
|
}, 8, ["can-submit", "config", "edit-id", "entity-type", "error-message", "fetch-url", "form-fields", "is-readonly"])
|
|
3110
3104
|
]));
|
|
3111
3105
|
}
|
|
3112
|
-
}),
|
|
3106
|
+
}), Wa = /* @__PURE__ */ ue(Va, [["__scopeId", "data-v-0669debc"]]), Na = { "data-testid": "client_certificate-plain-text" }, Ja = /* @__PURE__ */ se({
|
|
3113
3107
|
__name: "UpstreamsConfigCard",
|
|
3114
3108
|
props: {
|
|
3115
3109
|
/** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
|
|
@@ -3136,7 +3130,7 @@ const he = {
|
|
|
3136
3130
|
},
|
|
3137
3131
|
emits: ["loading", "fetch:error", "fetch:success"],
|
|
3138
3132
|
setup(a) {
|
|
3139
|
-
const
|
|
3133
|
+
const E = a, { i18n: { t: i }, i18nT: s } = he.useI18n(), { getPropValue: u } = Mt(), k = w(() => ge.form[E.config.app].edit), g = V({
|
|
3140
3134
|
id: {},
|
|
3141
3135
|
name: {},
|
|
3142
3136
|
created_at: {},
|
|
@@ -3144,7 +3138,7 @@ const he = {
|
|
|
3144
3138
|
algorithm: {
|
|
3145
3139
|
order: 5,
|
|
3146
3140
|
section: re.Basic,
|
|
3147
|
-
tooltip:
|
|
3141
|
+
tooltip: i("upstreams.form.fields.algorithm.tooltip")
|
|
3148
3142
|
},
|
|
3149
3143
|
slots: {
|
|
3150
3144
|
order: 6,
|
|
@@ -3165,7 +3159,7 @@ const he = {
|
|
|
3165
3159
|
hash_on_query_arg: {
|
|
3166
3160
|
order: 10,
|
|
3167
3161
|
section: re.Basic,
|
|
3168
|
-
label: `${
|
|
3162
|
+
label: `${i("upstreams.form.fields.hash_on.label")} ${i("upstreams.form.hash_labels.query_argument")}`
|
|
3169
3163
|
},
|
|
3170
3164
|
hash_on_cookie: {
|
|
3171
3165
|
order: 11,
|
|
@@ -3179,11 +3173,11 @@ const he = {
|
|
|
3179
3173
|
order: 13,
|
|
3180
3174
|
section: re.Basic,
|
|
3181
3175
|
// TODO: change to JsonArray
|
|
3182
|
-
type:
|
|
3176
|
+
type: At.Json
|
|
3183
3177
|
},
|
|
3184
3178
|
tags: {
|
|
3185
3179
|
order: 14,
|
|
3186
|
-
tooltip:
|
|
3180
|
+
tooltip: i("upstreams.form.hash_tooltips.tags")
|
|
3187
3181
|
},
|
|
3188
3182
|
// Advanced section
|
|
3189
3183
|
hash_fallback: {
|
|
@@ -3194,7 +3188,7 @@ const he = {
|
|
|
3194
3188
|
},
|
|
3195
3189
|
hash_fallback_query_arg: {
|
|
3196
3190
|
order: 3,
|
|
3197
|
-
label: `${
|
|
3191
|
+
label: `${i("upstreams.form.fields.hash_fallback.label")} ${i("upstreams.form.hash_labels.query_argument")}`
|
|
3198
3192
|
},
|
|
3199
3193
|
hash_fallback_uri_capture: {
|
|
3200
3194
|
order: 4
|
|
@@ -3207,20 +3201,20 @@ const he = {
|
|
|
3207
3201
|
},
|
|
3208
3202
|
client_certificate: {
|
|
3209
3203
|
order: 7,
|
|
3210
|
-
tooltip:
|
|
3204
|
+
tooltip: i("upstreams.form.hash_tooltips.client_certificate")
|
|
3211
3205
|
}
|
|
3212
3206
|
});
|
|
3213
|
-
return (
|
|
3214
|
-
h(e(
|
|
3207
|
+
return (N, F) => (x(), ae("div", null, [
|
|
3208
|
+
h(e(Kt), {
|
|
3215
3209
|
config: a.config,
|
|
3216
3210
|
"config-card-doc": a.configCardDoc,
|
|
3217
3211
|
"config-schema": g.value,
|
|
3218
|
-
"entity-type": e(
|
|
3212
|
+
"entity-type": e(Me).Upstream,
|
|
3219
3213
|
"fetch-url": k.value,
|
|
3220
3214
|
"hide-title": a.hideTitle,
|
|
3221
|
-
"onFetch:error": F[0] || (F[0] = (l) =>
|
|
3222
|
-
"onFetch:success": F[1] || (F[1] = (l) =>
|
|
3223
|
-
onLoading: F[2] || (F[2] = (l) =>
|
|
3215
|
+
"onFetch:error": F[0] || (F[0] = (l) => N.$emit("fetch:error", l)),
|
|
3216
|
+
"onFetch:success": F[1] || (F[1] = (l) => N.$emit("fetch:success", l)),
|
|
3217
|
+
onLoading: F[2] || (F[2] = (l) => N.$emit("loading", l))
|
|
3224
3218
|
}, {
|
|
3225
3219
|
"name-label-tooltip": n(() => [
|
|
3226
3220
|
h(e(s), {
|
|
@@ -3228,7 +3222,7 @@ const he = {
|
|
|
3228
3222
|
scope: "global"
|
|
3229
3223
|
}, {
|
|
3230
3224
|
host: n(() => [
|
|
3231
|
-
b("code", null, f(e(
|
|
3225
|
+
b("code", null, f(e(i)("upstreams.form.fields.name.host")), 1)
|
|
3232
3226
|
]),
|
|
3233
3227
|
_: 1
|
|
3234
3228
|
})
|
|
@@ -3250,10 +3244,10 @@ const he = {
|
|
|
3250
3244
|
scope: "global"
|
|
3251
3245
|
}, {
|
|
3252
3246
|
hash_on: n(() => [
|
|
3253
|
-
b("code", null, f(e(
|
|
3247
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_header.hash_on")), 1)
|
|
3254
3248
|
]),
|
|
3255
3249
|
header: n(() => [
|
|
3256
|
-
b("code", null, f(e(
|
|
3250
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_header.header")), 1)
|
|
3257
3251
|
]),
|
|
3258
3252
|
_: 1
|
|
3259
3253
|
})
|
|
@@ -3264,10 +3258,10 @@ const he = {
|
|
|
3264
3258
|
scope: "global"
|
|
3265
3259
|
}, {
|
|
3266
3260
|
hash_on: n(() => [
|
|
3267
|
-
b("code", null, f(e(
|
|
3261
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_uri_capture.hash_on")), 1)
|
|
3268
3262
|
]),
|
|
3269
3263
|
uri_capture: n(() => [
|
|
3270
|
-
b("code", null, f(e(
|
|
3264
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_uri_capture.uri_capture")), 1)
|
|
3271
3265
|
]),
|
|
3272
3266
|
_: 1
|
|
3273
3267
|
})
|
|
@@ -3278,10 +3272,10 @@ const he = {
|
|
|
3278
3272
|
scope: "global"
|
|
3279
3273
|
}, {
|
|
3280
3274
|
hash_on: n(() => [
|
|
3281
|
-
b("code", null, f(e(
|
|
3275
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_query_arg.hash_on")), 1)
|
|
3282
3276
|
]),
|
|
3283
3277
|
query_arg: n(() => [
|
|
3284
|
-
b("code", null, f(e(
|
|
3278
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_query_arg.query_arg")), 1)
|
|
3285
3279
|
]),
|
|
3286
3280
|
_: 1
|
|
3287
3281
|
})
|
|
@@ -3292,13 +3286,13 @@ const he = {
|
|
|
3292
3286
|
scope: "global"
|
|
3293
3287
|
}, {
|
|
3294
3288
|
hash_on: n(() => [
|
|
3295
|
-
b("code", null, f(e(
|
|
3289
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_cookie.hash_on")), 1)
|
|
3296
3290
|
]),
|
|
3297
3291
|
hash_fallback: n(() => [
|
|
3298
|
-
b("code", null, f(e(
|
|
3292
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_cookie.hash_fallback")), 1)
|
|
3299
3293
|
]),
|
|
3300
3294
|
cookie: n(() => [
|
|
3301
|
-
b("code", null, f(e(
|
|
3295
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_cookie.cookie")), 1)
|
|
3302
3296
|
]),
|
|
3303
3297
|
_: 1
|
|
3304
3298
|
})
|
|
@@ -3309,13 +3303,13 @@ const he = {
|
|
|
3309
3303
|
scope: "global"
|
|
3310
3304
|
}, {
|
|
3311
3305
|
hash_on: n(() => [
|
|
3312
|
-
b("code", null, f(e(
|
|
3306
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_cookie_path.hash_on")), 1)
|
|
3313
3307
|
]),
|
|
3314
3308
|
hash_fallback: n(() => [
|
|
3315
|
-
b("code", null, f(e(
|
|
3309
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_cookie_path.hash_fallback")), 1)
|
|
3316
3310
|
]),
|
|
3317
3311
|
cookie: n(() => [
|
|
3318
|
-
b("code", null, f(e(
|
|
3312
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_on_cookie_path.cookie")), 1)
|
|
3319
3313
|
]),
|
|
3320
3314
|
_: 1
|
|
3321
3315
|
})
|
|
@@ -3326,13 +3320,13 @@ const he = {
|
|
|
3326
3320
|
scope: "global"
|
|
3327
3321
|
}, {
|
|
3328
3322
|
algorithm: n(() => [
|
|
3329
|
-
b("code", null, f(e(
|
|
3323
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.slots.algorithm")), 1)
|
|
3330
3324
|
]),
|
|
3331
3325
|
round_robin: n(() => [
|
|
3332
|
-
b("code", null, f(e(
|
|
3326
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.slots.round_robin")), 1)
|
|
3333
3327
|
]),
|
|
3334
3328
|
consistent_hashing: n(() => [
|
|
3335
|
-
b("code", null, f(e(
|
|
3329
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.slots.consistent_hashing")), 1)
|
|
3336
3330
|
]),
|
|
3337
3331
|
min: n(() => F[3] || (F[3] = [
|
|
3338
3332
|
b("code", null, "10", -1)
|
|
@@ -3349,10 +3343,10 @@ const he = {
|
|
|
3349
3343
|
scope: "global"
|
|
3350
3344
|
}, {
|
|
3351
3345
|
hash_on: n(() => [
|
|
3352
|
-
b("code", null, f(e(
|
|
3346
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_fallback.hash_on")), 1)
|
|
3353
3347
|
]),
|
|
3354
3348
|
cookie: n(() => [
|
|
3355
|
-
b("code", null, f(e(
|
|
3349
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_fallback.cookie")), 1)
|
|
3356
3350
|
]),
|
|
3357
3351
|
_: 1
|
|
3358
3352
|
})
|
|
@@ -3363,10 +3357,10 @@ const he = {
|
|
|
3363
3357
|
scope: "global"
|
|
3364
3358
|
}, {
|
|
3365
3359
|
hash_fallback: n(() => [
|
|
3366
|
-
b("code", null, f(e(
|
|
3360
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_fallback_header.hash_fallback")), 1)
|
|
3367
3361
|
]),
|
|
3368
3362
|
header: n(() => [
|
|
3369
|
-
b("code", null, f(e(
|
|
3363
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_fallback_header.header")), 1)
|
|
3370
3364
|
]),
|
|
3371
3365
|
_: 1
|
|
3372
3366
|
})
|
|
@@ -3377,10 +3371,10 @@ const he = {
|
|
|
3377
3371
|
scope: "global"
|
|
3378
3372
|
}, {
|
|
3379
3373
|
hash_fallback: n(() => [
|
|
3380
|
-
b("code", null, f(e(
|
|
3374
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_fallback_query_arg.hash_fallback")), 1)
|
|
3381
3375
|
]),
|
|
3382
3376
|
query_arg: n(() => [
|
|
3383
|
-
b("code", null, f(e(
|
|
3377
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_fallback_query_arg.query_arg")), 1)
|
|
3384
3378
|
]),
|
|
3385
3379
|
_: 1
|
|
3386
3380
|
})
|
|
@@ -3391,10 +3385,10 @@ const he = {
|
|
|
3391
3385
|
scope: "global"
|
|
3392
3386
|
}, {
|
|
3393
3387
|
hash_fallback: n(() => [
|
|
3394
|
-
b("code", null, f(e(
|
|
3388
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_fallback_uri_capture.hash_fallback")), 1)
|
|
3395
3389
|
]),
|
|
3396
3390
|
uri_capture: n(() => [
|
|
3397
|
-
b("code", null, f(e(
|
|
3391
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.hash_fallback_uri_capture.uri_capture")), 1)
|
|
3398
3392
|
]),
|
|
3399
3393
|
_: 1
|
|
3400
3394
|
})
|
|
@@ -3405,7 +3399,7 @@ const he = {
|
|
|
3405
3399
|
scope: "global"
|
|
3406
3400
|
}, {
|
|
3407
3401
|
host: n(() => [
|
|
3408
|
-
b("code", null, f(e(
|
|
3402
|
+
b("code", null, f(e(i)("upstreams.form.hash_tooltips.host_header.host")), 1)
|
|
3409
3403
|
]),
|
|
3410
3404
|
_: 1
|
|
3411
3405
|
})
|
|
@@ -3414,7 +3408,7 @@ const he = {
|
|
|
3414
3408
|
var c;
|
|
3415
3409
|
return [
|
|
3416
3410
|
b("div", null, [
|
|
3417
|
-
b("div",
|
|
3411
|
+
b("div", Na, [
|
|
3418
3412
|
b("span", null, f((c = e(u)("rowValue", l)) == null ? void 0 : c.id), 1)
|
|
3419
3413
|
])
|
|
3420
3414
|
])
|
|
@@ -3426,9 +3420,9 @@ const he = {
|
|
|
3426
3420
|
}
|
|
3427
3421
|
});
|
|
3428
3422
|
export {
|
|
3429
|
-
|
|
3430
|
-
|
|
3431
|
-
|
|
3432
|
-
|
|
3433
|
-
|
|
3423
|
+
sa as TargetForm,
|
|
3424
|
+
Qa as TargetsList,
|
|
3425
|
+
Ja as UpstreamsConfigCard,
|
|
3426
|
+
Wa as UpstreamsForm,
|
|
3427
|
+
La as UpstreamsList
|
|
3434
3428
|
};
|