@kong-ui-public/entities-upstreams-targets 3.10.9 → 3.11.0

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 E, defineComponent as ne, computed as I, watch as de, onBeforeMount as Be, resolveComponent as K, createElementBlock as re, openBlock as F, createVNode as h, unref as e, createSlots as Ne, withCtx as r, createTextVNode as J, toDisplayString as y, createElementVNode as b, createBlock as N, Teleport as gt, createCommentVNode as B, reactive as Te, renderSlot as bt, Fragment as Ce, renderList as Ot, normalizeClass as $t } from "vue";
2
- import { useAxios as Ae, useTableState as Pt, useFetcher as vt, useDeleteUrlBuilder as kt, FetcherStatus as _t, EntityBaseTable as Ct, PermissionsWrapper as ce, TableTags as St, EntityFilter as At, EntityEmptyState as Mt, EntityDeleteModal as Ht, EntityTypes as Ut, useErrors as It, EntityBaseFormType as ue, EntityBaseForm as wt, SupportedEntityType as De, useDebouncedFilter as mt, EntityFormSection as He, useHelpers as Kt, ConfigurationSchemaType as Vt, ConfigurationSchemaSection as he, EntityBaseConfigCard as Nt } from "@kong-ui-public/entities-shared";
3
- import { useRouter as qt } from "vue-router";
4
- import { BookIcon as Et, AddIcon as je, CloudUploadIcon as Rt, TrashIcon as Bt } from "@kong/icons";
5
- import { createI18n as Dt, i18nTComponent as jt } from "@kong-ui-public/i18n";
6
- const Lt = {
1
+ import { ref as B, defineComponent as ne, computed as U, watch as de, onBeforeMount as Re, resolveComponent as $, createElementBlock as ie, openBlock as F, createVNode as h, unref as e, createSlots as Te, withCtx as n, createTextVNode as Q, toDisplayString as y, createElementVNode as b, createBlock as E, Teleport as gt, createCommentVNode as D, reactive as Fe, renderSlot as bt, Fragment as Ce, renderList as Ot, normalizeClass as $t } from "vue";
2
+ import { useAxios as Me, useTableState as Pt, useFetcher as vt, useDeleteUrlBuilder as kt, FetcherStatus as _t, EntityBaseTable as Ct, PermissionsWrapper as ce, TableTags as St, EntityFilter as At, EntityEmptyState as Mt, EntityDeleteModal as Ht, EntityTypes as Ut, useErrors as It, EntityBaseFormType as ue, EntityBaseForm as qt, SupportedEntityType as De, useDebouncedFilter as mt, EntityFormSection as He, useHelpers as Kt, ConfigurationSchemaType as Et, ConfigurationSchemaSection as he, EntityBaseConfigCard as Vt } from "@kong-ui-public/entities-shared";
3
+ import { useRouter as wt } from "vue-router";
4
+ import { BookIcon as Nt, AddIcon as Le, CloudUploadIcon as Bt, TrashIcon as Rt } from "@kong/icons";
5
+ import { createI18n as Dt, i18nTComponent as Lt } from "@kong-ui-public/i18n";
6
+ const jt = {
7
7
  list: {
8
8
  table_headers: {
9
9
  id: "ID",
@@ -310,7 +310,8 @@ const Lt = {
310
310
  id: "ID",
311
311
  target_address: "Target Address",
312
312
  weight: "Weight",
313
- tags: "Tags"
313
+ tags: "Tags",
314
+ target_type: "Target Type"
314
315
  },
315
316
  empty_state: {
316
317
  title: "Configure a New Target",
@@ -369,35 +370,42 @@ const Lt = {
369
370
  label: "Tags",
370
371
  placeholder: "Enter a list of tags separated by comma",
371
372
  help: "e.g. tag1, tag2, tag3"
373
+ },
374
+ failover: {
375
+ label: "Failover Target",
376
+ load_balance_target: "Load balance",
377
+ failover_target: "Failover",
378
+ help: "Whether to use this target only as backup.",
379
+ unsupported: "The current load balance algorithm does not support failover."
372
380
  }
373
381
  }
374
382
  }
375
383
  }, Wt = {
376
- upstreams: Lt,
384
+ upstreams: jt,
377
385
  targets: Qt
378
386
  };
379
387
  function Jt() {
380
388
  const a = Dt("en-us", Wt);
381
389
  return {
382
390
  i18n: a,
383
- i18nT: jt(a)
391
+ i18nT: Lt(a)
384
392
  // Translation component <i18n-t>
385
393
  };
386
394
  }
387
395
  function Se(a) {
388
- const { replaceId: R = !1 } = a, i = E([]);
396
+ const { replaceId: L = !1 } = a, i = B([]);
389
397
  return {
390
398
  addedItems: i,
391
- trackNewItems: (n, v) => {
399
+ trackNewItems: (r, v) => {
392
400
  if (v) {
393
- const f = { ...n };
394
- R && (f.value = n.label), i.value.push(f);
401
+ const f = { ...r };
402
+ L && (f.value = r.label), i.value.push(f);
395
403
  } else
396
- i.value = i.value.filter((f) => f.value !== n.value);
404
+ i.value = i.value.filter((f) => f.value !== r.value);
397
405
  }
398
406
  };
399
407
  }
400
- const Fe = [
408
+ const xe = [
401
409
  {
402
410
  label: "100",
403
411
  value: "100"
@@ -766,16 +774,16 @@ const Fe = [
766
774
  label: "599",
767
775
  value: "599"
768
776
  }
769
- ], Ee = 10, Re = 65536, zt = 0, Gt = 65535, ve = 0, ke = 255, Tt = 0, Ft = 255, Xt = 0, Zt = 65535, ft = 0, yt = 65535, Yt = 0, ea = 2 ** 31, xe = ["200", "302"], Oe = ["200", "201", "202", "203", "204", "205", "206", "207", "208", "226", "300", "301", "302", "303", "304", "305", "306", "307", "308"], $e = ["429", "404", "500", "501", "502", "503", "504", "505"], Pe = ["429", "500", "503"];
770
- function Me() {
771
- const a = (s) => /^\d+$/.test(s), R = (s, d, C) => {
777
+ ], Ne = 10, Be = 65536, zt = 0, Gt = 65535, ve = 0, ke = 255, Tt = 0, Ft = 255, Xt = 0, Zt = 65535, ft = 0, yt = 65535, Yt = 0, ea = 2 ** 31, Oe = ["200", "302"], $e = ["200", "201", "202", "203", "204", "205", "206", "207", "208", "226", "300", "301", "302", "303", "304", "305", "306", "307", "308"], Pe = ["429", "404", "500", "501", "502", "503", "504", "505"], Ae = ["429", "500", "503"], ta = ["latency", "least-connections", "round-robin"];
778
+ function Ke() {
779
+ const a = (s) => /^\d+$/.test(s), L = (s, d, C) => {
772
780
  if (a(s)) {
773
781
  const m = Number(s);
774
782
  return m >= d && m <= C;
775
783
  } else
776
784
  return !1;
777
- }, i = (s) => s.map((d) => Number(d)), l = (s) => s.map((d) => d.toString()), n = (s) => {
778
- var C, m, t, V, q, p, H, G, A, X, W, _, T, $, g, O, Q, le, z, oe, P, M, Z, se, te, Y, w, k, S, U, j, L, c, o, u, ae, ee, ie, fe, ye, Ue, Le, Qe, We, Je, ze, Ge, Xe, Ze, Ye, et, tt, at, lt, st, it, ot, rt, nt, ht, ut, ct, dt, pt;
785
+ }, i = (s) => s.map((d) => Number(d)), l = (s) => s.map((d) => d.toString()), r = (s) => {
786
+ var C, m, t, M, w, p, S, Y, K, W, J, z, _, T, g, q, N, R, G, oe, P, A, X, le, te, Z, I, k, H, x, V, re, u, o, c, ae, ee, se, fe, ye, Ue, je, Qe, We, Je, ze, Ge, Xe, Ze, Ye, et, tt, at, lt, st, it, ot, rt, nt, ht, ut, ct, dt, pt;
779
787
  return {
780
788
  name: (s == null ? void 0 : s.name) || "",
781
789
  hostHeader: (s == null ? void 0 : s.host_header) || "",
@@ -795,27 +803,27 @@ function Me() {
795
803
  hashFallbackHeader: (s == null ? void 0 : s.hash_fallback_header) || "",
796
804
  hashFallbackQueryArgument: (s == null ? void 0 : s.hash_fallback_query_arg) || "",
797
805
  hashFallbackUriCapture: (s == null ? void 0 : s.hash_fallback_uri_capture) || "",
798
- activeHealthSwitch: s ? ((q = (V = s.healthchecks.active) == null ? void 0 : V.healthy) == null ? void 0 : q.interval) !== 0 || ((H = (p = s.healthchecks.active) == null ? void 0 : p.unhealthy) == null ? void 0 : H.interval) !== 0 : !1,
799
- passiveHealthSwitch: s ? ((A = (G = s.healthchecks.passive) == null ? void 0 : G.healthy) == null ? void 0 : A.successes) !== 0 || ((W = (X = s.healthchecks.passive) == null ? void 0 : X.unhealthy) == null ? void 0 : W.timeouts) !== 0 || ((T = (_ = s.healthchecks.passive) == null ? void 0 : _.unhealthy) == null ? void 0 : T.tcp_failures) !== 0 || ((g = ($ = s.healthchecks.passive) == null ? void 0 : $.unhealthy) == null ? void 0 : g.http_failures) !== 0 : !1,
800
- healthchecksThreshold: ((O = s == null ? void 0 : s.healthchecks.threshold) == null ? void 0 : O.toString()) || "0",
806
+ activeHealthSwitch: s ? ((w = (M = s.healthchecks.active) == null ? void 0 : M.healthy) == null ? void 0 : w.interval) !== 0 || ((S = (p = s.healthchecks.active) == null ? void 0 : p.unhealthy) == null ? void 0 : S.interval) !== 0 : !1,
807
+ passiveHealthSwitch: s ? ((K = (Y = s.healthchecks.passive) == null ? void 0 : Y.healthy) == null ? void 0 : K.successes) !== 0 || ((J = (W = s.healthchecks.passive) == null ? void 0 : W.unhealthy) == null ? void 0 : J.timeouts) !== 0 || ((_ = (z = s.healthchecks.passive) == null ? void 0 : z.unhealthy) == null ? void 0 : _.tcp_failures) !== 0 || ((g = (T = s.healthchecks.passive) == null ? void 0 : T.unhealthy) == null ? void 0 : g.http_failures) !== 0 : !1,
808
+ healthchecksThreshold: ((q = s == null ? void 0 : s.healthchecks.threshold) == null ? void 0 : q.toString()) || "0",
801
809
  activeHealthCheck: {
802
- type: ((Q = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : Q.type) || "http",
803
- httpPath: ((le = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : le.http_path) || "/",
804
- timeout: ((oe = (z = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : z.timeout) == null ? void 0 : oe.toString()) || "1",
805
- concurrency: ((M = (P = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : P.concurrency) == null ? void 0 : M.toString()) || "10",
806
- httpsSni: ((Z = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : Z.https_sni) || "",
807
- verifySsl: ((se = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : se.https_verify_certificate) || !1,
810
+ type: ((N = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : N.type) || "http",
811
+ httpPath: ((R = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : R.http_path) || "/",
812
+ timeout: ((oe = (G = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : G.timeout) == null ? void 0 : oe.toString()) || "1",
813
+ concurrency: ((A = (P = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : P.concurrency) == null ? void 0 : A.toString()) || "10",
814
+ httpsSni: ((X = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : X.https_sni) || "",
815
+ verifySsl: ((le = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : le.https_verify_certificate) || !1,
808
816
  headers: (te = s == null ? void 0 : s.healthchecks.active) != null && te.headers && Object.entries(s.healthchecks.active.headers).length > 0 ? Object.entries(s.healthchecks.active.headers).map(([xt, Ve]) => ({ key: xt, values: Ve == null ? void 0 : Ve.join(", ") })) : [{ key: "", values: "" }],
809
817
  healthy: {
810
- interval: ((k = (w = (Y = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : Y.healthy) == null ? void 0 : w.interval) == null ? void 0 : k.toString()) || "0",
811
- successes: ((j = (U = (S = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : S.healthy) == null ? void 0 : U.successes) == null ? void 0 : j.toString()) || "5",
812
- httpStatuses: (c = (L = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : L.healthy) != null && c.http_statuses ? l(s.healthchecks.active.healthy.http_statuses) : xe
818
+ interval: ((k = (I = (Z = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : Z.healthy) == null ? void 0 : I.interval) == null ? void 0 : k.toString()) || "0",
819
+ successes: ((V = (x = (H = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : H.healthy) == null ? void 0 : x.successes) == null ? void 0 : V.toString()) || "5",
820
+ httpStatuses: (u = (re = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : re.healthy) != null && u.http_statuses ? l(s.healthchecks.active.healthy.http_statuses) : Oe
813
821
  },
814
822
  unhealthy: {
815
- interval: ((ae = (u = (o = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : o.unhealthy) == null ? void 0 : u.interval) == null ? void 0 : ae.toString()) || "0",
816
- httpFailures: ((fe = (ie = (ee = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : ee.unhealthy) == null ? void 0 : ie.http_failures) == null ? void 0 : fe.toString()) || "5",
817
- tcpFailures: ((Le = (Ue = (ye = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : ye.unhealthy) == null ? void 0 : Ue.tcp_failures) == null ? void 0 : Le.toString()) || "5",
818
- httpStatuses: (We = (Qe = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : Qe.unhealthy) != null && We.http_statuses ? l(s.healthchecks.active.unhealthy.http_statuses) : $e,
823
+ interval: ((ae = (c = (o = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : o.unhealthy) == null ? void 0 : c.interval) == null ? void 0 : ae.toString()) || "0",
824
+ httpFailures: ((fe = (se = (ee = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : ee.unhealthy) == null ? void 0 : se.http_failures) == null ? void 0 : fe.toString()) || "5",
825
+ tcpFailures: ((je = (Ue = (ye = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : ye.unhealthy) == null ? void 0 : Ue.tcp_failures) == null ? void 0 : je.toString()) || "5",
826
+ httpStatuses: (We = (Qe = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : Qe.unhealthy) != null && We.http_statuses ? l(s.healthchecks.active.unhealthy.http_statuses) : Pe,
819
827
  timeouts: ((Ge = (ze = (Je = s == null ? void 0 : s.healthchecks.active) == null ? void 0 : Je.unhealthy) == null ? void 0 : ze.timeouts) == null ? void 0 : Ge.toString()) || "0"
820
828
  }
821
829
  },
@@ -823,24 +831,24 @@ function Me() {
823
831
  type: ((Xe = s == null ? void 0 : s.healthchecks.passive) == null ? void 0 : Xe.type) || "http",
824
832
  healthy: {
825
833
  successes: ((et = (Ye = (Ze = s == null ? void 0 : s.healthchecks.passive) == null ? void 0 : Ze.healthy) == null ? void 0 : Ye.successes) == null ? void 0 : et.toString()) || "5",
826
- httpStatuses: (at = (tt = s == null ? void 0 : s.healthchecks.passive) == null ? void 0 : tt.healthy) != null && at.http_statuses ? l(s.healthchecks.passive.healthy.http_statuses) : Oe
834
+ httpStatuses: (at = (tt = s == null ? void 0 : s.healthchecks.passive) == null ? void 0 : tt.healthy) != null && at.http_statuses ? l(s.healthchecks.passive.healthy.http_statuses) : $e
827
835
  },
828
836
  unhealthy: {
829
837
  timeouts: ((it = (st = (lt = s == null ? void 0 : s.healthchecks.passive) == null ? void 0 : lt.unhealthy) == null ? void 0 : st.timeouts) == null ? void 0 : it.toString()) || "0",
830
838
  httpFailures: ((nt = (rt = (ot = s == null ? void 0 : s.healthchecks.passive) == null ? void 0 : ot.unhealthy) == null ? void 0 : rt.http_failures) == null ? void 0 : nt.toString()) || "5",
831
839
  tcpFailures: ((ct = (ut = (ht = s == null ? void 0 : s.healthchecks.passive) == null ? void 0 : ht.unhealthy) == null ? void 0 : ut.tcp_failures) == null ? void 0 : ct.toString()) || "5",
832
- httpStatuses: (pt = (dt = s == null ? void 0 : s.healthchecks.passive) == null ? void 0 : dt.unhealthy) != null && pt.http_statuses ? l(s.healthchecks.passive.unhealthy.http_statuses) : Pe
840
+ httpStatuses: (pt = (dt = s == null ? void 0 : s.healthchecks.passive) == null ? void 0 : dt.unhealthy) != null && pt.http_statuses ? l(s.healthchecks.passive.unhealthy.http_statuses) : Ae
833
841
  }
834
842
  }
835
843
  };
836
844
  };
837
845
  return {
838
846
  isInteger: a,
839
- inRange: R,
847
+ inRange: L,
840
848
  stringToNumberArray: i,
841
849
  numberToStringArray: l,
842
- upstreamsResponseToFields: (s) => n(s),
843
- getDefaultUpstreamFields: () => n(),
850
+ upstreamsResponseToFields: (s) => r(s),
851
+ getDefaultUpstreamFields: () => r(),
844
852
  objectsAreEqual: (s, d) => {
845
853
  try {
846
854
  return JSON.stringify(s) === JSON.stringify(d);
@@ -854,7 +862,7 @@ function Me() {
854
862
  const pe = {
855
863
  useI18n: Jt,
856
864
  useMultiselectCreation: Se,
857
- useHelpers: Me
865
+ useHelpers: Ke
858
866
  }, ge = "/v2/control-planes/{controlPlaneId}/core-entities", be = "/{workspace}", _e = {
859
867
  list: {
860
868
  konnect: `${ge}/upstreams`,
@@ -876,7 +884,7 @@ const pe = {
876
884
  edit: `${be}/upstreams/{id}`
877
885
  }
878
886
  }
879
- }, ta = "#d60027", aa = "#00abd2", la = "24px", sa = { class: "kong-ui-entities-upstreams-list" }, ia = { class: "button-row" }, oa = { class: "empty-state-icon-gateway" }, ra = { class: "upstream-name" }, na = /* @__PURE__ */ ne({
887
+ }, aa = "#d60027", la = "#00abd2", sa = "24px", ia = { class: "kong-ui-entities-upstreams-list" }, oa = { class: "button-row" }, ra = { class: "empty-state-icon-gateway" }, na = { class: "upstream-name" }, ha = /* @__PURE__ */ ne({
880
888
  __name: "UpstreamsList",
881
889
  props: {
882
890
  /** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
@@ -921,171 +929,171 @@ const pe = {
921
929
  }
922
930
  },
923
931
  emits: ["error", "click:learn-more", "copy:success", "copy:error", "delete:success"],
924
- setup(a, { emit: R }) {
925
- var w;
926
- const i = R, l = a, { i18n: { t: n } } = pe.useI18n(), v = qt(), { axiosInstance: f } = Ae((w = l.config) == null ? void 0 : w.axiosRequestConfig), { hasRecords: D, handleStateChange: x } = Pt(() => V.value), s = I(() => D.value && l.config.app === "konnect"), d = I(() => l.config.app !== "kongManager" || !!l.config.disableSorting), C = {
932
+ setup(a, { emit: L }) {
933
+ var I;
934
+ const i = L, l = a, { i18n: { t: r } } = pe.useI18n(), v = wt(), { axiosInstance: f } = Me((I = l.config) == null ? void 0 : I.axiosRequestConfig), { hasRecords: j, handleStateChange: O } = Pt(() => M.value), s = U(() => j.value && l.config.app === "konnect"), d = U(() => l.config.app !== "kongManager" || !!l.config.disableSorting), C = {
927
935
  // the Name column is non-hidable
928
- name: { label: n("upstreams.list.table_headers.name"), searchable: !0, sortable: !0, hidable: !1 },
929
- slots: { label: n("upstreams.list.table_headers.slots"), searchable: !0, sortable: !0 },
930
- tags: { label: n("upstreams.list.table_headers.tags"), sortable: !1 }
931
- }, m = C, t = I(() => {
932
- var S, U;
936
+ name: { label: r("upstreams.list.table_headers.name"), searchable: !0, sortable: !0, hidable: !1 },
937
+ slots: { label: r("upstreams.list.table_headers.slots"), searchable: !0, sortable: !0 },
938
+ tags: { label: r("upstreams.list.table_headers.tags"), sortable: !1 }
939
+ }, m = C, t = U(() => {
940
+ var H, x;
933
941
  let k = `${l.config.apiBaseUrl}${_e.list[l.config.app]}`;
934
- return l.config.app === "konnect" ? k = k.replace(/{controlPlaneId}/gi, ((S = l.config) == null ? void 0 : S.controlPlaneId) || "") : l.config.app === "kongManager" && (k = k.replace(/\/{workspace}/gi, (U = l.config) != null && U.workspace ? `/${l.config.workspace}` : "")), k;
935
- }), V = E(""), q = I(() => {
942
+ return l.config.app === "konnect" ? k = k.replace(/{controlPlaneId}/gi, ((H = l.config) == null ? void 0 : H.controlPlaneId) || "") : l.config.app === "kongManager" && (k = k.replace(/\/{workspace}/gi, (x = l.config) != null && x.workspace ? `/${l.config.workspace}` : "")), k;
943
+ }), M = B(""), w = U(() => {
936
944
  const k = l.config.app === "konnect" || l.config.isExactMatch;
937
945
  if (k)
938
946
  return {
939
947
  isExactMatch: k,
940
- placeholder: n("upstreams.search.placeholder")
948
+ placeholder: r("upstreams.search.placeholder")
941
949
  };
942
- const { name: S, slots: U } = C;
950
+ const { name: H, slots: x } = C;
943
951
  return {
944
952
  isExactMatch: k,
945
- fields: { name: S, slots: U },
953
+ fields: { name: H, slots: x },
946
954
  schema: l.config.filterSchema
947
955
  };
948
956
  }), {
949
957
  fetcher: p,
950
- fetcherState: H,
951
- fetcherCacheKey: G
952
- } = vt(I(() => ({ ...l.config, cacheIdentifier: l.cacheIdentifier })), t), A = () => {
953
- V.value = "";
954
- }, X = () => {
955
- G.value++;
956
- }, W = E(null), _ = async (k, S) => {
957
- const U = k.id;
958
- if (!await S(U)) {
958
+ fetcherState: S,
959
+ fetcherCacheKey: Y
960
+ } = vt(U(() => ({ ...l.config, cacheIdentifier: l.cacheIdentifier })), t), K = () => {
961
+ M.value = "";
962
+ }, W = () => {
963
+ Y.value++;
964
+ }, J = B(null), z = async (k, H) => {
965
+ const x = k.id;
966
+ if (!await H(x)) {
959
967
  i("copy:error", {
960
968
  entity: k,
961
969
  field: "id",
962
- message: n("upstreams.errors.copy")
970
+ message: r("upstreams.errors.copy")
963
971
  });
964
972
  return;
965
973
  }
966
974
  i("copy:success", {
967
975
  entity: k,
968
976
  field: "id",
969
- message: n("upstreams.copy.success", { val: U })
977
+ message: r("upstreams.copy.success", { val: x })
970
978
  });
971
- }, T = async (k, S) => {
972
- const U = JSON.stringify(k);
973
- if (!await S(U)) {
979
+ }, _ = async (k, H) => {
980
+ const x = JSON.stringify(k);
981
+ if (!await H(x)) {
974
982
  i("copy:error", {
975
983
  entity: k,
976
- message: n("upstreams.errors.copy")
984
+ message: r("upstreams.errors.copy")
977
985
  });
978
986
  return;
979
987
  }
980
988
  i("copy:success", {
981
989
  entity: k,
982
- message: n("upstreams.copy.success_brief")
990
+ message: r("upstreams.copy.success_brief")
983
991
  });
984
- }, $ = async (k) => {
985
- var U;
986
- await ((U = l.canRetrieve) == null ? void 0 : U.call(l, k)) && v.push(l.config.getViewRoute(k.id));
992
+ }, T = async (k) => {
993
+ var x;
994
+ await ((x = l.canRetrieve) == null ? void 0 : x.call(l, k)) && v.push(l.config.getViewRoute(k.id));
987
995
  }, g = (k) => ({
988
- label: n("upstreams.actions.view"),
996
+ label: r("upstreams.actions.view"),
989
997
  to: l.config.getViewRoute(k)
990
- }), O = (k) => ({
991
- label: n("upstreams.actions.edit"),
998
+ }), q = (k) => ({
999
+ label: r("upstreams.actions.edit"),
992
1000
  to: l.config.getEditRoute(k)
993
- }), Q = E(void 0), le = E(!1), z = E(!1), oe = E(""), P = kt(l.config, t.value), M = (k) => {
994
- Q.value = k, le.value = !0;
995
- }, Z = () => {
996
- le.value = !1;
997
- }, se = async () => {
998
- var k, S, U;
999
- if ((k = Q.value) != null && k.id) {
1000
- z.value = !0;
1001
+ }), N = B(void 0), R = B(!1), G = B(!1), oe = B(""), P = kt(l.config, t.value), A = (k) => {
1002
+ N.value = k, R.value = !0;
1003
+ }, X = () => {
1004
+ R.value = !1;
1005
+ }, le = async () => {
1006
+ var k, H, x;
1007
+ if ((k = N.value) != null && k.id) {
1008
+ G.value = !0;
1001
1009
  try {
1002
- await f.delete(P(Q.value.id)), z.value = !1, le.value = !1, G.value++, i("delete:success", Q.value);
1003
- } catch (j) {
1004
- oe.value = ((U = (S = j.response) == null ? void 0 : S.data) == null ? void 0 : U.message) || j.message || n("upstreams.errors.delete"), i("error", j);
1010
+ await f.delete(P(N.value.id)), G.value = !1, R.value = !1, Y.value++, i("delete:success", N.value);
1011
+ } catch (V) {
1012
+ oe.value = ((x = (H = V.response) == null ? void 0 : H.data) == null ? void 0 : x.message) || V.message || r("upstreams.errors.delete"), i("error", V);
1005
1013
  } finally {
1006
- z.value = !1;
1014
+ G.value = !1;
1007
1015
  }
1008
1016
  }
1009
1017
  }, te = () => {
1010
1018
  v.push(l.config.createRoute);
1011
1019
  };
1012
- de(H, (k) => {
1013
- var S, U, j;
1020
+ de(S, (k) => {
1021
+ var H, x, V;
1014
1022
  if (k.status === _t.Error) {
1015
- W.value = {
1016
- title: n("upstreams.errors.general")
1017
- }, (j = (U = (S = k.error) == null ? void 0 : S.response) == null ? void 0 : U.data) != null && j.message && (W.value.message = k.error.response.data.message), i("error", k.error);
1023
+ J.value = {
1024
+ title: r("upstreams.errors.general")
1025
+ }, (V = (x = (H = k.error) == null ? void 0 : H.response) == null ? void 0 : x.data) != null && V.message && (J.value.message = k.error.response.data.message), i("error", k.error);
1018
1026
  return;
1019
1027
  }
1020
- W.value = null;
1028
+ J.value = null;
1021
1029
  });
1022
- const Y = E({
1030
+ const Z = B({
1023
1031
  ctaPath: l.config.createRoute,
1024
1032
  ctaText: void 0,
1025
- message: `${n("upstreams.list.empty_state.description")}${l.config.additionMessageForEmptyState ? ` ${l.config.additionMessageForEmptyState}` : ""}`,
1026
- title: n("upstreams.title")
1033
+ message: `${r("upstreams.list.empty_state.description")}${l.config.additionMessageForEmptyState ? ` ${l.config.additionMessageForEmptyState}` : ""}`,
1034
+ title: r("upstreams.title")
1027
1035
  });
1028
- return Be(async () => {
1029
- await l.canCreate() && (Y.value.title = n("upstreams.list.empty_state.title"), Y.value.ctaText = n("upstreams.actions.create"));
1030
- }), (k, S) => {
1031
- const U = K("KButton"), j = K("KDropdownItem"), L = K("KClipboardProvider");
1032
- return F(), re("div", sa, [
1036
+ return Re(async () => {
1037
+ await l.canCreate() && (Z.value.title = r("upstreams.list.empty_state.title"), Z.value.ctaText = r("upstreams.actions.create"));
1038
+ }), (k, H) => {
1039
+ const x = $("KButton"), V = $("KDropdownItem"), re = $("KClipboardProvider");
1040
+ return F(), ie("div", ia, [
1033
1041
  h(e(Ct), {
1034
1042
  "cache-identifier": a.cacheIdentifier,
1035
1043
  "disable-sorting": d.value,
1036
- "empty-state-options": Y.value,
1044
+ "empty-state-options": Z.value,
1037
1045
  "enable-entity-actions": "",
1038
- "error-message": W.value,
1046
+ "error-message": J.value,
1039
1047
  fetcher: e(p),
1040
- "fetcher-cache-key": e(G),
1048
+ "fetcher-cache-key": e(Y),
1041
1049
  "pagination-type": "offset",
1042
1050
  "preferences-storage-key": "kong-ui-entities-upstreams-list",
1043
- query: V.value,
1051
+ query: M.value,
1044
1052
  "table-headers": e(m),
1045
- onClearSearchInput: A,
1046
- "onClick:row": S[3] || (S[3] = (c) => $(c)),
1047
- onSort: X,
1048
- onState: e(x)
1049
- }, Ne({
1050
- "toolbar-filter": r(() => [
1053
+ onClearSearchInput: K,
1054
+ "onClick:row": H[3] || (H[3] = (u) => T(u)),
1055
+ onSort: W,
1056
+ onState: e(O)
1057
+ }, Te({
1058
+ "toolbar-filter": n(() => [
1051
1059
  h(e(At), {
1052
- modelValue: V.value,
1053
- "onUpdate:modelValue": S[0] || (S[0] = (c) => V.value = c),
1054
- config: q.value
1060
+ modelValue: M.value,
1061
+ "onUpdate:modelValue": H[0] || (H[0] = (u) => M.value = u),
1062
+ config: w.value
1055
1063
  }, null, 8, ["modelValue", "config"])
1056
1064
  ]),
1057
- "toolbar-button": r(() => [
1058
- (F(), N(gt, {
1065
+ "toolbar-button": n(() => [
1066
+ (F(), E(gt, {
1059
1067
  disabled: !a.useActionOutside,
1060
1068
  to: "#kong-ui-app-page-header-action-button"
1061
1069
  }, [
1062
- b("div", ia, [
1063
- s.value ? (F(), N(U, {
1070
+ b("div", oa, [
1071
+ s.value ? (F(), E(x, {
1064
1072
  key: 0,
1065
1073
  appearance: "secondary",
1066
1074
  class: "open-learning-hub",
1067
1075
  "data-testid": "upstream-learn-more-button",
1068
1076
  icon: "",
1069
- onClick: S[1] || (S[1] = (c) => k.$emit("click:learn-more"))
1077
+ onClick: H[1] || (H[1] = (u) => k.$emit("click:learn-more"))
1070
1078
  }, {
1071
- default: r(() => [
1072
- h(e(Et), { decorative: "" })
1079
+ default: n(() => [
1080
+ h(e(Nt), { decorative: "" })
1073
1081
  ]),
1074
1082
  _: 1
1075
- })) : B("", !0),
1083
+ })) : D("", !0),
1076
1084
  h(e(ce), {
1077
1085
  "auth-function": () => a.canCreate()
1078
1086
  }, {
1079
- default: r(() => [
1080
- h(U, {
1087
+ default: n(() => [
1088
+ h(x, {
1081
1089
  appearance: "primary",
1082
1090
  "data-testid": "toolbar-add-upstream",
1083
1091
  size: a.useActionOutside ? "medium" : "large",
1084
1092
  to: a.config.createRoute
1085
1093
  }, {
1086
- default: r(() => [
1087
- h(e(je)),
1088
- J(" " + y(e(n)("upstreams.list.toolbar_actions.new_upstream")), 1)
1094
+ default: n(() => [
1095
+ h(e(Le)),
1096
+ Q(" " + y(e(r)("upstreams.list.toolbar_actions.new_upstream")), 1)
1089
1097
  ]),
1090
1098
  _: 1
1091
1099
  }, 8, ["size", "to"])
@@ -1095,38 +1103,38 @@ const pe = {
1095
1103
  ])
1096
1104
  ], 8, ["disabled"]))
1097
1105
  ]),
1098
- name: r(({ rowValue: c }) => [
1099
- b("span", ra, y(c), 1)
1106
+ name: n(({ rowValue: u }) => [
1107
+ b("span", na, y(u), 1)
1100
1108
  ]),
1101
- tags: r(({ rowValue: c }) => [
1109
+ tags: n(({ rowValue: u }) => [
1102
1110
  h(e(St), {
1103
1111
  "tag-max-width": "auto",
1104
- tags: c
1112
+ tags: u
1105
1113
  }, null, 8, ["tags"])
1106
1114
  ]),
1107
- actions: r(({ row: c }) => [
1108
- h(L, null, {
1109
- default: r(({ copyToClipboard: o }) => [
1110
- h(j, {
1115
+ actions: n(({ row: u }) => [
1116
+ h(re, null, {
1117
+ default: n(({ copyToClipboard: o }) => [
1118
+ h(V, {
1111
1119
  "data-testid": "action-entity-copy-id",
1112
- onClick: (u) => _(c, o)
1120
+ onClick: (c) => z(u, o)
1113
1121
  }, {
1114
- default: r(() => [
1115
- J(y(e(n)("upstreams.actions.copy_id")), 1)
1122
+ default: n(() => [
1123
+ Q(y(e(r)("upstreams.actions.copy_id")), 1)
1116
1124
  ]),
1117
1125
  _: 2
1118
1126
  }, 1032, ["onClick"])
1119
1127
  ]),
1120
1128
  _: 2
1121
1129
  }, 1024),
1122
- h(L, null, {
1123
- default: r(({ copyToClipboard: o }) => [
1124
- h(j, {
1130
+ h(re, null, {
1131
+ default: n(({ copyToClipboard: o }) => [
1132
+ h(V, {
1125
1133
  "data-testid": "action-entity-copy-json",
1126
- onClick: (u) => T(c, o)
1134
+ onClick: (c) => _(u, o)
1127
1135
  }, {
1128
- default: r(() => [
1129
- J(y(e(n)("upstreams.actions.copy_json")), 1)
1136
+ default: n(() => [
1137
+ Q(y(e(r)("upstreams.actions.copy_json")), 1)
1130
1138
  ]),
1131
1139
  _: 2
1132
1140
  }, 1032, ["onClick"])
@@ -1134,40 +1142,40 @@ const pe = {
1134
1142
  _: 2
1135
1143
  }, 1024),
1136
1144
  h(e(ce), {
1137
- "auth-function": () => a.canRetrieve(c)
1145
+ "auth-function": () => a.canRetrieve(u)
1138
1146
  }, {
1139
- default: r(() => [
1140
- h(j, {
1147
+ default: n(() => [
1148
+ h(V, {
1141
1149
  "data-testid": "action-entity-view",
1142
1150
  "has-divider": "",
1143
- item: g(c.id)
1151
+ item: g(u.id)
1144
1152
  }, null, 8, ["item"])
1145
1153
  ]),
1146
1154
  _: 2
1147
1155
  }, 1032, ["auth-function"]),
1148
1156
  h(e(ce), {
1149
- "auth-function": () => a.canEdit(c)
1157
+ "auth-function": () => a.canEdit(u)
1150
1158
  }, {
1151
- default: r(() => [
1152
- h(j, {
1159
+ default: n(() => [
1160
+ h(V, {
1153
1161
  "data-testid": "action-entity-edit",
1154
- item: O(c.id)
1162
+ item: q(u.id)
1155
1163
  }, null, 8, ["item"])
1156
1164
  ]),
1157
1165
  _: 2
1158
1166
  }, 1032, ["auth-function"]),
1159
1167
  h(e(ce), {
1160
- "auth-function": () => a.canDelete(c)
1168
+ "auth-function": () => a.canDelete(u)
1161
1169
  }, {
1162
- default: r(() => [
1163
- h(j, {
1170
+ default: n(() => [
1171
+ h(V, {
1164
1172
  danger: "",
1165
1173
  "data-testid": "action-entity-delete",
1166
1174
  "has-divider": "",
1167
- onClick: (o) => M(c)
1175
+ onClick: (o) => A(u)
1168
1176
  }, {
1169
- default: r(() => [
1170
- J(y(e(n)("upstreams.actions.delete")), 1)
1177
+ default: n(() => [
1178
+ Q(y(e(r)("upstreams.actions.delete")), 1)
1171
1179
  ]),
1172
1180
  _: 2
1173
1181
  }, 1032, ["onClick"])
@@ -1177,36 +1185,36 @@ const pe = {
1177
1185
  ]),
1178
1186
  _: 2
1179
1187
  }, [
1180
- !V.value && a.config.app === "konnect" ? {
1188
+ !M.value && a.config.app === "konnect" ? {
1181
1189
  name: "empty-state",
1182
- fn: r(() => {
1183
- var c;
1190
+ fn: n(() => {
1191
+ var u;
1184
1192
  return [
1185
1193
  h(e(Mt), {
1186
- "action-button-text": e(n)("upstreams.list.empty_state_v2.create_cta"),
1194
+ "action-button-text": e(r)("upstreams.list.empty_state_v2.create_cta"),
1187
1195
  appearance: "secondary",
1188
1196
  "can-create": () => a.canCreate(),
1189
1197
  "data-testid": "upstreams-entity-empty-state",
1190
- description: e(n)("upstreams.list.empty_state_v2.description"),
1198
+ description: e(r)("upstreams.list.empty_state_v2.description"),
1191
1199
  "learn-more": a.config.app === "konnect",
1192
- title: e(n)("upstreams.list.empty_state_v2.title"),
1200
+ title: e(r)("upstreams.list.empty_state_v2.title"),
1193
1201
  "onClick:create": te,
1194
- "onClick:learnMore": S[2] || (S[2] = (o) => k.$emit("click:learn-more"))
1195
- }, Ne({
1196
- image: r(() => [
1197
- b("div", oa, [
1198
- h(e(Rt), {
1199
- color: e(aa),
1200
- size: e(la)
1202
+ "onClick:learnMore": H[2] || (H[2] = (o) => k.$emit("click:learn-more"))
1203
+ }, Te({
1204
+ image: n(() => [
1205
+ b("div", ra, [
1206
+ h(e(Bt), {
1207
+ color: e(la),
1208
+ size: e(sa)
1201
1209
  }, null, 8, ["color", "size"])
1202
1210
  ])
1203
1211
  ]),
1204
1212
  _: 2
1205
1213
  }, [
1206
- (c = a.config) != null && c.isControlPlaneGroup ? {
1214
+ (u = a.config) != null && u.isControlPlaneGroup ? {
1207
1215
  name: "message",
1208
- fn: r(() => [
1209
- J(y(e(n)("upstreams.list.empty_state_v2.group")), 1)
1216
+ fn: n(() => [
1217
+ Q(y(e(r)("upstreams.list.empty_state_v2.group")), 1)
1210
1218
  ]),
1211
1219
  key: "0"
1212
1220
  } : void 0
@@ -1217,28 +1225,28 @@ const pe = {
1217
1225
  } : void 0
1218
1226
  ]), 1032, ["cache-identifier", "disable-sorting", "empty-state-options", "error-message", "fetcher", "fetcher-cache-key", "query", "table-headers", "onState"]),
1219
1227
  h(e(Ht), {
1220
- "action-pending": z.value,
1221
- description: e(n)("upstreams.delete.description"),
1222
- "entity-name": Q.value && (Q.value.name || Q.value.id),
1228
+ "action-pending": G.value,
1229
+ description: e(r)("upstreams.delete.description"),
1230
+ "entity-name": N.value && (N.value.name || N.value.id),
1223
1231
  "entity-type": e(Ut).Upstream,
1224
1232
  error: oe.value,
1225
- title: e(n)("upstreams.delete.title"),
1226
- visible: le.value,
1227
- onCancel: Z,
1228
- onProceed: se
1233
+ title: e(r)("upstreams.delete.title"),
1234
+ visible: R.value,
1235
+ onCancel: X,
1236
+ onProceed: le
1229
1237
  }, null, 8, ["action-pending", "description", "entity-name", "entity-type", "error", "title", "visible"])
1230
1238
  ]);
1231
1239
  };
1232
1240
  }
1233
- }), me = (a, R) => {
1241
+ }), me = (a, L) => {
1234
1242
  const i = a.__vccOpts || a;
1235
- for (const [l, n] of R)
1236
- i[l] = n;
1243
+ for (const [l, r] of L)
1244
+ i[l] = r;
1237
1245
  return i;
1238
- }, Za = /* @__PURE__ */ me(na, [["__scopeId", "data-v-4c6ace20"]]), Ie = "/v2/control-planes/{controlPlaneId}/core-entities", we = "/{workspace}", qe = {
1246
+ }, el = /* @__PURE__ */ me(ha, [["__scopeId", "data-v-4c6ace20"]]), Ie = "/v2/control-planes/{controlPlaneId}/core-entities", qe = "/{workspace}", we = {
1239
1247
  list: {
1240
1248
  konnect: `${Ie}/upstreams/{upstreamId}/targets`,
1241
- kongManager: `${we}/upstreams/{upstreamId}/targets`
1249
+ kongManager: `${qe}/upstreams/{upstreamId}/targets`
1242
1250
  },
1243
1251
  form: {
1244
1252
  konnect: {
@@ -1247,15 +1255,18 @@ const pe = {
1247
1255
  validate: `${Ie}/v1/schemas/json/target/validate`
1248
1256
  },
1249
1257
  kongManager: {
1250
- create: `${we}/upstreams/{upstreamId}/targets`,
1251
- edit: `${we}/upstreams/{upstreamId}/targets/{id}`,
1252
- validate: `${we}/schemas/targets/validate`
1258
+ create: `${qe}/upstreams/{upstreamId}/targets`,
1259
+ edit: `${qe}/upstreams/{upstreamId}/targets/{id}`,
1260
+ validate: `${qe}/schemas/targets/validate`
1253
1261
  }
1254
1262
  }
1255
- }, ha = { class: "kong-ui-entities-target-form" }, ua = { class: "target-form-container" }, ca = {
1263
+ }, ua = { class: "kong-ui-entities-target-form" }, ca = { class: "target-form-container" }, da = {
1256
1264
  key: 0,
1257
1265
  class: "target-form-info"
1258
- }, da = /* @__PURE__ */ ne({
1266
+ }, pa = {
1267
+ key: 1,
1268
+ class: "failover-target"
1269
+ }, ma = /* @__PURE__ */ ne({
1259
1270
  __name: "TargetForm",
1260
1271
  props: {
1261
1272
  /** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
@@ -1275,15 +1286,25 @@ const pe = {
1275
1286
  type: String,
1276
1287
  required: !1,
1277
1288
  default: ""
1289
+ },
1290
+ failoverEnabled: {
1291
+ type: Boolean,
1292
+ required: !1,
1293
+ default: !1
1294
+ },
1295
+ failoverUnsupported: {
1296
+ type: Boolean,
1297
+ required: !1,
1298
+ default: !1
1278
1299
  }
1279
1300
  },
1280
1301
  emits: ["update", "error", "loading", "cancel"],
1281
- setup(a, { emit: R }) {
1282
- var W;
1283
- const i = R, l = a, { i18n: { t: n } } = pe.useI18n(), { getMessageFromError: v } = It(), { axiosInstance: f } = Ae((W = l.config) == null ? void 0 : W.axiosRequestConfig), D = I(() => {
1302
+ setup(a, { emit: L }) {
1303
+ var z;
1304
+ const i = L, l = a, { i18n: { t: r } } = pe.useI18n(), { getMessageFromError: v } = It(), { axiosInstance: f } = Me((z = l.config) == null ? void 0 : z.axiosRequestConfig), j = U(() => {
1284
1305
  var _;
1285
- return qe.form[l.config.app].edit.replace(/{upstreamId}/gi, ((_ = l.config) == null ? void 0 : _.upstreamId) || "");
1286
- }), x = I(() => l.targetId ? ue.Edit : ue.Create), s = I(() => x.value === ue.Edit ? n("targets.form.edit.title") : n("targets.form.create.title")), d = Te({
1306
+ return we.form[l.config.app].edit.replace(/{upstreamId}/gi, ((_ = l.config) == null ? void 0 : _.upstreamId) || "");
1307
+ }), O = U(() => l.targetId ? ue.Edit : ue.Create), s = U(() => O.value === ue.Edit ? r("targets.form.edit.title") : r("targets.form.create.title")), d = Fe({
1287
1308
  fields: {
1288
1309
  target: "",
1289
1310
  weight: 100,
@@ -1291,116 +1312,117 @@ const pe = {
1291
1312
  },
1292
1313
  isReadonly: !1,
1293
1314
  errorMessage: ""
1294
- }), C = Te({
1315
+ }), C = B(!1), m = Fe({
1295
1316
  target: "",
1296
1317
  weight: 100,
1297
1318
  tags: ""
1298
- }), m = {
1319
+ }), t = {
1299
1320
  target: "",
1300
1321
  weight: 100,
1301
1322
  tags: ""
1302
- }, t = I(() => {
1323
+ }, M = U(() => {
1303
1324
  const _ = parseInt(d.fields.weight.toString(), 10);
1304
1325
  return _ < 0 || _ > 65535;
1305
- }), V = I(
1306
- () => JSON.stringify(d.fields) !== JSON.stringify(C) && !!d.fields.target && !!d.fields.weight && !t.value
1307
- ), q = (_) => {
1326
+ }), w = U(
1327
+ () => JSON.stringify(d.fields) !== JSON.stringify(m) && !!d.fields.target && !!d.fields.weight && !M.value
1328
+ ), p = (_) => {
1308
1329
  var T;
1309
- d.fields.target = (_ == null ? void 0 : _.target) || "", d.fields.weight = (_ == null ? void 0 : _.weight) ?? "", d.fields.tags = ((T = _ == null ? void 0 : _.tags) == null ? void 0 : T.join(", ")) || "", Object.assign(C, d.fields);
1310
- }, p = () => {
1330
+ d.fields.target = (_ == null ? void 0 : _.target) || "", d.fields.weight = (_ == null ? void 0 : _.weight) ?? "", d.fields.tags = ((T = _ == null ? void 0 : _.tags) == null ? void 0 : T.join(", ")) || "", Object.assign(m, d.fields);
1331
+ }, S = () => {
1311
1332
  d.errorMessage = "", i("cancel");
1312
- }, H = I(() => {
1313
- var T, $;
1314
- let _ = `${l.config.apiBaseUrl}${qe.form[l.config.app].validate}`;
1315
- return l.config.app === "konnect" ? _ = _.replace(/{controlPlaneId}/gi, ((T = l.config) == null ? void 0 : T.controlPlaneId) || "") : l.config.app === "kongManager" && (_ = _.replace(/\/{workspace}/gi, ($ = l.config) != null && $.workspace ? `/${l.config.workspace}` : "")), _ = _.replace(/{id}/gi, l.targetId), _;
1316
- }), G = I(() => {
1317
- var T, $, g, O;
1318
- let _ = `${l.config.apiBaseUrl}${qe.form[l.config.app][x.value]}`;
1319
- return l.config.app === "konnect" ? _ = _.replace(/{controlPlaneId}/gi, ((T = l.config) == null ? void 0 : T.controlPlaneId) || "").replace(/{upstreamId}/gi, (($ = l.config) == null ? void 0 : $.upstreamId) || "") : l.config.app === "kongManager" && (_ = _.replace(/\/{workspace}/gi, (g = l.config) != null && g.workspace ? `/${l.config.workspace}` : "").replace(/{upstreamId}/gi, ((O = l.config) == null ? void 0 : O.upstreamId) || "")), _ = _.replace(/{id}/gi, l.targetId), _;
1320
- }), A = I(() => {
1321
- var _, T, $;
1333
+ }, Y = U(() => {
1334
+ var T, g;
1335
+ let _ = `${l.config.apiBaseUrl}${we.form[l.config.app].validate}`;
1336
+ return l.config.app === "konnect" ? _ = _.replace(/{controlPlaneId}/gi, ((T = l.config) == null ? void 0 : T.controlPlaneId) || "") : l.config.app === "kongManager" && (_ = _.replace(/\/{workspace}/gi, (g = l.config) != null && g.workspace ? `/${l.config.workspace}` : "")), _ = _.replace(/{id}/gi, l.targetId), _;
1337
+ }), K = U(() => {
1338
+ var T, g, q, N;
1339
+ let _ = `${l.config.apiBaseUrl}${we.form[l.config.app][O.value]}`;
1340
+ return l.config.app === "konnect" ? _ = _.replace(/{controlPlaneId}/gi, ((T = l.config) == null ? void 0 : T.controlPlaneId) || "").replace(/{upstreamId}/gi, ((g = l.config) == null ? void 0 : g.upstreamId) || "") : l.config.app === "kongManager" && (_ = _.replace(/\/{workspace}/gi, (q = l.config) != null && q.workspace ? `/${l.config.workspace}` : "").replace(/{upstreamId}/gi, ((N = l.config) == null ? void 0 : N.upstreamId) || "")), _ = _.replace(/{id}/gi, l.targetId), _;
1341
+ }), W = U(() => {
1342
+ var _, T, g;
1322
1343
  return {
1323
1344
  target: d.fields.target,
1324
1345
  weight: parseInt(d.fields.weight),
1325
- tags: ($ = (T = (_ = d.fields.tags) == null ? void 0 : _.split(",")) == null ? void 0 : T.map((g) => String(g || "").trim())) == null ? void 0 : $.filter((g) => g !== ""),
1326
- upstream: { id: l.config.upstreamId }
1346
+ tags: (g = (T = (_ = d.fields.tags) == null ? void 0 : _.split(",")) == null ? void 0 : T.map((q) => String(q || "").trim())) == null ? void 0 : g.filter((q) => q !== ""),
1347
+ upstream: { id: l.config.upstreamId },
1348
+ ...l.failoverEnabled ? { failover: C.value } : {}
1327
1349
  };
1328
- }), X = async () => {
1350
+ }), J = async () => {
1329
1351
  var _, T;
1330
1352
  try {
1331
1353
  d.isReadonly = !0, d.errorMessage = "";
1332
- let $;
1333
- if (await f.post(H.value, A.value), x.value === "create" ? $ = await f.post(G.value, A.value) : x.value === "edit" && ($ = ((_ = l.config) == null ? void 0 : _.app) === "konnect" ? await f.put(G.value, A.value) : await f.patch(G.value, A.value)), $) {
1334
- const { data: g } = $;
1335
- d.fields.target = (g == null ? void 0 : g.name) || "", d.fields.weight = (g == null ? void 0 : g.weight) ?? 100, d.fields.tags = ((T = g == null ? void 0 : g.tags) == null ? void 0 : T.join(", ")) || "", i("update", g), Object.assign(d.fields, m);
1354
+ let g;
1355
+ if (await f.post(Y.value, W.value), O.value === "create" ? g = await f.post(K.value, W.value) : O.value === "edit" && (g = ((_ = l.config) == null ? void 0 : _.app) === "konnect" ? await f.put(K.value, W.value) : await f.patch(K.value, W.value)), g) {
1356
+ const { data: q } = g;
1357
+ d.fields.target = (q == null ? void 0 : q.name) || "", d.fields.weight = (q == null ? void 0 : q.weight) ?? 100, d.fields.tags = ((T = q == null ? void 0 : q.tags) == null ? void 0 : T.join(", ")) || "", i("update", q), Object.assign(d.fields, t);
1336
1358
  }
1337
- } catch ($) {
1338
- d.errorMessage = v($), i("error", $);
1359
+ } catch (g) {
1360
+ d.errorMessage = v(g), i("error", g);
1339
1361
  } finally {
1340
1362
  d.isReadonly = !1;
1341
1363
  }
1342
1364
  };
1343
1365
  return de(() => l.targetId, () => {
1344
- Object.assign(d.fields, m);
1366
+ Object.assign(d.fields, t);
1345
1367
  }), (_, T) => {
1346
- const $ = K("KInput"), g = K("KPrompt");
1347
- return F(), N(g, {
1348
- "action-button-disabled": !V.value || d.isReadonly,
1349
- "action-button-text": e(n)("targets.form.buttons.save"),
1350
- "cancel-button-text": e(n)("targets.form.buttons.cancel"),
1368
+ const g = $("KInput"), q = $("KCheckbox"), N = $("KPrompt");
1369
+ return F(), E(N, {
1370
+ "action-button-disabled": !w.value || d.isReadonly,
1371
+ "action-button-text": e(r)("targets.form.buttons.save"),
1372
+ "cancel-button-text": e(r)("targets.form.buttons.cancel"),
1351
1373
  title: s.value,
1352
1374
  visible: a.isVisible,
1353
- onCancel: p,
1354
- onProceed: X
1375
+ onCancel: S,
1376
+ onProceed: J
1355
1377
  }, {
1356
- default: r(() => [
1357
- b("div", ha, [
1358
- h(e(wt), {
1378
+ default: n(() => [
1379
+ b("div", ua, [
1380
+ h(e(qt), {
1359
1381
  config: a.config,
1360
1382
  "edit-id": a.targetId,
1361
1383
  "entity-type": e(De).Target,
1362
1384
  "error-message": d.errorMessage,
1363
- "fetch-url": D.value,
1364
- "form-fields": A.value,
1385
+ "fetch-url": j.value,
1386
+ "form-fields": W.value,
1365
1387
  "is-readonly": d.isReadonly,
1366
- onCancel: p,
1367
- "onFetch:error": T[3] || (T[3] = (O) => _.$emit("error", O)),
1368
- "onFetch:success": q,
1369
- onLoading: T[4] || (T[4] = (O) => _.$emit("loading", O))
1388
+ onCancel: S,
1389
+ "onFetch:error": T[4] || (T[4] = (R) => _.$emit("error", R)),
1390
+ "onFetch:success": p,
1391
+ onLoading: T[5] || (T[5] = (R) => _.$emit("loading", R))
1370
1392
  }, {
1371
- default: r(() => [
1372
- b("div", ua, [
1373
- _.$slots.info ? (F(), re("div", ca, [
1393
+ default: n(() => [
1394
+ b("div", ca, [
1395
+ _.$slots.info ? (F(), ie("div", da, [
1374
1396
  bt(_.$slots, "info", {}, void 0, !0)
1375
- ])) : B("", !0),
1376
- h($, {
1397
+ ])) : D("", !0),
1398
+ h(g, {
1377
1399
  modelValue: d.fields.target,
1378
- "onUpdate:modelValue": T[0] || (T[0] = (O) => d.fields.target = O),
1400
+ "onUpdate:modelValue": T[0] || (T[0] = (R) => d.fields.target = R),
1379
1401
  modelModifiers: { trim: !0 },
1380
1402
  autocomplete: "off",
1381
1403
  class: "target-form-input",
1382
1404
  "data-testid": "target-form-target",
1383
- label: e(n)("targets.form.fields.target.label"),
1405
+ label: e(r)("targets.form.fields.target.label"),
1384
1406
  "label-attributes": {
1385
- info: e(n)("targets.form.fields.target.tooltip"),
1407
+ info: e(r)("targets.form.fields.target.tooltip"),
1386
1408
  tooltipAttributes: { maxWidth: "400" }
1387
1409
  },
1388
- placeholder: e(n)("targets.form.fields.target.placeholder"),
1410
+ placeholder: e(r)("targets.form.fields.target.placeholder"),
1389
1411
  readonly: d.isReadonly,
1390
1412
  required: "",
1391
1413
  type: "text"
1392
1414
  }, null, 8, ["modelValue", "label", "label-attributes", "placeholder", "readonly"]),
1393
- h($, {
1415
+ h(g, {
1394
1416
  modelValue: d.fields.weight,
1395
- "onUpdate:modelValue": T[1] || (T[1] = (O) => d.fields.weight = O),
1417
+ "onUpdate:modelValue": T[1] || (T[1] = (R) => d.fields.weight = R),
1396
1418
  autocomplete: "off",
1397
1419
  class: "target-form-input",
1398
1420
  "data-testid": "target-form-weight",
1399
- error: t.value,
1400
- "error-message": e(n)("targets.errors.weight"),
1401
- label: e(n)("targets.form.fields.weight.label"),
1421
+ error: M.value,
1422
+ "error-message": e(r)("targets.errors.weight"),
1423
+ label: e(r)("targets.form.fields.weight.label"),
1402
1424
  "label-attributes": {
1403
- info: e(n)("targets.form.fields.weight.tooltip"),
1425
+ info: e(r)("targets.form.fields.weight.tooltip"),
1404
1426
  tooltipAttributes: { maxWidth: "400" }
1405
1427
  },
1406
1428
  max: "65535",
@@ -1409,16 +1431,27 @@ const pe = {
1409
1431
  required: "",
1410
1432
  type: "number"
1411
1433
  }, null, 8, ["modelValue", "error", "error-message", "label", "label-attributes", "readonly"]),
1412
- h($, {
1434
+ a.failoverEnabled ? (F(), ie("div", pa, [
1435
+ h(q, {
1436
+ modelValue: C.value,
1437
+ "onUpdate:modelValue": T[2] || (T[2] = (R) => C.value = R),
1438
+ disabled: a.failoverUnsupported,
1439
+ label: e(r)("targets.form.fields.failover.label"),
1440
+ "label-attributes": {
1441
+ info: a.failoverUnsupported ? e(r)("targets.form.fields.failover.unsupported") : e(r)("targets.form.fields.failover.help")
1442
+ }
1443
+ }, null, 8, ["modelValue", "disabled", "label", "label-attributes"])
1444
+ ])) : D("", !0),
1445
+ h(g, {
1413
1446
  modelValue: d.fields.tags,
1414
- "onUpdate:modelValue": T[2] || (T[2] = (O) => d.fields.tags = O),
1447
+ "onUpdate:modelValue": T[3] || (T[3] = (R) => d.fields.tags = R),
1415
1448
  modelModifiers: { trim: !0 },
1416
1449
  autocomplete: "off",
1417
1450
  class: "target-form-input",
1418
1451
  "data-testid": "target-form-tags",
1419
- help: e(n)("targets.form.fields.tags.help"),
1420
- label: e(n)("targets.form.fields.tags.label"),
1421
- placeholder: e(n)("targets.form.fields.tags.placeholder"),
1452
+ help: e(r)("targets.form.fields.tags.help"),
1453
+ label: e(r)("targets.form.fields.tags.label"),
1454
+ placeholder: e(r)("targets.form.fields.tags.placeholder"),
1422
1455
  readonly: d.isReadonly,
1423
1456
  type: "text"
1424
1457
  }, null, 8, ["modelValue", "help", "label", "placeholder", "readonly"])
@@ -1432,7 +1465,7 @@ const pe = {
1432
1465
  }, 8, ["action-button-disabled", "action-button-text", "cancel-button-text", "title", "visible"]);
1433
1466
  };
1434
1467
  }
1435
- }), pa = /* @__PURE__ */ me(da, [["__scopeId", "data-v-b5bbee74"]]), ma = { class: "kong-ui-entities-targets-list" }, fa = { class: "target-address" }, ya = /* @__PURE__ */ ne({
1468
+ }), fa = /* @__PURE__ */ me(ma, [["__scopeId", "data-v-660b6d65"]]), ya = { class: "kong-ui-entities-targets-list" }, ga = { class: "target-address" }, ba = /* @__PURE__ */ ne({
1436
1469
  __name: "TargetsList",
1437
1470
  props: {
1438
1471
  /** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
@@ -1468,98 +1501,108 @@ const pe = {
1468
1501
  useActionOutside: {
1469
1502
  type: Boolean,
1470
1503
  default: !1
1504
+ },
1505
+ failoverEnabled: {
1506
+ type: Boolean,
1507
+ default: !1
1508
+ },
1509
+ algorithm: {
1510
+ type: String,
1511
+ required: !1,
1512
+ default: ""
1471
1513
  }
1472
1514
  },
1473
1515
  emits: ["error", "copy:success", "copy:error", "delete:success", "health-actions:healthy", "health-actions:unhealthy", "create:target", "update:target"],
1474
- setup(a, { emit: R }) {
1475
- var Y;
1476
- const i = R, l = a, { i18n: { t: n } } = pe.useI18n(), { axiosInstance: v } = Ae((Y = l.config) == null ? void 0 : Y.axiosRequestConfig), f = I(() => l.config.app !== "kongManager" || !!l.config.disableSorting), x = {
1516
+ setup(a, { emit: L }) {
1517
+ var Z;
1518
+ const i = L, l = a, { i18n: { t: r } } = pe.useI18n(), { axiosInstance: v } = Me((Z = l.config) == null ? void 0 : Z.axiosRequestConfig), f = U(() => l.config.app !== "kongManager" || !!l.config.disableSorting), O = {
1477
1519
  // the Target Address column is non-hidable
1478
- target: { label: n("targets.list.table_headers.target_address"), sortable: !0, hidable: !1 },
1479
- weight: { label: n("targets.list.table_headers.weight"), sortable: !0 },
1480
- tags: { label: n("targets.list.table_headers.tags"), sortable: !1 }
1481
- }, s = I(() => {
1482
- var k, S, U, j;
1483
- let w = `${l.config.apiBaseUrl}${qe.list[l.config.app]}`;
1484
- return l.config.app === "konnect" ? w = w.replace(/{controlPlaneId}/gi, ((k = l.config) == null ? void 0 : k.controlPlaneId) || "").replace(/{upstreamId}/gi, ((S = l.config) == null ? void 0 : S.upstreamId) || "") : l.config.app === "kongManager" && (w = w.replace(/\/{workspace}/gi, (U = l.config) != null && U.workspace ? `/${l.config.workspace}` : "").replace(/{upstreamId}/gi, ((j = l.config) == null ? void 0 : j.upstreamId) || "")), w;
1520
+ target: { label: r("targets.list.table_headers.target_address"), sortable: !0, hidable: !1 },
1521
+ weight: { label: r("targets.list.table_headers.weight"), sortable: !0 },
1522
+ ...l.failoverEnabled ? { failover: { label: r("targets.list.table_headers.target_type"), sortable: !1 } } : {},
1523
+ tags: { label: r("targets.list.table_headers.tags"), sortable: !1 }
1524
+ }, s = U(() => {
1525
+ var k, H, x, V;
1526
+ let I = `${l.config.apiBaseUrl}${we.list[l.config.app]}`;
1527
+ return l.config.app === "konnect" ? I = I.replace(/{controlPlaneId}/gi, ((k = l.config) == null ? void 0 : k.controlPlaneId) || "").replace(/{upstreamId}/gi, ((H = l.config) == null ? void 0 : H.upstreamId) || "") : l.config.app === "kongManager" && (I = I.replace(/\/{workspace}/gi, (x = l.config) != null && x.workspace ? `/${l.config.workspace}` : "").replace(/{upstreamId}/gi, ((V = l.config) == null ? void 0 : V.upstreamId) || "")), I;
1485
1528
  }), {
1486
1529
  fetcher: d,
1487
1530
  fetcherState: C,
1488
1531
  fetcherCacheKey: m
1489
- } = vt(I(() => ({ ...l.config, cacheIdentifier: l.cacheIdentifier })), s), t = () => {
1532
+ } = vt(U(() => ({ ...l.config, cacheIdentifier: l.cacheIdentifier })), s), t = () => {
1490
1533
  m.value++;
1491
- }, V = E(null), q = () => {
1492
- M.value = !0;
1493
- }, p = async (w, k) => {
1494
- const S = w.id;
1495
- if (!await k(S)) {
1534
+ }, M = B(null), w = () => {
1535
+ A.value = !0;
1536
+ }, p = async (I, k) => {
1537
+ const H = I.id;
1538
+ if (!await k(H)) {
1496
1539
  i("copy:error", {
1497
- entity: w,
1540
+ entity: I,
1498
1541
  field: "id",
1499
- message: n("targets.errors.copy")
1542
+ message: r("targets.errors.copy")
1500
1543
  });
1501
1544
  return;
1502
1545
  }
1503
1546
  i("copy:success", {
1504
- entity: w,
1547
+ entity: I,
1505
1548
  field: "id",
1506
- message: n("targets.copy.success", { val: S })
1549
+ message: r("targets.copy.success", { val: H })
1507
1550
  });
1508
- }, H = async (w, k) => {
1509
- const S = JSON.stringify(w);
1510
- if (!await k(S)) {
1551
+ }, S = async (I, k) => {
1552
+ const H = JSON.stringify(I);
1553
+ if (!await k(H)) {
1511
1554
  i("copy:error", {
1512
- entity: w,
1513
- message: n("targets.errors.copy")
1555
+ entity: I,
1556
+ message: r("targets.errors.copy")
1514
1557
  });
1515
1558
  return;
1516
1559
  }
1517
1560
  i("copy:success", {
1518
- entity: w,
1519
- message: n("targets.copy.success_brief")
1561
+ entity: I,
1562
+ message: r("targets.copy.success_brief")
1520
1563
  });
1521
- }, G = (w) => {
1522
- P.value = w, M.value = !0;
1523
- }, A = (w) => l.config.app === "konnect" ? !1 : l.config.canMarkHealthy(w), X = (w) => l.config.app === "konnect" ? !1 : l.config.canMarkUnhealthy(w), W = E(void 0), _ = E(!1), T = E(!1), $ = E(""), g = kt(l.config, s.value), O = (w) => {
1524
- W.value = w, _.value = !0;
1525
- }, Q = () => {
1526
- _.value = !1;
1527
- }, le = async () => {
1528
- var w, k, S;
1529
- if ((w = W.value) != null && w.id) {
1530
- T.value = !0;
1564
+ }, Y = (I) => {
1565
+ P.value = I, A.value = !0;
1566
+ }, K = (I) => l.config.app === "konnect" ? !1 : l.config.canMarkHealthy(I), W = (I) => l.config.app === "konnect" ? !1 : l.config.canMarkUnhealthy(I), J = B(void 0), z = B(!1), _ = B(!1), T = B(""), g = kt(l.config, s.value), q = (I) => {
1567
+ J.value = I, z.value = !0;
1568
+ }, N = () => {
1569
+ z.value = !1;
1570
+ }, R = async () => {
1571
+ var I, k, H;
1572
+ if ((I = J.value) != null && I.id) {
1573
+ _.value = !0;
1531
1574
  try {
1532
- await v.delete(g(W.value.id)), T.value = !1, _.value = !1, m.value++, i("delete:success", W.value);
1533
- } catch (U) {
1534
- $.value = ((S = (k = U.response) == null ? void 0 : k.data) == null ? void 0 : S.message) || U.message || n("targets.errors.delete"), i("error", U);
1575
+ await v.delete(g(J.value.id)), _.value = !1, z.value = !1, m.value++, i("delete:success", J.value);
1576
+ } catch (x) {
1577
+ T.value = ((H = (k = x.response) == null ? void 0 : k.data) == null ? void 0 : H.message) || x.message || r("targets.errors.delete"), i("error", x);
1535
1578
  } finally {
1536
- T.value = !1;
1579
+ _.value = !1;
1537
1580
  }
1538
1581
  }
1539
1582
  };
1540
- de(C, (w) => {
1541
- var k, S, U;
1542
- if (w.status === _t.Error) {
1543
- V.value = {
1544
- title: n("targets.errors.general")
1545
- }, (U = (S = (k = w.error) == null ? void 0 : k.response) == null ? void 0 : S.data) != null && U.message && (V.value.message = w.error.response.data.message), i("error", w.error);
1583
+ de(C, (I) => {
1584
+ var k, H, x;
1585
+ if (I.status === _t.Error) {
1586
+ M.value = {
1587
+ title: r("targets.errors.general")
1588
+ }, (x = (H = (k = I.error) == null ? void 0 : k.response) == null ? void 0 : H.data) != null && x.message && (M.value.message = I.error.response.data.message), i("error", I.error);
1546
1589
  return;
1547
1590
  }
1548
- V.value = null;
1591
+ M.value = null;
1549
1592
  });
1550
- const z = E({
1593
+ const G = B({
1551
1594
  ctaText: void 0,
1552
- message: `${n("targets.list.empty_state.description")}${l.config.additionMessageForEmptyState ? ` ${l.config.additionMessageForEmptyState}` : ""}`,
1553
- title: n("targets.title"),
1595
+ message: `${r("targets.list.empty_state.description")}${l.config.additionMessageForEmptyState ? ` ${l.config.additionMessageForEmptyState}` : ""}`,
1596
+ title: r("targets.title"),
1554
1597
  ...l.config.createRoute && {
1555
1598
  // If `createRoute` provided in config, add a `ctaPath` to empty state CTA button so it becomes a link
1556
1599
  ctaPath: l.config.createRoute
1557
1600
  }
1558
1601
  });
1559
- Be(async () => {
1560
- await l.canCreate() && (z.value.title = n("targets.list.empty_state.title"), z.value.ctaText = n("targets.actions.create"));
1602
+ Re(async () => {
1603
+ await l.canCreate() && (G.value.title = r("targets.list.empty_state.title"), G.value.ctaText = r("targets.actions.create"));
1561
1604
  });
1562
- const oe = I(() => ({
1605
+ const oe = U(() => ({
1563
1606
  app: l.config.app,
1564
1607
  apiBaseUrl: l.config.apiBaseUrl,
1565
1608
  upstreamId: l.config.upstreamId,
@@ -1572,49 +1615,49 @@ const pe = {
1572
1615
  ...l.config.app === "kongManager" && {
1573
1616
  workspace: l.config.workspace
1574
1617
  }
1575
- })), P = E(""), M = E(!1), Z = (w) => {
1576
- P.value ? i("update:target", w) : i("create:target", w), se();
1577
- }, se = () => {
1618
+ })), P = B(""), A = B(!1), X = (I) => {
1619
+ P.value ? i("update:target", I) : i("create:target", I), le();
1620
+ }, le = () => {
1578
1621
  te(), m.value++;
1579
1622
  }, te = () => {
1580
- M.value = !1, P.value = "";
1623
+ A.value = !1, P.value = "";
1581
1624
  };
1582
- return (w, k) => {
1583
- const S = K("KButton"), U = K("KDropdownItem"), j = K("KClipboardProvider");
1584
- return F(), re("div", ma, [
1625
+ return (I, k) => {
1626
+ const H = $("KButton"), x = $("KBadge"), V = $("KDropdownItem"), re = $("KClipboardProvider");
1627
+ return F(), ie("div", ya, [
1585
1628
  h(e(Ct), {
1586
1629
  "cache-identifier": a.cacheIdentifier,
1587
1630
  "disable-sorting": f.value,
1588
- "empty-state-options": z.value,
1631
+ "empty-state-options": G.value,
1589
1632
  "enable-entity-actions": "",
1590
- "error-message": V.value,
1633
+ "error-message": M.value,
1591
1634
  fetcher: e(d),
1592
1635
  "fetcher-cache-key": e(m),
1593
1636
  "pagination-type": "offset",
1594
1637
  "preferences-storage-key": "kong-ui-entities-targets-list",
1595
- "table-headers": e(x),
1596
- onEmptyStateCtaClicked: k[1] || (k[1] = () => l.config.createRoute ? void 0 : q()),
1638
+ "table-headers": e(O),
1639
+ onEmptyStateCtaClicked: k[1] || (k[1] = () => l.config.createRoute ? void 0 : w()),
1597
1640
  onSort: t
1598
- }, {
1599
- "toolbar-button": r(() => [
1600
- (F(), N(gt, {
1641
+ }, Te({
1642
+ "toolbar-button": n(() => [
1643
+ (F(), E(gt, {
1601
1644
  disabled: !a.useActionOutside,
1602
1645
  to: "#kong-ui-app-page-header-action-button"
1603
1646
  }, [
1604
1647
  h(e(ce), {
1605
1648
  "auth-function": () => a.canCreate()
1606
1649
  }, {
1607
- default: r(() => [
1608
- h(S, {
1650
+ default: n(() => [
1651
+ h(H, {
1609
1652
  appearance: "primary",
1610
1653
  "data-testid": "toolbar-new-target",
1611
1654
  size: a.useActionOutside ? "medium" : "large",
1612
1655
  to: l.config.createRoute ? l.config.createRoute : void 0,
1613
- onClick: k[0] || (k[0] = () => l.config.createRoute ? void 0 : q())
1656
+ onClick: k[0] || (k[0] = () => l.config.createRoute ? void 0 : w())
1614
1657
  }, {
1615
- default: r(() => [
1616
- h(e(je)),
1617
- J(" " + y(e(n)("targets.list.toolbar_actions.new_target")), 1)
1658
+ default: n(() => [
1659
+ h(e(Le)),
1660
+ Q(" " + y(e(r)("targets.list.toolbar_actions.new_target")), 1)
1618
1661
  ]),
1619
1662
  _: 1
1620
1663
  }, 8, ["size", "to"])
@@ -1623,38 +1666,38 @@ const pe = {
1623
1666
  }, 8, ["auth-function"])
1624
1667
  ], 8, ["disabled"]))
1625
1668
  ]),
1626
- target: r(({ rowValue: L }) => [
1627
- b("span", fa, y(L), 1)
1669
+ target: n(({ rowValue: u }) => [
1670
+ b("span", ga, y(u), 1)
1628
1671
  ]),
1629
- tags: r(({ rowValue: L }) => [
1672
+ tags: n(({ rowValue: u }) => [
1630
1673
  h(e(St), {
1631
1674
  "tag-max-width": "auto",
1632
- tags: L
1675
+ tags: u
1633
1676
  }, null, 8, ["tags"])
1634
1677
  ]),
1635
- actions: r(({ row: L }) => [
1636
- h(j, null, {
1637
- default: r(({ copyToClipboard: c }) => [
1638
- h(U, {
1678
+ actions: n(({ row: u }) => [
1679
+ h(re, null, {
1680
+ default: n(({ copyToClipboard: o }) => [
1681
+ h(V, {
1639
1682
  "data-testid": "action-entity-copy-id",
1640
- onClick: (o) => p(L, c)
1683
+ onClick: (c) => p(u, o)
1641
1684
  }, {
1642
- default: r(() => [
1643
- J(y(e(n)("targets.actions.copy_id")), 1)
1685
+ default: n(() => [
1686
+ Q(y(e(r)("targets.actions.copy_id")), 1)
1644
1687
  ]),
1645
1688
  _: 2
1646
1689
  }, 1032, ["onClick"])
1647
1690
  ]),
1648
1691
  _: 2
1649
1692
  }, 1024),
1650
- h(j, null, {
1651
- default: r(({ copyToClipboard: c }) => [
1652
- h(U, {
1693
+ h(re, null, {
1694
+ default: n(({ copyToClipboard: o }) => [
1695
+ h(V, {
1653
1696
  "data-testid": "action-entity-copy-json",
1654
- onClick: (o) => H(L, c)
1697
+ onClick: (c) => S(u, o)
1655
1698
  }, {
1656
- default: r(() => [
1657
- J(y(e(n)("targets.actions.copy_json")), 1)
1699
+ default: n(() => [
1700
+ Q(y(e(r)("targets.actions.copy_json")), 1)
1658
1701
  ]),
1659
1702
  _: 2
1660
1703
  }, 1032, ["onClick"])
@@ -1662,16 +1705,16 @@ const pe = {
1662
1705
  _: 2
1663
1706
  }, 1024),
1664
1707
  h(e(ce), {
1665
- "auth-function": () => a.canEdit(L)
1708
+ "auth-function": () => a.canEdit(u)
1666
1709
  }, {
1667
- default: r(() => [
1668
- h(U, {
1710
+ default: n(() => [
1711
+ h(V, {
1669
1712
  "data-testid": "action-entity-edit",
1670
1713
  "has-divider": "",
1671
- onClick: (c) => G(L.id)
1714
+ onClick: (o) => Y(u.id)
1672
1715
  }, {
1673
- default: r(() => [
1674
- J(y(e(n)("targets.actions.edit")), 1)
1716
+ default: n(() => [
1717
+ Q(y(e(r)("targets.actions.edit")), 1)
1675
1718
  ]),
1676
1719
  _: 2
1677
1720
  }, 1032, ["onClick"])
@@ -1679,15 +1722,15 @@ const pe = {
1679
1722
  _: 2
1680
1723
  }, 1032, ["auth-function"]),
1681
1724
  h(e(ce), {
1682
- "auth-function": () => A(L)
1725
+ "auth-function": () => K(u)
1683
1726
  }, {
1684
- default: r(() => [
1685
- h(U, {
1727
+ default: n(() => [
1728
+ h(V, {
1686
1729
  "data-testid": "action-target-mark-healthy",
1687
- onClick: (c) => i("health-actions:healthy", L)
1730
+ onClick: (o) => i("health-actions:healthy", u)
1688
1731
  }, {
1689
- default: r(() => [
1690
- J(y(e(n)("targets.actions.mark_healthy")), 1)
1732
+ default: n(() => [
1733
+ Q(y(e(r)("targets.actions.mark_healthy")), 1)
1691
1734
  ]),
1692
1735
  _: 2
1693
1736
  }, 1032, ["onClick"])
@@ -1695,15 +1738,15 @@ const pe = {
1695
1738
  _: 2
1696
1739
  }, 1032, ["auth-function"]),
1697
1740
  h(e(ce), {
1698
- "auth-function": () => X(L)
1741
+ "auth-function": () => W(u)
1699
1742
  }, {
1700
- default: r(() => [
1701
- h(U, {
1743
+ default: n(() => [
1744
+ h(V, {
1702
1745
  "data-testid": "action-target-mark-unhealthy",
1703
- onClick: (c) => i("health-actions:unhealthy", L)
1746
+ onClick: (o) => i("health-actions:unhealthy", u)
1704
1747
  }, {
1705
- default: r(() => [
1706
- J(y(e(n)("targets.actions.mark_unhealthy")), 1)
1748
+ default: n(() => [
1749
+ Q(y(e(r)("targets.actions.mark_unhealthy")), 1)
1707
1750
  ]),
1708
1751
  _: 2
1709
1752
  }, 1032, ["onClick"])
@@ -1711,17 +1754,17 @@ const pe = {
1711
1754
  _: 2
1712
1755
  }, 1032, ["auth-function"]),
1713
1756
  h(e(ce), {
1714
- "auth-function": () => a.canDelete(L)
1757
+ "auth-function": () => a.canDelete(u)
1715
1758
  }, {
1716
- default: r(() => [
1717
- h(U, {
1759
+ default: n(() => [
1760
+ h(V, {
1718
1761
  danger: "",
1719
1762
  "data-testid": "action-entity-delete",
1720
1763
  "has-divider": "",
1721
- onClick: (c) => O(L)
1764
+ onClick: (o) => q(u)
1722
1765
  }, {
1723
- default: r(() => [
1724
- J(y(e(n)("targets.actions.delete")), 1)
1766
+ default: n(() => [
1767
+ Q(y(e(r)("targets.actions.delete")), 1)
1725
1768
  ]),
1726
1769
  _: 2
1727
1770
  }, 1032, ["onClick"])
@@ -1729,38 +1772,56 @@ const pe = {
1729
1772
  _: 2
1730
1773
  }, 1032, ["auth-function"])
1731
1774
  ]),
1732
- _: 1
1733
- }, 8, ["cache-identifier", "disable-sorting", "empty-state-options", "error-message", "fetcher", "fetcher-cache-key", "table-headers"]),
1775
+ _: 2
1776
+ }, [
1777
+ a.failoverEnabled ? {
1778
+ name: "failover",
1779
+ fn: n(({ rowValue: u }) => [
1780
+ h(x, {
1781
+ appearance: "info",
1782
+ class: "upstream-failover"
1783
+ }, {
1784
+ default: n(() => [
1785
+ Q(y(u ? e(r)("targets.form.fields.failover.failover_target") : e(r)("targets.form.fields.failover.load_balance_target")), 1)
1786
+ ]),
1787
+ _: 2
1788
+ }, 1024)
1789
+ ]),
1790
+ key: "0"
1791
+ } : void 0
1792
+ ]), 1032, ["cache-identifier", "disable-sorting", "empty-state-options", "error-message", "fetcher", "fetcher-cache-key", "table-headers"]),
1734
1793
  h(e(Ht), {
1735
- "action-pending": T.value,
1736
- description: e(n)("targets.delete.description"),
1794
+ "action-pending": _.value,
1795
+ description: e(r)("targets.delete.description"),
1737
1796
  "entity-type": e(Ut).Target,
1738
- error: $.value,
1797
+ error: T.value,
1739
1798
  "need-confirm": !1,
1740
- title: e(n)("targets.delete.title"),
1741
- visible: _.value,
1742
- onCancel: Q,
1743
- onProceed: le
1799
+ title: e(r)("targets.delete.title"),
1800
+ visible: z.value,
1801
+ onCancel: N,
1802
+ onProceed: R
1744
1803
  }, null, 8, ["action-pending", "description", "entity-type", "error", "title", "visible"]),
1745
- h(pa, {
1804
+ h(fa, {
1746
1805
  config: oe.value,
1747
- "is-visible": M.value,
1806
+ "failover-enabled": a.failoverEnabled,
1807
+ "failover-unsupported": a.failoverEnabled && !e(ta).includes(a.algorithm),
1808
+ "is-visible": A.value,
1748
1809
  "target-id": P.value,
1749
1810
  onCancel: te,
1750
- onUpdate: Z
1751
- }, Ne({ _: 2 }, [
1752
- w.$slots["form-info"] ? {
1811
+ onUpdate: X
1812
+ }, Te({ _: 2 }, [
1813
+ I.$slots["form-info"] ? {
1753
1814
  name: "info",
1754
- fn: r(() => [
1755
- bt(w.$slots, "form-info", {}, void 0, !0)
1815
+ fn: n(() => [
1816
+ bt(I.$slots, "form-info", {}, void 0, !0)
1756
1817
  ]),
1757
1818
  key: "0"
1758
1819
  } : void 0
1759
- ]), 1032, ["config", "is-visible", "target-id"])
1820
+ ]), 1032, ["config", "failover-enabled", "failover-unsupported", "is-visible", "target-id"])
1760
1821
  ]);
1761
1822
  };
1762
1823
  }
1763
- }), Ya = /* @__PURE__ */ me(ya, [["__scopeId", "data-v-47084451"]]), ga = { key: 1 }, ba = /* @__PURE__ */ ne({
1824
+ }), tl = /* @__PURE__ */ me(ba, [["__scopeId", "data-v-9fdfe77a"]]), va = { key: 1 }, ka = /* @__PURE__ */ ne({
1764
1825
  __name: "UpstreamsFormGeneralInfo",
1765
1826
  props: {
1766
1827
  config: {
@@ -1790,92 +1851,92 @@ const pe = {
1790
1851
  }
1791
1852
  },
1792
1853
  emits: ["update:name", "update:host-header", "update:client-certificate", "update:tags"],
1793
- setup(a, { emit: R }) {
1794
- var Q, le, z, oe;
1795
- const { i18nT: i, i18n: { t: l } } = pe.useI18n(), n = a, v = R, {
1854
+ setup(a, { emit: L }) {
1855
+ var N, R, G, oe;
1856
+ const { i18nT: i, i18n: { t: l } } = pe.useI18n(), r = a, v = L, {
1796
1857
  debouncedQueryChange: f,
1797
- loading: D,
1798
- loadItems: x,
1858
+ loading: j,
1859
+ loadItems: O,
1799
1860
  results: s,
1800
1861
  allRecords: d
1801
- } = mt(n.config, (le = _e.form[(Q = n.config) == null ? void 0 : Q.app]) == null ? void 0 : le.getServices, "", {
1862
+ } = mt(r.config, (R = _e.form[(N = r.config) == null ? void 0 : N.app]) == null ? void 0 : R.getServices, "", {
1802
1863
  fetchedItemsKey: "data",
1803
1864
  searchKeys: ["host"]
1804
1865
  }), {
1805
1866
  debouncedQueryChange: C,
1806
1867
  loading: m,
1807
1868
  loadItems: t,
1808
- results: V
1809
- } = mt(n.config, (oe = _e.form[(z = n.config) == null ? void 0 : z.app]) == null ? void 0 : oe.getCertificates), q = E(""), p = I(() => {
1869
+ results: M
1870
+ } = mt(r.config, (oe = _e.form[(G = r.config) == null ? void 0 : G.app]) == null ? void 0 : oe.getCertificates), w = B(""), p = U(() => {
1810
1871
  var P;
1811
- return !!n.name && !((P = d.value) != null && P.some((M) => M.host === n.name));
1812
- }), H = I(() => {
1813
- var M, Z, se;
1814
- const P = p.value && n.name.includes((M = q.value) == null ? void 0 : M.toLowerCase());
1815
- return (se = s.value) == null ? void 0 : se.map((te) => ({ label: te.host, value: te.id })).concat(
1816
- P ? [{ label: n.name, value: ((Z = X.value) == null ? void 0 : Z.value) || n.name }] : []
1872
+ return !!r.name && !((P = d.value) != null && P.some((A) => A.host === r.name));
1873
+ }), S = U(() => {
1874
+ var A, X, le;
1875
+ const P = p.value && r.name.includes((A = w.value) == null ? void 0 : A.toLowerCase());
1876
+ return (le = s.value) == null ? void 0 : le.map((te) => ({ label: te.host, value: te.id })).concat(
1877
+ P ? [{ label: r.name, value: ((X = W.value) == null ? void 0 : X.value) || r.name }] : []
1817
1878
  );
1818
- }), G = I(() => {
1879
+ }), Y = U(() => {
1819
1880
  var P;
1820
- return (P = V.value) == null ? void 0 : P.map((M) => ({ label: M.id, value: M.id }));
1821
- }), A = E(""), X = E({ value: "", label: "" }), W = I(() => {
1822
- var P, M;
1823
- return ((P = H.value.find((Z) => Z.value === A.value)) == null ? void 0 : P.label) || ((M = X.value) == null ? void 0 : M.label);
1824
- }), _ = (P) => {
1825
- q.value = P, f(P);
1826
- }, T = (P) => {
1827
- X.value = P;
1828
- }, $ = () => {
1829
- X.value = { value: "", label: "" };
1881
+ return (P = M.value) == null ? void 0 : P.map((A) => ({ label: A.id, value: A.id }));
1882
+ }), K = B(""), W = B({ value: "", label: "" }), J = U(() => {
1883
+ var P, A;
1884
+ return ((P = S.value.find((X) => X.value === K.value)) == null ? void 0 : P.label) || ((A = W.value) == null ? void 0 : A.label);
1885
+ }), z = (P) => {
1886
+ w.value = P, f(P);
1887
+ }, _ = (P) => {
1888
+ W.value = P;
1889
+ }, T = () => {
1890
+ W.value = { value: "", label: "" };
1830
1891
  }, g = (P) => {
1831
- A.value = P, v("update:name", W.value);
1832
- }, O = E(!1);
1833
- return Be(async () => {
1834
- var P, M;
1892
+ K.value = P, v("update:name", J.value);
1893
+ }, q = B(!1);
1894
+ return Re(async () => {
1895
+ var P, A;
1835
1896
  try {
1836
- O.value = !0, await x(), n.name && (A.value = ((M = (P = H.value.find((Z) => Z.label === n.name)) == null ? void 0 : P.value) == null ? void 0 : M.toString()) || n.name), await t();
1897
+ q.value = !0, await O(), r.name && (K.value = ((A = (P = S.value.find((X) => X.label === r.name)) == null ? void 0 : P.value) == null ? void 0 : A.toString()) || r.name), await t();
1837
1898
  } finally {
1838
- O.value = !1;
1899
+ q.value = !1;
1839
1900
  }
1840
- }), (P, M) => {
1841
- const Z = K("KSkeleton"), se = K("KSelect"), te = K("KInput");
1842
- return F(), N(e(He), {
1901
+ }), (P, A) => {
1902
+ const X = $("KSkeleton"), le = $("KSelect"), te = $("KInput");
1903
+ return F(), E(e(He), {
1843
1904
  class: "kong-ui-entities-upstreams-general-info",
1844
1905
  description: e(l)("upstreams.form.general_info.help"),
1845
1906
  title: e(l)("upstreams.form.general_info.title")
1846
1907
  }, {
1847
- default: r(() => [
1848
- O.value ? (F(), N(Z, {
1908
+ default: n(() => [
1909
+ q.value ? (F(), E(X, {
1849
1910
  key: 0,
1850
1911
  type: "form"
1851
- })) : (F(), re("div", ga, [
1852
- h(se, {
1912
+ })) : (F(), ie("div", va, [
1913
+ h(le, {
1853
1914
  class: "name-select margin-bottom-6",
1854
1915
  clearable: "",
1855
1916
  "data-testid": "upstreams-form-name",
1856
1917
  "enable-filtering": "",
1857
1918
  "enable-item-creation": "",
1858
1919
  "filter-function": () => !0,
1859
- items: H.value,
1920
+ items: S.value,
1860
1921
  label: e(l)("upstreams.form.fields.name.label"),
1861
1922
  "label-attributes": { tooltipAttributes: { maxWidth: "400" } },
1862
- loading: e(D),
1863
- "model-value": A.value,
1923
+ loading: e(j),
1924
+ "model-value": K.value,
1864
1925
  placeholder: e(l)("upstreams.form.fields.name.placeholder"),
1865
1926
  readonly: a.readonly,
1866
1927
  required: "",
1867
1928
  width: "100%",
1868
- onItemAdded: T,
1869
- onItemRemoved: $,
1870
- onQueryChange: _,
1929
+ onItemAdded: _,
1930
+ onItemRemoved: T,
1931
+ onQueryChange: z,
1871
1932
  "onUpdate:modelValue": g
1872
1933
  }, {
1873
- "label-tooltip": r(() => [
1934
+ "label-tooltip": n(() => [
1874
1935
  h(e(i), {
1875
1936
  keypath: "upstreams.form.fields.name.tooltip",
1876
1937
  scope: "global"
1877
1938
  }, {
1878
- host: r(() => [
1939
+ host: n(() => [
1879
1940
  b("code", null, y(e(l)("upstreams.form.fields.name.host")), 1)
1880
1941
  ]),
1881
1942
  _: 1
@@ -1891,15 +1952,15 @@ const pe = {
1891
1952
  "model-value": a.hostHeader,
1892
1953
  readonly: a.readonly,
1893
1954
  type: "text",
1894
- "onUpdate:modelValue": M[0] || (M[0] = (Y) => v("update:host-header", Y))
1955
+ "onUpdate:modelValue": A[0] || (A[0] = (Z) => v("update:host-header", Z))
1895
1956
  }, null, 8, ["label", "model-value", "readonly"]),
1896
- h(se, {
1957
+ h(le, {
1897
1958
  class: "certificate-select margin-bottom-6",
1898
1959
  clearable: "",
1899
1960
  "data-testid": "upstreams-form-client-certificate",
1900
1961
  "enable-filtering": "",
1901
1962
  "filter-function": () => !0,
1902
- items: G.value,
1963
+ items: Y.value,
1903
1964
  label: e(l)("upstreams.form.fields.client_certificate.label"),
1904
1965
  "label-attributes": {
1905
1966
  info: e(l)("upstreams.form.fields.client_certificate.tooltip"),
@@ -1911,7 +1972,7 @@ const pe = {
1911
1972
  readonly: a.readonly,
1912
1973
  width: "100%",
1913
1974
  onQueryChange: e(C),
1914
- "onUpdate:modelValue": M[1] || (M[1] = (Y) => v("update:client-certificate", Y))
1975
+ "onUpdate:modelValue": A[1] || (A[1] = (Z) => v("update:client-certificate", Z))
1915
1976
  }, null, 8, ["items", "label", "label-attributes", "loading", "model-value", "placeholder", "readonly", "onQueryChange"]),
1916
1977
  h(te, {
1917
1978
  autocomplete: "off",
@@ -1926,7 +1987,7 @@ const pe = {
1926
1987
  placeholder: e(l)("upstreams.form.fields.tags.placeholder"),
1927
1988
  readonly: a.readonly,
1928
1989
  type: "text",
1929
- "onUpdate:modelValue": M[2] || (M[2] = (Y) => v("update:tags", Y))
1990
+ "onUpdate:modelValue": A[2] || (A[2] = (Z) => v("update:tags", Z))
1930
1991
  }, null, 8, ["help", "label", "label-attributes", "model-value", "placeholder", "readonly"])
1931
1992
  ]))
1932
1993
  ]),
@@ -1934,10 +1995,10 @@ const pe = {
1934
1995
  }, 8, ["description", "title"]);
1935
1996
  };
1936
1997
  }
1937
- }), va = /* @__PURE__ */ me(ba, [["__scopeId", "data-v-1a71740c"]]), Ke = {
1998
+ }), _a = /* @__PURE__ */ me(ka, [["__scopeId", "data-v-1a71740c"]]), Ee = {
1938
1999
  upstreamObject: "https://developer.konghq.com/gateway/entities/upstream/",
1939
2000
  loadBalancing: "https://developer.konghq.com/gateway/traffic-control/load-balancing-reference/"
1940
- }, ka = { class: "fields-group-title" }, _a = { class: "fields-group-text" }, Ca = { class: "fields-group-title" }, Sa = { class: "fields-group-text" }, Ha = /* @__PURE__ */ ne({
2001
+ }, Ca = { class: "fields-group-title" }, Sa = { class: "fields-group-text" }, Ha = { class: "fields-group-title" }, Ua = { class: "fields-group-text" }, Ia = /* @__PURE__ */ ne({
1941
2002
  __name: "UpstreamsFormLoadBalancing",
1942
2003
  props: {
1943
2004
  stickySessionsAvailable: {
@@ -2008,8 +2069,8 @@ const pe = {
2008
2069
  }
2009
2070
  },
2010
2071
  emits: ["update:algorithm", "update:sticky-sessions-cookie", "update:sticky-sessions-cookie-path", "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"],
2011
- setup(a, { emit: R }) {
2012
- const { i18nT: i, i18n: { t: l } } = pe.useI18n(), { inRange: n } = Me(), v = a, f = R, D = E([
2072
+ setup(a, { emit: L }) {
2073
+ const { i18nT: i, i18n: { t: l } } = pe.useI18n(), { inRange: r } = Ke(), v = a, f = L, j = B([
2013
2074
  {
2014
2075
  label: l("upstreams.form.algorithms.round_robin_label"),
2015
2076
  value: "round-robin",
@@ -2035,7 +2096,7 @@ const pe = {
2035
2096
  value: "sticky-sessions",
2036
2097
  selected: !1
2037
2098
  }] : []
2038
- ]), x = E([
2099
+ ]), O = B([
2039
2100
  {
2040
2101
  label: l("upstreams.form.hash_labels.none"),
2041
2102
  value: "none",
@@ -2084,39 +2145,39 @@ const pe = {
2084
2145
  }), de(() => v.algorithm, (C) => {
2085
2146
  C === "sticky-sessions" && (f("update:slots", "10000"), f("update:hash-on", "none"), f("update:hash-fallback", "none"), f("update:hash-on-header", ""), f("update:hash-on-cookie", ""), f("update:hash-on-cookie-path", "/"), f("update:hash-on-query-argument", ""), f("update:hash-on-uri-capture", ""), f("update:hash-fallback-header", ""), f("update:hash-fallback-query-argument", ""), f("update:hash-fallback-uri-capture", ""));
2086
2147
  }, { immediate: !0 });
2087
- const s = I(() => v.hashOn === "cookie" || v.hashOn === "none"), d = I(() => v.slots ? n(v.slots, Ee, Re) ? "" : l("upstreams.form.errors.in_range") : "");
2148
+ const s = U(() => v.hashOn === "cookie" || v.hashOn === "none"), d = U(() => v.slots ? r(v.slots, Ne, Be) ? "" : l("upstreams.form.errors.in_range") : "");
2088
2149
  return (C, m) => {
2089
- const t = K("KExternalLink"), V = K("KSelect"), q = K("KInput"), p = K("KCard");
2090
- return F(), N(e(He), {
2150
+ const t = $("KExternalLink"), M = $("KSelect"), w = $("KInput"), p = $("KCard");
2151
+ return F(), E(e(He), {
2091
2152
  class: "kong-ui-entities-upstreams-load-balancing",
2092
2153
  title: e(l)("upstreams.form.load_balancing.title")
2093
2154
  }, {
2094
- description: r(() => [
2155
+ description: n(() => [
2095
2156
  b("p", null, [
2096
- J(y(e(l)("upstreams.form.load_balancing.help")) + " ", 1),
2157
+ Q(y(e(l)("upstreams.form.load_balancing.help")) + " ", 1),
2097
2158
  h(t, {
2098
2159
  "hide-icon": "",
2099
- href: e(Ke).upstreamObject
2160
+ href: e(Ee).upstreamObject
2100
2161
  }, {
2101
- default: r(() => [
2102
- J(y(e(l)("upstreams.form.buttons.view_documentation")), 1)
2162
+ default: n(() => [
2163
+ Q(y(e(l)("upstreams.form.buttons.view_documentation")), 1)
2103
2164
  ]),
2104
2165
  _: 1
2105
2166
  }, 8, ["href"])
2106
2167
  ])
2107
2168
  ]),
2108
- default: r(() => [
2109
- h(V, {
2169
+ default: n(() => [
2170
+ h(M, {
2110
2171
  class: "algorithm-select",
2111
- items: D.value,
2172
+ items: j.value,
2112
2173
  label: e(l)("upstreams.form.fields.algorithm.label"),
2113
2174
  "model-value": a.algorithm,
2114
2175
  readonly: a.readonly,
2115
2176
  width: "100%",
2116
- "onUpdate:modelValue": m[0] || (m[0] = (H) => f("update:algorithm", H))
2177
+ "onUpdate:modelValue": m[0] || (m[0] = (S) => f("update:algorithm", S))
2117
2178
  }, null, 8, ["items", "label", "model-value", "readonly"]),
2118
- a.algorithm === "sticky-sessions" ? (F(), re(Ce, { key: 0 }, [
2119
- h(q, {
2179
+ a.algorithm === "sticky-sessions" ? (F(), ie(Ce, { key: 0 }, [
2180
+ h(w, {
2120
2181
  autocomplete: "off",
2121
2182
  "data-testid": "upstreams-form-sticky-sessions-cookie",
2122
2183
  label: e(l)("upstreams.form.fields.sticky_sessions_cookie.label"),
@@ -2128,9 +2189,9 @@ const pe = {
2128
2189
  readonly: a.readonly,
2129
2190
  required: "",
2130
2191
  type: "text",
2131
- "onUpdate:modelValue": m[1] || (m[1] = (H) => f("update:sticky-sessions-cookie", H))
2192
+ "onUpdate:modelValue": m[1] || (m[1] = (S) => f("update:sticky-sessions-cookie", S))
2132
2193
  }, null, 8, ["label", "label-attributes", "model-value", "readonly"]),
2133
- h(q, {
2194
+ h(w, {
2134
2195
  autocomplete: "off",
2135
2196
  "data-testid": "upstreams-form-sticky-sessions-cookie-path",
2136
2197
  label: e(l)("upstreams.form.fields.sticky_sessions_cookie_path.label"),
@@ -2142,10 +2203,10 @@ const pe = {
2142
2203
  readonly: a.readonly,
2143
2204
  required: "",
2144
2205
  type: "text",
2145
- "onUpdate:modelValue": m[2] || (m[2] = (H) => f("update:sticky-sessions-cookie-path", H))
2206
+ "onUpdate:modelValue": m[2] || (m[2] = (S) => f("update:sticky-sessions-cookie-path", S))
2146
2207
  }, null, 8, ["label", "label-attributes", "model-value", "readonly"])
2147
- ], 64)) : B("", !0),
2148
- a.algorithm !== "sticky-sessions" ? (F(), N(q, {
2208
+ ], 64)) : D("", !0),
2209
+ a.algorithm !== "sticky-sessions" ? (F(), E(w, {
2149
2210
  key: 1,
2150
2211
  autocomplete: "off",
2151
2212
  "data-testid": "upstreams-form-slots",
@@ -2153,27 +2214,27 @@ const pe = {
2153
2214
  "error-message": d.value,
2154
2215
  help: e(l)("upstreams.form.fields.slots.help"),
2155
2216
  label: e(l)("upstreams.form.fields.slots.label"),
2156
- max: e(Re),
2157
- min: e(Ee),
2217
+ max: e(Be),
2218
+ min: e(Ne),
2158
2219
  "model-value": a.slots,
2159
2220
  readonly: a.readonly,
2160
2221
  type: "number",
2161
- "onUpdate:modelValue": m[3] || (m[3] = (H) => f("update:slots", H))
2162
- }, null, 8, ["error", "error-message", "help", "label", "max", "min", "model-value", "readonly"])) : B("", !0),
2163
- a.algorithm !== "sticky-sessions" ? (F(), N(p, { key: 2 }, {
2164
- default: r(() => [
2165
- b("h5", ka, y(e(l)("upstreams.form.fields.hash_on.label")), 1),
2166
- b("p", _a, y(e(l)("upstreams.form.fields.hash_on.help")), 1),
2167
- h(V, {
2222
+ "onUpdate:modelValue": m[3] || (m[3] = (S) => f("update:slots", S))
2223
+ }, null, 8, ["error", "error-message", "help", "label", "max", "min", "model-value", "readonly"])) : D("", !0),
2224
+ a.algorithm !== "sticky-sessions" ? (F(), E(p, { key: 2 }, {
2225
+ default: n(() => [
2226
+ b("h5", Ca, y(e(l)("upstreams.form.fields.hash_on.label")), 1),
2227
+ b("p", Sa, y(e(l)("upstreams.form.fields.hash_on.help")), 1),
2228
+ h(M, {
2168
2229
  class: "hash-on-select",
2169
- items: x.value,
2230
+ items: O.value,
2170
2231
  label: e(l)("upstreams.form.fields.hash_on.label"),
2171
2232
  "model-value": a.hashOn,
2172
2233
  readonly: a.readonly,
2173
2234
  width: "100%",
2174
- "onUpdate:modelValue": m[4] || (m[4] = (H) => f("update:hash-on", H))
2235
+ "onUpdate:modelValue": m[4] || (m[4] = (S) => f("update:hash-on", S))
2175
2236
  }, null, 8, ["items", "label", "model-value", "readonly"]),
2176
- a.hashOn === "header" ? (F(), N(q, {
2237
+ a.hashOn === "header" ? (F(), E(w, {
2177
2238
  key: 0,
2178
2239
  autocomplete: "off",
2179
2240
  class: "margin-top-6",
@@ -2183,10 +2244,10 @@ const pe = {
2183
2244
  readonly: a.readonly,
2184
2245
  required: "",
2185
2246
  type: "text",
2186
- "onUpdate:modelValue": m[5] || (m[5] = (H) => f("update:hash-on-header", H))
2187
- }, null, 8, ["label", "model-value", "readonly"])) : B("", !0),
2188
- a.hashOn === "cookie" ? (F(), re(Ce, { key: 1 }, [
2189
- h(q, {
2247
+ "onUpdate:modelValue": m[5] || (m[5] = (S) => f("update:hash-on-header", S))
2248
+ }, null, 8, ["label", "model-value", "readonly"])) : D("", !0),
2249
+ a.hashOn === "cookie" ? (F(), ie(Ce, { key: 1 }, [
2250
+ h(w, {
2190
2251
  autocomplete: "off",
2191
2252
  class: "margin-top-6",
2192
2253
  "data-testid": "upstreams-form-hash-on-cookie",
@@ -2195,9 +2256,9 @@ const pe = {
2195
2256
  readonly: a.readonly,
2196
2257
  required: "",
2197
2258
  type: "text",
2198
- "onUpdate:modelValue": m[6] || (m[6] = (H) => f("update:hash-on-cookie", H))
2259
+ "onUpdate:modelValue": m[6] || (m[6] = (S) => f("update:hash-on-cookie", S))
2199
2260
  }, null, 8, ["label", "model-value", "readonly"]),
2200
- h(q, {
2261
+ h(w, {
2201
2262
  autocomplete: "off",
2202
2263
  class: "margin-top-6",
2203
2264
  "data-testid": "upstreams-form-hash-on-cookie-path",
@@ -2206,10 +2267,10 @@ const pe = {
2206
2267
  readonly: a.readonly,
2207
2268
  required: "",
2208
2269
  type: "text",
2209
- "onUpdate:modelValue": m[7] || (m[7] = (H) => f("update:hash-on-cookie-path", H))
2270
+ "onUpdate:modelValue": m[7] || (m[7] = (S) => f("update:hash-on-cookie-path", S))
2210
2271
  }, null, 8, ["label", "model-value", "readonly"])
2211
- ], 64)) : B("", !0),
2212
- a.hashOn === "query_arg" ? (F(), N(q, {
2272
+ ], 64)) : D("", !0),
2273
+ a.hashOn === "query_arg" ? (F(), E(w, {
2213
2274
  key: 2,
2214
2275
  autocomplete: "off",
2215
2276
  class: "margin-top-6",
@@ -2219,9 +2280,9 @@ const pe = {
2219
2280
  readonly: a.readonly,
2220
2281
  required: "",
2221
2282
  type: "text",
2222
- "onUpdate:modelValue": m[8] || (m[8] = (H) => f("update:hash-on-query-argument", H))
2223
- }, null, 8, ["label", "model-value", "readonly"])) : B("", !0),
2224
- a.hashOn === "uri_capture" ? (F(), N(q, {
2283
+ "onUpdate:modelValue": m[8] || (m[8] = (S) => f("update:hash-on-query-argument", S))
2284
+ }, null, 8, ["label", "model-value", "readonly"])) : D("", !0),
2285
+ a.hashOn === "uri_capture" ? (F(), E(w, {
2225
2286
  key: 3,
2226
2287
  autocomplete: "off",
2227
2288
  class: "margin-top-6",
@@ -2231,35 +2292,35 @@ const pe = {
2231
2292
  readonly: a.readonly,
2232
2293
  required: "",
2233
2294
  type: "text",
2234
- "onUpdate:modelValue": m[9] || (m[9] = (H) => f("update:hash-on-uri-capture", H))
2235
- }, null, 8, ["label", "model-value", "readonly"])) : B("", !0)
2295
+ "onUpdate:modelValue": m[9] || (m[9] = (S) => f("update:hash-on-uri-capture", S))
2296
+ }, null, 8, ["label", "model-value", "readonly"])) : D("", !0)
2236
2297
  ]),
2237
2298
  _: 1
2238
- })) : B("", !0),
2239
- a.algorithm !== "sticky-sessions" ? (F(), N(p, { key: 3 }, {
2240
- default: r(() => [
2241
- b("h5", Ca, y(e(l)("upstreams.form.fields.hash_fallback.label")), 1),
2242
- b("p", Sa, y(e(l)("upstreams.form.fields.hash_fallback.help")), 1),
2243
- h(V, {
2299
+ })) : D("", !0),
2300
+ a.algorithm !== "sticky-sessions" ? (F(), E(p, { key: 3 }, {
2301
+ default: n(() => [
2302
+ b("h5", Ha, y(e(l)("upstreams.form.fields.hash_fallback.label")), 1),
2303
+ b("p", Ua, y(e(l)("upstreams.form.fields.hash_fallback.help")), 1),
2304
+ h(M, {
2244
2305
  class: "hash-fallback-select",
2245
2306
  disabled: s.value,
2246
- items: x.value,
2307
+ items: O.value,
2247
2308
  label: e(l)("upstreams.form.fields.hash_fallback.label"),
2248
2309
  "label-attributes": { tooltipAttributes: { maxWidth: "400" } },
2249
2310
  "model-value": a.hashFallback,
2250
2311
  readonly: a.readonly,
2251
2312
  width: "100%",
2252
- "onUpdate:modelValue": m[10] || (m[10] = (H) => f("update:hash-fallback", H))
2313
+ "onUpdate:modelValue": m[10] || (m[10] = (S) => f("update:hash-fallback", S))
2253
2314
  }, {
2254
- "label-tooltip": r(() => [
2315
+ "label-tooltip": n(() => [
2255
2316
  h(e(i), {
2256
2317
  keypath: "upstreams.form.fields.hash_fallback.tooltip",
2257
2318
  scope: "global"
2258
2319
  }, {
2259
- hash_on: r(() => [
2320
+ hash_on: n(() => [
2260
2321
  b("code", null, y(e(l)("upstreams.form.fields.hash_fallback.hash_on")), 1)
2261
2322
  ]),
2262
- cookie: r(() => [
2323
+ cookie: n(() => [
2263
2324
  b("code", null, y(e(l)("upstreams.form.fields.hash_fallback.cookie")), 1)
2264
2325
  ]),
2265
2326
  _: 1
@@ -2267,7 +2328,7 @@ const pe = {
2267
2328
  ]),
2268
2329
  _: 1
2269
2330
  }, 8, ["disabled", "items", "label", "model-value", "readonly"]),
2270
- a.hashFallback === "header" ? (F(), N(q, {
2331
+ a.hashFallback === "header" ? (F(), E(w, {
2271
2332
  key: 0,
2272
2333
  autocomplete: "off",
2273
2334
  class: "margin-top-6",
@@ -2277,10 +2338,10 @@ const pe = {
2277
2338
  readonly: a.readonly,
2278
2339
  required: "",
2279
2340
  type: "text",
2280
- "onUpdate:modelValue": m[11] || (m[11] = (H) => f("update:hash-fallback-header", H))
2281
- }, null, 8, ["label", "model-value", "readonly"])) : B("", !0),
2282
- a.hashFallback === "cookie" ? (F(), re(Ce, { key: 1 }, [
2283
- h(q, {
2341
+ "onUpdate:modelValue": m[11] || (m[11] = (S) => f("update:hash-fallback-header", S))
2342
+ }, null, 8, ["label", "model-value", "readonly"])) : D("", !0),
2343
+ a.hashFallback === "cookie" ? (F(), ie(Ce, { key: 1 }, [
2344
+ h(w, {
2284
2345
  autocomplete: "off",
2285
2346
  class: "margin-top-6",
2286
2347
  "data-testid": "upstreams-form-hash-on-cookie",
@@ -2289,9 +2350,9 @@ const pe = {
2289
2350
  readonly: a.readonly,
2290
2351
  required: "",
2291
2352
  type: "text",
2292
- "onUpdate:modelValue": m[12] || (m[12] = (H) => f("update:hash-on-cookie", H))
2353
+ "onUpdate:modelValue": m[12] || (m[12] = (S) => f("update:hash-on-cookie", S))
2293
2354
  }, null, 8, ["label", "model-value", "readonly"]),
2294
- h(q, {
2355
+ h(w, {
2295
2356
  autocomplete: "off",
2296
2357
  class: "margin-top-6",
2297
2358
  "data-testid": "upstreams-form-hash-on-cookie-path",
@@ -2300,10 +2361,10 @@ const pe = {
2300
2361
  readonly: a.readonly,
2301
2362
  required: "",
2302
2363
  type: "text",
2303
- "onUpdate:modelValue": m[13] || (m[13] = (H) => f("update:hash-on-cookie-path", H))
2364
+ "onUpdate:modelValue": m[13] || (m[13] = (S) => f("update:hash-on-cookie-path", S))
2304
2365
  }, null, 8, ["label", "model-value", "readonly"])
2305
- ], 64)) : B("", !0),
2306
- a.hashFallback === "query_arg" ? (F(), N(q, {
2366
+ ], 64)) : D("", !0),
2367
+ a.hashFallback === "query_arg" ? (F(), E(w, {
2307
2368
  key: 2,
2308
2369
  autocomplete: "off",
2309
2370
  class: "margin-top-6",
@@ -2313,9 +2374,9 @@ const pe = {
2313
2374
  readonly: a.readonly,
2314
2375
  required: "",
2315
2376
  type: "text",
2316
- "onUpdate:modelValue": m[14] || (m[14] = (H) => f("update:hash-fallback-query-argument", H))
2317
- }, null, 8, ["label", "model-value", "readonly"])) : B("", !0),
2318
- a.hashFallback === "uri_capture" ? (F(), N(q, {
2377
+ "onUpdate:modelValue": m[14] || (m[14] = (S) => f("update:hash-fallback-query-argument", S))
2378
+ }, null, 8, ["label", "model-value", "readonly"])) : D("", !0),
2379
+ a.hashFallback === "uri_capture" ? (F(), E(w, {
2319
2380
  key: 3,
2320
2381
  autocomplete: "off",
2321
2382
  class: "margin-top-6",
@@ -2325,17 +2386,17 @@ const pe = {
2325
2386
  readonly: a.readonly,
2326
2387
  required: "",
2327
2388
  type: "text",
2328
- "onUpdate:modelValue": m[15] || (m[15] = (H) => f("update:hash-fallback-uri-capture", H))
2329
- }, null, 8, ["label", "model-value", "readonly"])) : B("", !0)
2389
+ "onUpdate:modelValue": m[15] || (m[15] = (S) => f("update:hash-fallback-uri-capture", S))
2390
+ }, null, 8, ["label", "model-value", "readonly"])) : D("", !0)
2330
2391
  ]),
2331
2392
  _: 1
2332
- })) : B("", !0)
2393
+ })) : D("", !0)
2333
2394
  ]),
2334
2395
  _: 1
2335
2396
  }, 8, ["title"]);
2336
2397
  };
2337
2398
  }
2338
- }), Ua = /* @__PURE__ */ me(Ha, [["__scopeId", "data-v-656aa4f4"]]), Ia = { class: "fields-group-title" }, wa = { class: "fields-group-text" }, qa = { class: "fields-group-title" }, Ta = { class: "fields-group-text" }, Fa = /* @__PURE__ */ ne({
2399
+ }), qa = /* @__PURE__ */ me(Ia, [["__scopeId", "data-v-656aa4f4"]]), wa = { class: "fields-group-title" }, Ta = { class: "fields-group-text" }, Fa = { class: "fields-group-title" }, xa = { class: "fields-group-text" }, Oa = /* @__PURE__ */ ne({
2339
2400
  __name: "UpstreamsFormHealthChecks",
2340
2401
  props: {
2341
2402
  activeHealthSwitch: {
@@ -2357,34 +2418,34 @@ const pe = {
2357
2418
  }
2358
2419
  },
2359
2420
  emits: ["update:active-health-switch", "update:passive-health-switch", "update:healthchecks-threshold"],
2360
- setup(a, { emit: R }) {
2361
- const { i18n: { t: i } } = pe.useI18n(), l = R;
2362
- return (n, v) => {
2363
- const f = K("KExternalLink"), D = K("KInputSwitch"), x = K("KCard"), s = K("KInput");
2364
- return F(), N(e(He), {
2421
+ setup(a, { emit: L }) {
2422
+ const { i18n: { t: i } } = pe.useI18n(), l = L;
2423
+ return (r, v) => {
2424
+ const f = $("KExternalLink"), j = $("KInputSwitch"), O = $("KCard"), s = $("KInput");
2425
+ return F(), E(e(He), {
2365
2426
  class: "kong-ui-entities-upstreams-healthchecks",
2366
2427
  title: e(i)("upstreams.form.health_check.title")
2367
2428
  }, {
2368
- description: r(() => [
2429
+ description: n(() => [
2369
2430
  b("p", null, [
2370
- J(y(e(i)("upstreams.form.health_check.help")) + " ", 1),
2431
+ Q(y(e(i)("upstreams.form.health_check.help")) + " ", 1),
2371
2432
  h(f, {
2372
2433
  "hide-icon": "",
2373
- href: e(Ke).loadBalancing
2434
+ href: e(Ee).loadBalancing
2374
2435
  }, {
2375
- default: r(() => [
2376
- J(y(e(i)("upstreams.form.buttons.view_documentation")), 1)
2436
+ default: n(() => [
2437
+ Q(y(e(i)("upstreams.form.buttons.view_documentation")), 1)
2377
2438
  ]),
2378
2439
  _: 1
2379
2440
  }, 8, ["href"])
2380
2441
  ])
2381
2442
  ]),
2382
- default: r(() => [
2383
- h(x, null, {
2384
- default: r(() => [
2385
- b("h5", Ia, y(e(i)("upstreams.form.fields.active_health_checks.label")), 1),
2386
- b("p", wa, y(e(i)("upstreams.form.fields.active_health_checks.help")), 1),
2387
- h(D, {
2443
+ default: n(() => [
2444
+ h(O, null, {
2445
+ default: n(() => [
2446
+ b("h5", wa, y(e(i)("upstreams.form.fields.active_health_checks.label")), 1),
2447
+ b("p", Ta, y(e(i)("upstreams.form.fields.active_health_checks.help")), 1),
2448
+ h(j, {
2388
2449
  class: "active-health-switch",
2389
2450
  "data-testid": "active-health-switch",
2390
2451
  disabled: a.readonly,
@@ -2394,11 +2455,11 @@ const pe = {
2394
2455
  ]),
2395
2456
  _: 1
2396
2457
  }),
2397
- h(x, null, {
2398
- default: r(() => [
2399
- b("h5", qa, y(e(i)("upstreams.form.fields.passive_health_checks.label")), 1),
2400
- b("p", Ta, y(e(i)("upstreams.form.fields.passive_health_checks.help")), 1),
2401
- h(D, {
2458
+ h(O, null, {
2459
+ default: n(() => [
2460
+ b("h5", Fa, y(e(i)("upstreams.form.fields.passive_health_checks.label")), 1),
2461
+ b("p", xa, y(e(i)("upstreams.form.fields.passive_health_checks.help")), 1),
2462
+ h(j, {
2402
2463
  class: "passive-health-switch",
2403
2464
  "data-testid": "passive-health-switch",
2404
2465
  disabled: a.readonly,
@@ -2424,7 +2485,7 @@ const pe = {
2424
2485
  }, 8, ["title"]);
2425
2486
  };
2426
2487
  }
2427
- }), xa = /* @__PURE__ */ me(Fa, [["__scopeId", "data-v-c2ff95ff"]]), Oa = { class: "fields-group-title" }, $a = { class: "fields-group-text" }, Pa = { class: "fields-group-title" }, Aa = { class: "fields-group-text" }, Ma = /* @__PURE__ */ ne({
2488
+ }), $a = /* @__PURE__ */ me(Oa, [["__scopeId", "data-v-c2ff95ff"]]), Pa = { class: "fields-group-title" }, Aa = { class: "fields-group-text" }, Ma = { class: "fields-group-title" }, Ka = { class: "fields-group-text" }, Ea = /* @__PURE__ */ ne({
2428
2489
  __name: "UpstreamsFormActiveHealthCheck",
2429
2490
  props: {
2430
2491
  config: {
@@ -2498,8 +2559,8 @@ const pe = {
2498
2559
  }
2499
2560
  },
2500
2561
  emits: ["update:type", "update:http-path", "update:timeout", "update:concurrency", "update:https-sni", "update:verify-ssl", "update:headers", "update:healthy-interval", "update:healthy-successes", "update:healthy-http-statuses", "update:unhealthy-interval", "update:unhealthy-http-failures", "update:unhealthy-tcp-failures", "update:unhealthy-http-statuses", "update:unhealthy-timeouts"],
2501
- setup(a, { emit: R }) {
2502
- const { i18n: { t: i } } = pe.useI18n(), { objectsAreEqual: l } = Me(), n = a, v = R, f = E([
2562
+ setup(a, { emit: L }) {
2563
+ const { i18n: { t: i } } = pe.useI18n(), { objectsAreEqual: l } = Ke(), r = a, v = L, f = B([
2503
2564
  {
2504
2565
  label: i("upstreams.form.healthcheck_type_labels.http"),
2505
2566
  value: "http",
@@ -2525,17 +2586,17 @@ const pe = {
2525
2586
  value: "grpcs",
2526
2587
  selected: !1
2527
2588
  }
2528
- ]), D = I(() => n.type === "https" || n.type === "grpcs"), x = I(() => n.type === "tcp"), {
2589
+ ]), j = U(() => r.type === "https" || r.type === "grpcs"), O = U(() => r.type === "tcp"), {
2529
2590
  trackNewItems: s
2530
2591
  } = Se({ replaceId: !0 }), {
2531
2592
  trackNewItems: d
2532
2593
  } = Se({ replaceId: !0 });
2533
- de(() => n.type, (q, p) => {
2534
- p === "tcp" && q !== p && v("update:unhealthy-tcp-failures", "5"), (p === "https" || p === "grpcs") && q !== p && (v("update:https-sni", ""), v("update:verify-ssl", !1)), p !== "tcp" && q === "tcp" && (v("update:http-path", "/"), v("update:healthy-http-statuses", xe), v("update:unhealthy-http-statuses", $e));
2594
+ de(() => r.type, (w, p) => {
2595
+ p === "tcp" && w !== p && v("update:unhealthy-tcp-failures", "5"), (p === "https" || p === "grpcs") && w !== p && (v("update:https-sni", ""), v("update:verify-ssl", !1)), p !== "tcp" && w === "tcp" && (v("update:http-path", "/"), v("update:healthy-http-statuses", Oe), v("update:unhealthy-http-statuses", Pe));
2535
2596
  });
2536
- const C = E([{ key: "", values: "" }]);
2537
- de(() => n.headers, (q) => {
2538
- l(C.value, q) || (C.value = [...q]);
2597
+ const C = B([{ key: "", values: "" }]);
2598
+ de(() => r.headers, (w) => {
2599
+ l(C.value, w) || (C.value = [...w]);
2539
2600
  }, {
2540
2601
  immediate: !0,
2541
2602
  deep: !0
@@ -2544,31 +2605,31 @@ const pe = {
2544
2605
  v("update:headers", C.value);
2545
2606
  }, t = () => {
2546
2607
  C.value.push({ key: "", values: "" }), m();
2547
- }, V = (q) => {
2548
- q === 0 && C.value.length === 1 ? C.value[0] = { key: "", values: "" } : C.value.splice(q, 1), m();
2608
+ }, M = (w) => {
2609
+ w === 0 && C.value.length === 1 ? C.value[0] = { key: "", values: "" } : C.value.splice(w, 1), m();
2549
2610
  };
2550
- return (q, p) => {
2551
- const H = K("KExternalLink"), G = K("KSelect"), A = K("KInput"), X = K("KCheckbox"), W = K("KLabel"), _ = K("KButton"), T = K("KMultiselect"), $ = K("KCard");
2552
- return F(), N(e(He), {
2611
+ return (w, p) => {
2612
+ const S = $("KExternalLink"), Y = $("KSelect"), K = $("KInput"), W = $("KCheckbox"), J = $("KLabel"), z = $("KButton"), _ = $("KMultiselect"), T = $("KCard");
2613
+ return F(), E(e(He), {
2553
2614
  class: "kong-ui-entities-upstreams-active-healthcheck",
2554
2615
  title: e(i)("upstreams.form.active_health_check.title")
2555
2616
  }, {
2556
- description: r(() => [
2617
+ description: n(() => [
2557
2618
  b("p", null, [
2558
- J(y(e(i)("upstreams.form.active_health_check.help")) + " ", 1),
2559
- h(H, {
2619
+ Q(y(e(i)("upstreams.form.active_health_check.help")) + " ", 1),
2620
+ h(S, {
2560
2621
  "hide-icon": "",
2561
- href: e(Ke).upstreamObject
2622
+ href: e(Ee).upstreamObject
2562
2623
  }, {
2563
- default: r(() => [
2564
- J(y(e(i)("upstreams.form.buttons.view_documentation")), 1)
2624
+ default: n(() => [
2625
+ Q(y(e(i)("upstreams.form.buttons.view_documentation")), 1)
2565
2626
  ]),
2566
2627
  _: 1
2567
2628
  }, 8, ["href"])
2568
2629
  ])
2569
2630
  ]),
2570
- default: r(() => [
2571
- h(G, {
2631
+ default: n(() => [
2632
+ h(Y, {
2572
2633
  class: "active-healthcheck-type-select",
2573
2634
  items: f.value,
2574
2635
  label: e(i)("upstreams.form.fields.active_healthcheck_type.label"),
@@ -2577,7 +2638,7 @@ const pe = {
2577
2638
  width: "100%",
2578
2639
  "onUpdate:modelValue": p[0] || (p[0] = (g) => v("update:type", g))
2579
2640
  }, null, 8, ["items", "label", "model-value", "readonly"]),
2580
- x.value ? B("", !0) : (F(), N(A, {
2641
+ O.value ? D("", !0) : (F(), E(K, {
2581
2642
  key: 0,
2582
2643
  autocomplete: "off",
2583
2644
  "data-testid": "active-healthcheck-http-path",
@@ -2587,7 +2648,7 @@ const pe = {
2587
2648
  type: "text",
2588
2649
  "onUpdate:modelValue": p[1] || (p[1] = (g) => v("update:http-path", g))
2589
2650
  }, null, 8, ["label", "model-value", "readonly"])),
2590
- h(A, {
2651
+ h(K, {
2591
2652
  autocomplete: "off",
2592
2653
  "data-testid": "active-healthcheck-timeout",
2593
2654
  label: e(i)("upstreams.form.fields.timeout.label"),
@@ -2598,7 +2659,7 @@ const pe = {
2598
2659
  type: "number",
2599
2660
  "onUpdate:modelValue": p[2] || (p[2] = (g) => v("update:timeout", g))
2600
2661
  }, null, 8, ["label", "max", "min", "model-value", "readonly"]),
2601
- h(A, {
2662
+ h(K, {
2602
2663
  autocomplete: "off",
2603
2664
  "data-testid": "active-healthcheck-concurrency",
2604
2665
  label: e(i)("upstreams.form.fields.concurrency.label"),
@@ -2609,8 +2670,8 @@ const pe = {
2609
2670
  type: "number",
2610
2671
  "onUpdate:modelValue": p[3] || (p[3] = (g) => v("update:concurrency", g))
2611
2672
  }, null, 8, ["label", "max", "min", "model-value", "readonly"]),
2612
- D.value ? (F(), re(Ce, { key: 1 }, [
2613
- h(A, {
2673
+ j.value ? (F(), ie(Ce, { key: 1 }, [
2674
+ h(K, {
2614
2675
  autocomplete: "off",
2615
2676
  class: "margin-bottom-6",
2616
2677
  "data-testid": "active-healthcheck-https-sni",
@@ -2620,64 +2681,64 @@ const pe = {
2620
2681
  type: "text",
2621
2682
  "onUpdate:modelValue": p[4] || (p[4] = (g) => v("update:https-sni", g))
2622
2683
  }, null, 8, ["label", "model-value", "readonly"]),
2623
- h(X, {
2684
+ h(W, {
2624
2685
  "data-testid": "active-healthcheck-verify-ssl",
2625
2686
  disabled: a.readonly,
2626
2687
  label: e(i)("upstreams.form.fields.verify_ssl.label"),
2627
2688
  "model-value": a.verifySsl,
2628
2689
  "onUpdate:modelValue": p[5] || (p[5] = (g) => v("update:verify-ssl", g))
2629
2690
  }, null, 8, ["disabled", "label", "model-value"])
2630
- ], 64)) : B("", !0),
2691
+ ], 64)) : D("", !0),
2631
2692
  b("div", null, [
2632
- h(W, {
2693
+ h(J, {
2633
2694
  info: e(i)("upstreams.form.fields.headers.tooltip_active"),
2634
2695
  "tooltip-attributes": { maxWidth: "250px" }
2635
2696
  }, {
2636
- default: r(() => [
2637
- J(y(e(i)("upstreams.form.fields.headers.label")), 1)
2697
+ default: n(() => [
2698
+ Q(y(e(i)("upstreams.form.fields.headers.label")), 1)
2638
2699
  ]),
2639
2700
  _: 1
2640
2701
  }, 8, ["info"]),
2641
2702
  b("div", null, [
2642
- (F(!0), re(Ce, null, Ot(C.value, (g, O) => (F(), re("div", {
2643
- key: `${g.header}_${O}`,
2644
- class: $t(["headers-row", { "margin-top-6": O > 0 }])
2703
+ (F(!0), ie(Ce, null, Ot(C.value, (g, q) => (F(), ie("div", {
2704
+ key: `${g.header}_${q}`,
2705
+ class: $t(["headers-row", { "margin-top-6": q > 0 }])
2645
2706
  }, [
2646
- h(A, {
2647
- modelValue: C.value[O].key,
2648
- "onUpdate:modelValue": (Q) => C.value[O].key = Q,
2707
+ h(K, {
2708
+ modelValue: C.value[q].key,
2709
+ "onUpdate:modelValue": (N) => C.value[q].key = N,
2649
2710
  autocomplete: "off",
2650
- "data-testid": `active-healthcheck-headers-header-${O + 1}`,
2711
+ "data-testid": `active-healthcheck-headers-header-${q + 1}`,
2651
2712
  readonly: a.readonly,
2652
2713
  type: "text",
2653
2714
  onBlur: m
2654
2715
  }, null, 8, ["modelValue", "onUpdate:modelValue", "data-testid", "readonly"]),
2655
- h(A, {
2656
- modelValue: C.value[O].values,
2657
- "onUpdate:modelValue": (Q) => C.value[O].values = Q,
2716
+ h(K, {
2717
+ modelValue: C.value[q].values,
2718
+ "onUpdate:modelValue": (N) => C.value[q].values = N,
2658
2719
  autocomplete: "off",
2659
- "data-testid": `active-healthcheck-headers-value-${O + 1}`,
2720
+ "data-testid": `active-healthcheck-headers-value-${q + 1}`,
2660
2721
  readonly: a.readonly,
2661
2722
  type: "text",
2662
2723
  onBlur: m
2663
2724
  }, null, 8, ["modelValue", "onUpdate:modelValue", "data-testid", "readonly"]),
2664
- h(_, {
2725
+ h(z, {
2665
2726
  appearance: "tertiary",
2666
2727
  class: "btn-remove",
2667
2728
  "data-testid": "btn-remove-header",
2668
2729
  disabled: C.value.length === 1,
2669
2730
  icon: "",
2670
- onClick: (Q) => V(O)
2731
+ onClick: (N) => M(q)
2671
2732
  }, {
2672
- default: r(() => [
2673
- h(e(Bt), {
2733
+ default: n(() => [
2734
+ h(e(Rt), {
2674
2735
  class: "delete-item",
2675
- color: C.value.length > 1 ? e(ta) : void 0
2736
+ color: C.value.length > 1 ? e(aa) : void 0
2676
2737
  }, null, 8, ["color"])
2677
2738
  ]),
2678
2739
  _: 2
2679
2740
  }, 1032, ["disabled", "onClick"]),
2680
- C.value && O === C.value.length - 1 ? (F(), N(_, {
2741
+ C.value && q === C.value.length - 1 ? (F(), E(z, {
2681
2742
  key: 0,
2682
2743
  appearance: "tertiary",
2683
2744
  class: "btn-add-header",
@@ -2685,19 +2746,19 @@ const pe = {
2685
2746
  icon: "",
2686
2747
  onClick: t
2687
2748
  }, {
2688
- default: r(() => [
2689
- h(e(je))
2749
+ default: n(() => [
2750
+ h(e(Le))
2690
2751
  ]),
2691
2752
  _: 1
2692
- })) : B("", !0)
2753
+ })) : D("", !0)
2693
2754
  ], 2))), 128))
2694
2755
  ])
2695
2756
  ]),
2696
- h($, null, {
2697
- default: r(() => [
2698
- b("h5", Oa, y(e(i)("upstreams.form.healthy.label")), 1),
2699
- b("p", $a, y(e(i)("upstreams.form.healthy.help")), 1),
2700
- h(A, {
2757
+ h(T, null, {
2758
+ default: n(() => [
2759
+ b("h5", Pa, y(e(i)("upstreams.form.healthy.label")), 1),
2760
+ b("p", Aa, y(e(i)("upstreams.form.healthy.help")), 1),
2761
+ h(K, {
2701
2762
  autocomplete: "off",
2702
2763
  class: "margin-bottom-6",
2703
2764
  "data-testid": "active-healthcheck-healthy-interval",
@@ -2710,7 +2771,7 @@ const pe = {
2710
2771
  type: "number",
2711
2772
  "onUpdate:modelValue": p[6] || (p[6] = (g) => v("update:healthy-interval", g))
2712
2773
  }, null, 8, ["help", "label", "max", "min", "model-value", "readonly"]),
2713
- h(A, {
2774
+ h(K, {
2714
2775
  autocomplete: "off",
2715
2776
  "data-testid": "active-healthcheck-healthy-successes",
2716
2777
  label: e(i)("upstreams.form.fields.successes.label"),
@@ -2721,13 +2782,13 @@ const pe = {
2721
2782
  type: "number",
2722
2783
  "onUpdate:modelValue": p[7] || (p[7] = (g) => v("update:healthy-successes", g))
2723
2784
  }, null, 8, ["label", "max", "min", "model-value", "readonly"]),
2724
- x.value ? B("", !0) : (F(), N(T, {
2785
+ O.value ? D("", !0) : (F(), E(_, {
2725
2786
  key: 0,
2726
2787
  autocomplete: "off",
2727
2788
  class: "margin-top-6 active-healthcheck-healthy-http-statuses",
2728
2789
  "data-testid": "active-healthcheck-healthy-http-statuses",
2729
2790
  "enable-item-creation": "",
2730
- items: e(Fe),
2791
+ items: e(xe),
2731
2792
  label: e(i)("upstreams.form.fields.http_statuses.label"),
2732
2793
  "model-value": a.healthyHttpStatuses,
2733
2794
  readonly: a.readonly,
@@ -2739,11 +2800,11 @@ const pe = {
2739
2800
  ]),
2740
2801
  _: 1
2741
2802
  }),
2742
- h($, null, {
2743
- default: r(() => [
2744
- b("h5", Pa, y(e(i)("upstreams.form.unhealthy.label")), 1),
2745
- b("p", Aa, y(e(i)("upstreams.form.unhealthy.help")), 1),
2746
- h(A, {
2803
+ h(T, null, {
2804
+ default: n(() => [
2805
+ b("h5", Ma, y(e(i)("upstreams.form.unhealthy.label")), 1),
2806
+ b("p", Ka, y(e(i)("upstreams.form.unhealthy.help")), 1),
2807
+ h(K, {
2747
2808
  autocomplete: "off",
2748
2809
  class: "margin-bottom-6",
2749
2810
  "data-testid": "active-healthcheck-unhealthy-interval",
@@ -2756,7 +2817,7 @@ const pe = {
2756
2817
  type: "number",
2757
2818
  "onUpdate:modelValue": p[11] || (p[11] = (g) => v("update:unhealthy-interval", g))
2758
2819
  }, null, 8, ["help", "label", "max", "min", "model-value", "readonly"]),
2759
- h(A, {
2820
+ h(K, {
2760
2821
  autocomplete: "off",
2761
2822
  class: "margin-bottom-6",
2762
2823
  "data-testid": "active-healthcheck-unhealthy-tcp-failures",
@@ -2768,7 +2829,7 @@ const pe = {
2768
2829
  type: "number",
2769
2830
  "onUpdate:modelValue": p[12] || (p[12] = (g) => v("update:unhealthy-tcp-failures", g))
2770
2831
  }, null, 8, ["label", "max", "min", "model-value", "readonly"]),
2771
- x.value ? B("", !0) : (F(), N(A, {
2832
+ O.value ? D("", !0) : (F(), E(K, {
2772
2833
  key: 0,
2773
2834
  autocomplete: "off",
2774
2835
  class: "margin-bottom-6",
@@ -2781,13 +2842,13 @@ const pe = {
2781
2842
  type: "number",
2782
2843
  "onUpdate:modelValue": p[13] || (p[13] = (g) => v("update:unhealthy-http-failures", g))
2783
2844
  }, null, 8, ["label", "max", "min", "model-value", "readonly"])),
2784
- x.value ? B("", !0) : (F(), N(T, {
2845
+ O.value ? D("", !0) : (F(), E(_, {
2785
2846
  key: 1,
2786
2847
  autocomplete: "off",
2787
2848
  class: "margin-bottom-6 active-healthcheck-unhealthy-http-statuses",
2788
2849
  "data-testid": "active-healthcheck-unhealthy-http-statuses",
2789
2850
  "enable-item-creation": "",
2790
- items: e(Fe),
2851
+ items: e(xe),
2791
2852
  label: e(i)("upstreams.form.fields.http_statuses.label"),
2792
2853
  "model-value": a.unhealthyHttpStatuses,
2793
2854
  readonly: a.readonly,
@@ -2796,7 +2857,7 @@ const pe = {
2796
2857
  onItemRemoved: p[15] || (p[15] = (g) => e(d)(g, !1)),
2797
2858
  "onUpdate:modelValue": p[16] || (p[16] = (g) => v("update:unhealthy-http-statuses", g))
2798
2859
  }, null, 8, ["items", "label", "model-value", "readonly"])),
2799
- h(A, {
2860
+ h(K, {
2800
2861
  autocomplete: "off",
2801
2862
  "data-testid": "active-healthcheck-unhealthy-timeouts",
2802
2863
  label: e(i)("upstreams.form.fields.timeouts.label"),
@@ -2815,7 +2876,7 @@ const pe = {
2815
2876
  }, 8, ["title"]);
2816
2877
  };
2817
2878
  }
2818
- }), Ka = /* @__PURE__ */ me(Ma, [["__scopeId", "data-v-cfc70316"]]), Va = { class: "fields-group-title" }, Na = { class: "fields-group-text" }, Ea = { class: "fields-group-title" }, Ra = { class: "fields-group-text" }, Ba = /* @__PURE__ */ ne({
2879
+ }), Va = /* @__PURE__ */ me(Ea, [["__scopeId", "data-v-cfc70316"]]), Na = { class: "fields-group-title" }, Ba = { class: "fields-group-text" }, Ra = { class: "fields-group-title" }, Da = { class: "fields-group-text" }, La = /* @__PURE__ */ ne({
2819
2880
  __name: "UpstreamsFormPassiveHealthCheck",
2820
2881
  props: {
2821
2882
  type: {
@@ -2853,8 +2914,8 @@ const pe = {
2853
2914
  }
2854
2915
  },
2855
2916
  emits: ["update:type", "update:healthy-successes", "update:healthy-http-statuses", "update:unhealthy-timeouts", "update:unhealthy-http-failures", "update:unhealthy-http-statuses", "update:unhealthy-tcp-failures"],
2856
- setup(a, { emit: R }) {
2857
- const { i18n: { t: i } } = pe.useI18n(), l = a, n = R, v = E([
2917
+ setup(a, { emit: L }) {
2918
+ const { i18n: { t: i } } = pe.useI18n(), l = a, r = L, v = B([
2858
2919
  {
2859
2920
  label: i("upstreams.form.healthcheck_type_labels.http"),
2860
2921
  value: "http",
@@ -2880,34 +2941,34 @@ const pe = {
2880
2941
  value: "grpcs",
2881
2942
  selected: !1
2882
2943
  }
2883
- ]), f = I(() => l.type === "tcp"), {
2884
- trackNewItems: D
2944
+ ]), f = U(() => l.type === "tcp"), {
2945
+ trackNewItems: j
2885
2946
  } = Se({ replaceId: !0 }), {
2886
- trackNewItems: x
2947
+ trackNewItems: O
2887
2948
  } = Se({ replaceId: !0 });
2888
2949
  return de(() => l.type, (s, d) => {
2889
- d === "tcp" && s !== d && n("update:unhealthy-tcp-failures", "5"), d !== "tcp" && s === "tcp" && (n("update:healthy-http-statuses", Oe), n("update:unhealthy-http-statuses", Pe));
2950
+ d === "tcp" && s !== d && r("update:unhealthy-tcp-failures", "5"), d !== "tcp" && s === "tcp" && (r("update:healthy-http-statuses", $e), r("update:unhealthy-http-statuses", Ae));
2890
2951
  }), (s, d) => {
2891
- const C = K("KExternalLink"), m = K("KSelect"), t = K("KInput"), V = K("KMultiselect"), q = K("KCard");
2892
- return F(), N(e(He), {
2952
+ const C = $("KExternalLink"), m = $("KSelect"), t = $("KInput"), M = $("KMultiselect"), w = $("KCard");
2953
+ return F(), E(e(He), {
2893
2954
  class: "kong-ui-entities-upstreams-passive-healthcheck",
2894
2955
  title: e(i)("upstreams.form.passive_health_check.title")
2895
2956
  }, {
2896
- description: r(() => [
2957
+ description: n(() => [
2897
2958
  b("p", null, [
2898
- J(y(e(i)("upstreams.form.passive_health_check.help")) + " ", 1),
2959
+ Q(y(e(i)("upstreams.form.passive_health_check.help")) + " ", 1),
2899
2960
  h(C, {
2900
2961
  "hide-icon": "",
2901
- href: e(Ke).upstreamObject
2962
+ href: e(Ee).upstreamObject
2902
2963
  }, {
2903
- default: r(() => [
2904
- J(y(e(i)("upstreams.form.buttons.view_documentation")), 1)
2964
+ default: n(() => [
2965
+ Q(y(e(i)("upstreams.form.buttons.view_documentation")), 1)
2905
2966
  ]),
2906
2967
  _: 1
2907
2968
  }, 8, ["href"])
2908
2969
  ])
2909
2970
  ]),
2910
- default: r(() => [
2971
+ default: n(() => [
2911
2972
  h(m, {
2912
2973
  class: "passive-healthcheck-type-select",
2913
2974
  items: v.value,
@@ -2915,12 +2976,12 @@ const pe = {
2915
2976
  "model-value": a.type,
2916
2977
  readonly: a.readonly,
2917
2978
  width: "100%",
2918
- "onUpdate:modelValue": d[0] || (d[0] = (p) => n("update:type", p))
2979
+ "onUpdate:modelValue": d[0] || (d[0] = (p) => r("update:type", p))
2919
2980
  }, null, 8, ["items", "label", "model-value", "readonly"]),
2920
- h(q, null, {
2921
- default: r(() => [
2922
- b("h5", Va, y(e(i)("upstreams.form.passive_healthy.label")), 1),
2923
- b("p", Na, y(e(i)("upstreams.form.passive_healthy.help")), 1),
2981
+ h(w, null, {
2982
+ default: n(() => [
2983
+ b("h5", Na, y(e(i)("upstreams.form.passive_healthy.label")), 1),
2984
+ b("p", Ba, y(e(i)("upstreams.form.passive_healthy.help")), 1),
2924
2985
  h(t, {
2925
2986
  autocomplete: "off",
2926
2987
  "data-testid": "passive-healthcheck-healthy-successes",
@@ -2930,28 +2991,28 @@ const pe = {
2930
2991
  "model-value": a.healthySuccesses,
2931
2992
  readonly: a.readonly,
2932
2993
  type: "number",
2933
- "onUpdate:modelValue": d[1] || (d[1] = (p) => n("update:healthy-successes", p))
2994
+ "onUpdate:modelValue": d[1] || (d[1] = (p) => r("update:healthy-successes", p))
2934
2995
  }, null, 8, ["label", "max", "min", "model-value", "readonly"]),
2935
- f.value ? B("", !0) : (F(), N(V, {
2996
+ f.value ? D("", !0) : (F(), E(M, {
2936
2997
  key: 0,
2937
2998
  class: "margin-top-6 passive-healthcheck-healthy-http-statuses",
2938
2999
  "enable-item-creation": "",
2939
- items: e(Fe),
3000
+ items: e(xe),
2940
3001
  label: e(i)("upstreams.form.fields.http_statuses.label"),
2941
3002
  "model-value": a.healthyHttpStatuses,
2942
3003
  readonly: a.readonly,
2943
3004
  width: "100%",
2944
- onItemAdded: d[2] || (d[2] = (p) => e(D)(p, !0)),
2945
- onItemRemoved: d[3] || (d[3] = (p) => e(D)(p, !1)),
2946
- "onUpdate:modelValue": d[4] || (d[4] = (p) => n("update:healthy-http-statuses", p))
3005
+ onItemAdded: d[2] || (d[2] = (p) => e(j)(p, !0)),
3006
+ onItemRemoved: d[3] || (d[3] = (p) => e(j)(p, !1)),
3007
+ "onUpdate:modelValue": d[4] || (d[4] = (p) => r("update:healthy-http-statuses", p))
2947
3008
  }, null, 8, ["items", "label", "model-value", "readonly"]))
2948
3009
  ]),
2949
3010
  _: 1
2950
3011
  }),
2951
- h(q, null, {
2952
- default: r(() => [
2953
- b("h5", Ea, y(e(i)("upstreams.form.passive_unhealthy.label")), 1),
2954
- b("p", Ra, y(e(i)("upstreams.form.passive_unhealthy.help")), 1),
3012
+ h(w, null, {
3013
+ default: n(() => [
3014
+ b("h5", Ra, y(e(i)("upstreams.form.passive_unhealthy.label")), 1),
3015
+ b("p", Da, y(e(i)("upstreams.form.passive_unhealthy.help")), 1),
2955
3016
  h(t, {
2956
3017
  autocomplete: "off",
2957
3018
  "data-testid": "passive-healthcheck-unhealthy-timeouts",
@@ -2961,7 +3022,7 @@ const pe = {
2961
3022
  "model-value": a.unhealthyTimeouts,
2962
3023
  readonly: a.readonly,
2963
3024
  type: "number",
2964
- "onUpdate:modelValue": d[5] || (d[5] = (p) => n("update:unhealthy-timeouts", p))
3025
+ "onUpdate:modelValue": d[5] || (d[5] = (p) => r("update:unhealthy-timeouts", p))
2965
3026
  }, null, 8, ["label", "max", "min", "model-value", "readonly"]),
2966
3027
  h(t, {
2967
3028
  autocomplete: "off",
@@ -2973,9 +3034,9 @@ const pe = {
2973
3034
  "model-value": a.unhealthyTcpFailures,
2974
3035
  readonly: a.readonly,
2975
3036
  type: "number",
2976
- "onUpdate:modelValue": d[6] || (d[6] = (p) => n("update:unhealthy-tcp-failures", p))
3037
+ "onUpdate:modelValue": d[6] || (d[6] = (p) => r("update:unhealthy-tcp-failures", p))
2977
3038
  }, null, 8, ["label", "max", "min", "model-value", "readonly"]),
2978
- f.value ? B("", !0) : (F(), N(t, {
3039
+ f.value ? D("", !0) : (F(), E(t, {
2979
3040
  key: 0,
2980
3041
  autocomplete: "off",
2981
3042
  class: "margin-top-6",
@@ -2986,22 +3047,22 @@ const pe = {
2986
3047
  "model-value": a.unhealthyHttpFailures,
2987
3048
  readonly: a.readonly,
2988
3049
  type: "number",
2989
- "onUpdate:modelValue": d[7] || (d[7] = (p) => n("update:unhealthy-http-failures", p))
3050
+ "onUpdate:modelValue": d[7] || (d[7] = (p) => r("update:unhealthy-http-failures", p))
2990
3051
  }, null, 8, ["label", "max", "min", "model-value", "readonly"])),
2991
- f.value ? B("", !0) : (F(), N(V, {
3052
+ f.value ? D("", !0) : (F(), E(M, {
2992
3053
  key: 1,
2993
3054
  autocomplete: "off",
2994
3055
  class: "margin-top-6 passive-healthcheck-unhealthy-http-statuses",
2995
3056
  "data-testid": "passive-healthcheck-unhealthy-http-statuses",
2996
3057
  "enable-item-creation": "",
2997
- items: e(Fe),
3058
+ items: e(xe),
2998
3059
  label: e(i)("upstreams.form.fields.http_statuses.label"),
2999
3060
  "model-value": a.unhealthyHttpStatuses,
3000
3061
  readonly: a.readonly,
3001
3062
  width: "100%",
3002
- onItemAdded: d[8] || (d[8] = (p) => e(x)(p, !0)),
3003
- onItemRemoved: d[9] || (d[9] = (p) => e(x)(p, !1)),
3004
- "onUpdate:modelValue": d[10] || (d[10] = (p) => n("update:unhealthy-http-statuses", p))
3063
+ onItemAdded: d[8] || (d[8] = (p) => e(O)(p, !0)),
3064
+ onItemRemoved: d[9] || (d[9] = (p) => e(O)(p, !1)),
3065
+ "onUpdate:modelValue": d[10] || (d[10] = (p) => r("update:unhealthy-http-statuses", p))
3005
3066
  }, null, 8, ["items", "label", "model-value", "readonly"]))
3006
3067
  ]),
3007
3068
  _: 1
@@ -3011,7 +3072,7 @@ const pe = {
3011
3072
  }, 8, ["title"]);
3012
3073
  };
3013
3074
  }
3014
- }), Da = /* @__PURE__ */ me(Ba, [["__scopeId", "data-v-7c20c5c5"]]), ja = { class: "kong-ui-entities-upstreams-form" }, La = /* @__PURE__ */ ne({
3075
+ }), ja = /* @__PURE__ */ me(La, [["__scopeId", "data-v-7c20c5c5"]]), Qa = { class: "kong-ui-entities-upstreams-form" }, Wa = /* @__PURE__ */ ne({
3015
3076
  __name: "UpstreamsForm",
3016
3077
  props: {
3017
3078
  /** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
@@ -3028,41 +3089,41 @@ const pe = {
3028
3089
  }
3029
3090
  },
3030
3091
  emits: ["update", "error", "loading"],
3031
- setup(a, { emit: R }) {
3032
- var L;
3033
- const i = a, l = R, { inRange: n, stringToNumberArray: v, upstreamsResponseToFields: f, getDefaultUpstreamFields: D, objectsAreEqual: x, cloneDeep: s } = Me(), { axiosInstance: d } = Ae((L = i.config) == null ? void 0 : L.axiosRequestConfig), { getMessageFromError: C } = It(), m = qt(), t = Te({
3034
- fields: D(),
3092
+ setup(a, { emit: L }) {
3093
+ var re;
3094
+ const i = a, l = L, { inRange: r, stringToNumberArray: v, upstreamsResponseToFields: f, getDefaultUpstreamFields: j, objectsAreEqual: O, cloneDeep: s } = Ke(), { axiosInstance: d } = Me((re = i.config) == null ? void 0 : re.axiosRequestConfig), { getMessageFromError: C } = It(), m = wt(), t = Fe({
3095
+ fields: j(),
3035
3096
  readonly: !1,
3036
3097
  errorMessage: ""
3037
- }), V = Te(D()), q = I(() => !x(t.fields, V)), p = (c) => {
3038
- t.fields.activeHealthCheck.healthy.interval = c ? "5" : "0", t.fields.activeHealthCheck.healthy.successes = c ? "5" : "0", t.fields.activeHealthCheck.healthy.httpStatuses = c ? xe : [], t.fields.activeHealthCheck.unhealthy.httpStatuses = c ? $e : [], t.fields.activeHealthCheck.unhealthy.httpFailures = c ? "5" : "0", t.fields.activeHealthCheck.unhealthy.interval = c ? "5" : "0", t.fields.activeHealthCheck.unhealthy.tcpFailures = c ? "5" : "0", t.fields.activeHealthCheck.unhealthy.timeouts = c ? "5" : "0", t.fields.activeHealthCheck.timeout = c ? "1" : "0", t.fields.activeHealthCheck.concurrency = c ? "10" : "0", t.fields.activeHealthCheck.httpPath = c ? "/" : "", t.fields.activeHealthCheck.httpsSni = "", t.fields.activeHealthCheck.type = "http";
3039
- }, H = (c) => {
3040
- t.fields.passiveHealthCheck.healthy.successes = c ? "80" : "0", t.fields.passiveHealthCheck.healthy.httpStatuses = c ? Oe : [], t.fields.passiveHealthCheck.unhealthy.timeouts = c ? "5" : "0", t.fields.passiveHealthCheck.unhealthy.tcpFailures = c ? "5" : "0", t.fields.passiveHealthCheck.unhealthy.httpFailures = c ? "5" : "0", t.fields.passiveHealthCheck.unhealthy.httpStatuses = c ? Pe : [], t.fields.passiveHealthCheck.type = "http";
3041
- }, G = I(() => t.fields.algorithm !== "sticky-sessions" ? !0 : !!t.fields.stickySessionsCookie && !!t.fields.stickySessionsCookiePath), A = I(() => t.fields.slots ? n(t.fields.slots, Ee, Re) : !0), X = I(() => t.fields.hashOn === "header" ? !!t.fields.hashOnHeader : !0), W = I(() => t.fields.hashOn === "cookie" || t.fields.hashFallback === "cookie" ? !!t.fields.hashOnCookie : !0), _ = I(() => t.fields.hashOn === "cookie" || t.fields.hashFallback === "cookie" ? !!t.fields.hashOnCookiePath : !0), T = I(() => t.fields.hashOn === "query_arg" ? !!t.fields.hashOnQueryArgument : !0), $ = I(() => t.fields.hashOn === "uri_capture" ? !!t.fields.hashOnUriCapture : !0), g = I(() => t.fields.hashFallback === "header" ? !!t.fields.hashFallbackHeader : !0), O = I(() => t.fields.hashFallback === "query_arg" ? !!t.fields.hashFallbackQueryArgument : !0), Q = I(() => t.fields.hashFallback === "uri_capture" ? !!t.fields.hashFallbackUriCapture : !0), le = I(() => !!t.fields.name && G.value && A.value && X.value && W.value && _.value && T.value && $.value && g.value && O.value && Q.value), z = I(() => i.upstreamId ? ue.Edit : ue.Create), oe = I(() => {
3042
- var c, o;
3043
- return (o = _e.form[(c = i.config) == null ? void 0 : c.app]) == null ? void 0 : o.edit;
3044
- }), P = (c) => {
3045
- Object.assign(t.fields, f(c)), Object.assign(V, s(t.fields));
3046
- }, M = () => {
3047
- var c;
3048
- m.push(((c = i.config) == null ? void 0 : c.cancelRoute) || { name: "upstreams-list" });
3049
- }, Z = (c) => {
3050
- l("loading", c);
3051
- }, se = (c) => {
3052
- l("error", c);
3053
- }, te = I(() => {
3054
- const c = i.config.stickySessionsAvailable ? {
3098
+ }), M = Fe(j()), w = U(() => !O(t.fields, M)), p = (u) => {
3099
+ t.fields.activeHealthCheck.healthy.interval = u ? "5" : "0", t.fields.activeHealthCheck.healthy.successes = u ? "5" : "0", t.fields.activeHealthCheck.healthy.httpStatuses = u ? Oe : [], t.fields.activeHealthCheck.unhealthy.httpStatuses = u ? Pe : [], t.fields.activeHealthCheck.unhealthy.httpFailures = u ? "5" : "0", t.fields.activeHealthCheck.unhealthy.interval = u ? "5" : "0", t.fields.activeHealthCheck.unhealthy.tcpFailures = u ? "5" : "0", t.fields.activeHealthCheck.unhealthy.timeouts = u ? "5" : "0", t.fields.activeHealthCheck.timeout = u ? "1" : "0", t.fields.activeHealthCheck.concurrency = u ? "10" : "0", t.fields.activeHealthCheck.httpPath = u ? "/" : "", t.fields.activeHealthCheck.httpsSni = "", t.fields.activeHealthCheck.type = "http";
3100
+ }, S = (u) => {
3101
+ t.fields.passiveHealthCheck.healthy.successes = u ? "80" : "0", t.fields.passiveHealthCheck.healthy.httpStatuses = u ? $e : [], t.fields.passiveHealthCheck.unhealthy.timeouts = u ? "5" : "0", t.fields.passiveHealthCheck.unhealthy.tcpFailures = u ? "5" : "0", t.fields.passiveHealthCheck.unhealthy.httpFailures = u ? "5" : "0", t.fields.passiveHealthCheck.unhealthy.httpStatuses = u ? Ae : [], t.fields.passiveHealthCheck.type = "http";
3102
+ }, Y = U(() => t.fields.algorithm !== "sticky-sessions" ? !0 : !!t.fields.stickySessionsCookie && !!t.fields.stickySessionsCookiePath), K = U(() => t.fields.slots ? r(t.fields.slots, Ne, Be) : !0), W = U(() => t.fields.hashOn === "header" ? !!t.fields.hashOnHeader : !0), J = U(() => t.fields.hashOn === "cookie" || t.fields.hashFallback === "cookie" ? !!t.fields.hashOnCookie : !0), z = U(() => t.fields.hashOn === "cookie" || t.fields.hashFallback === "cookie" ? !!t.fields.hashOnCookiePath : !0), _ = U(() => t.fields.hashOn === "query_arg" ? !!t.fields.hashOnQueryArgument : !0), T = U(() => t.fields.hashOn === "uri_capture" ? !!t.fields.hashOnUriCapture : !0), g = U(() => t.fields.hashFallback === "header" ? !!t.fields.hashFallbackHeader : !0), q = U(() => t.fields.hashFallback === "query_arg" ? !!t.fields.hashFallbackQueryArgument : !0), N = U(() => t.fields.hashFallback === "uri_capture" ? !!t.fields.hashFallbackUriCapture : !0), R = U(() => !!t.fields.name && Y.value && K.value && W.value && J.value && z.value && _.value && T.value && g.value && q.value && N.value), G = U(() => i.upstreamId ? ue.Edit : ue.Create), oe = U(() => {
3103
+ var u, o;
3104
+ return (o = _e.form[(u = i.config) == null ? void 0 : u.app]) == null ? void 0 : o.edit;
3105
+ }), P = (u) => {
3106
+ Object.assign(t.fields, f(u)), Object.assign(M, s(t.fields));
3107
+ }, A = () => {
3108
+ var u;
3109
+ m.push(((u = i.config) == null ? void 0 : u.cancelRoute) || { name: "upstreams-list" });
3110
+ }, X = (u) => {
3111
+ l("loading", u);
3112
+ }, le = (u) => {
3113
+ l("error", u);
3114
+ }, te = U(() => {
3115
+ const u = i.config.stickySessionsAvailable ? {
3055
3116
  sticky_sessions_cookie: null,
3056
3117
  sticky_sessions_cookie_path: null
3057
3118
  } : {};
3058
- return t.fields.algorithm === "sticky-sessions" && (c.sticky_sessions_cookie = t.fields.stickySessionsCookie || null, c.sticky_sessions_cookie_path = t.fields.stickySessionsCookiePath || null), c;
3059
- }), Y = I(() => {
3060
- const c = {};
3061
- return t.fields.hashOn === "header" && (c.hash_on_header = t.fields.hashOnHeader), (t.fields.hashOn === "cookie" || t.fields.hashFallback === "cookie") && (c.hash_on_cookie = t.fields.hashOnCookie, c.hash_on_cookie_path = t.fields.hashOnCookiePath), t.fields.hashOn === "query_arg" && (c.hash_on_query_arg = t.fields.hashOnQueryArgument), t.fields.hashOn === "uri_capture" && (c.hash_on_uri_capture = t.fields.hashOnUriCapture), t.fields.hashFallback === "header" && (c.hash_fallback_header = t.fields.hashFallbackHeader), t.fields.hashFallback === "query_arg" && (c.hash_fallback_query_arg = t.fields.hashFallbackQueryArgument), t.fields.hashFallback === "uri_capture" && (c.hash_fallback_uri_capture = t.fields.hashFallbackUriCapture), c;
3062
- }), w = I(() => {
3063
- var o, u, ae;
3119
+ return t.fields.algorithm === "sticky-sessions" && (u.sticky_sessions_cookie = t.fields.stickySessionsCookie || null, u.sticky_sessions_cookie_path = t.fields.stickySessionsCookiePath || null), u;
3120
+ }), Z = U(() => {
3121
+ const u = {};
3122
+ return t.fields.hashOn === "header" && (u.hash_on_header = t.fields.hashOnHeader), (t.fields.hashOn === "cookie" || t.fields.hashFallback === "cookie") && (u.hash_on_cookie = t.fields.hashOnCookie, u.hash_on_cookie_path = t.fields.hashOnCookiePath), t.fields.hashOn === "query_arg" && (u.hash_on_query_arg = t.fields.hashOnQueryArgument), t.fields.hashOn === "uri_capture" && (u.hash_on_uri_capture = t.fields.hashOnUriCapture), t.fields.hashFallback === "header" && (u.hash_fallback_header = t.fields.hashFallbackHeader), t.fields.hashFallback === "query_arg" && (u.hash_fallback_query_arg = t.fields.hashFallbackQueryArgument), t.fields.hashFallback === "uri_capture" && (u.hash_fallback_uri_capture = t.fields.hashFallbackUriCapture), u;
3123
+ }), I = U(() => {
3124
+ var o, c, ae;
3064
3125
  if (!t.fields.activeHealthSwitch)
3065
- return ((o = i.config) == null ? void 0 : o.app) === "kongManager" && z.value === ue.Edit ? {
3126
+ return ((o = i.config) == null ? void 0 : o.app) === "kongManager" && G.value === ue.Edit ? {
3066
3127
  type: t.fields.activeHealthCheck.type,
3067
3128
  headers: {},
3068
3129
  healthy: {
@@ -3076,7 +3137,7 @@ const pe = {
3076
3137
  timeouts: 0
3077
3138
  }
3078
3139
  } : void 0;
3079
- const c = {
3140
+ const u = {
3080
3141
  type: t.fields.activeHealthCheck.type,
3081
3142
  healthy: {
3082
3143
  interval: Number(t.fields.activeHealthCheck.healthy.interval || "0"),
@@ -3091,23 +3152,23 @@ const pe = {
3091
3152
  concurrency: Number(t.fields.activeHealthCheck.concurrency || "10")
3092
3153
  };
3093
3154
  if (t.fields.activeHealthCheck.type !== "tcp") {
3094
- c.http_path = t.fields.activeHealthCheck.httpPath || "/", c.unhealthy.http_failures = Number(t.fields.activeHealthCheck.unhealthy.httpFailures || "5");
3095
- const ee = (u = t.fields.activeHealthCheck.unhealthy.httpStatuses) != null && u.length ? t.fields.activeHealthCheck.unhealthy.httpStatuses : $e;
3096
- c.unhealthy.http_statuses = v(ee);
3097
- const ie = (ae = t.fields.activeHealthCheck.healthy.httpStatuses) != null && ae.length ? t.fields.activeHealthCheck.healthy.httpStatuses : xe;
3098
- c.healthy.http_statuses = v(ie);
3155
+ u.http_path = t.fields.activeHealthCheck.httpPath || "/", u.unhealthy.http_failures = Number(t.fields.activeHealthCheck.unhealthy.httpFailures || "5");
3156
+ const ee = (c = t.fields.activeHealthCheck.unhealthy.httpStatuses) != null && c.length ? t.fields.activeHealthCheck.unhealthy.httpStatuses : Pe;
3157
+ u.unhealthy.http_statuses = v(ee);
3158
+ const se = (ae = t.fields.activeHealthCheck.healthy.httpStatuses) != null && ae.length ? t.fields.activeHealthCheck.healthy.httpStatuses : Oe;
3159
+ u.healthy.http_statuses = v(se);
3099
3160
  }
3100
- return ["https", "grpcs"].includes(t.fields.activeHealthCheck.type) && (c.https_sni = t.fields.activeHealthCheck.httpsSni || null, c.https_verify_certificate = t.fields.activeHealthCheck.verifySsl), c.headers = t.fields.activeHealthCheck.headers.reduce((ee, ie) => {
3161
+ return ["https", "grpcs"].includes(t.fields.activeHealthCheck.type) && (u.https_sni = t.fields.activeHealthCheck.httpsSni || null, u.https_verify_certificate = t.fields.activeHealthCheck.verifySsl), u.headers = t.fields.activeHealthCheck.headers.reduce((ee, se) => {
3101
3162
  var fe, ye;
3102
- return ie.key ? {
3163
+ return se.key ? {
3103
3164
  ...ee,
3104
- [ie.key]: (ye = (fe = ie.values.split(",")) == null ? void 0 : fe.map((Ue) => Ue.trim())) == null ? void 0 : ye.filter(Boolean)
3165
+ [se.key]: (ye = (fe = se.values.split(",")) == null ? void 0 : fe.map((Ue) => Ue.trim())) == null ? void 0 : ye.filter(Boolean)
3105
3166
  } : ee;
3106
- }, {}), c;
3107
- }), k = I(() => {
3108
- var o, u, ae;
3167
+ }, {}), u;
3168
+ }), k = U(() => {
3169
+ var o, c, ae;
3109
3170
  if (!t.fields.passiveHealthSwitch)
3110
- return ((o = i.config) == null ? void 0 : o.app) === "kongManager" && z.value === ue.Edit ? {
3171
+ return ((o = i.config) == null ? void 0 : o.app) === "kongManager" && G.value === ue.Edit ? {
3111
3172
  type: t.fields.passiveHealthCheck.type,
3112
3173
  healthy: { successes: 0 },
3113
3174
  unhealthy: {
@@ -3116,7 +3177,7 @@ const pe = {
3116
3177
  http_failures: 0
3117
3178
  }
3118
3179
  } : void 0;
3119
- const c = {
3180
+ const u = {
3120
3181
  type: t.fields.passiveHealthCheck.type,
3121
3182
  healthy: {
3122
3183
  successes: Number(t.fields.passiveHealthCheck.healthy.successes || "0")
@@ -3127,15 +3188,15 @@ const pe = {
3127
3188
  }
3128
3189
  };
3129
3190
  if (t.fields.passiveHealthCheck.type !== "tcp") {
3130
- c.unhealthy.http_failures = Number(t.fields.passiveHealthCheck.unhealthy.httpFailures || "5");
3131
- const ee = (u = t.fields.passiveHealthCheck.healthy.httpStatuses) != null && u.length ? t.fields.passiveHealthCheck.healthy.httpStatuses : Oe;
3132
- c.healthy.http_statuses = v(ee);
3133
- const ie = (ae = t.fields.passiveHealthCheck.unhealthy.httpStatuses) != null && ae.length ? t.fields.passiveHealthCheck.unhealthy.httpStatuses : Pe;
3134
- c.unhealthy.http_statuses = v(ie);
3191
+ u.unhealthy.http_failures = Number(t.fields.passiveHealthCheck.unhealthy.httpFailures || "5");
3192
+ const ee = (c = t.fields.passiveHealthCheck.healthy.httpStatuses) != null && c.length ? t.fields.passiveHealthCheck.healthy.httpStatuses : $e;
3193
+ u.healthy.http_statuses = v(ee);
3194
+ const se = (ae = t.fields.passiveHealthCheck.unhealthy.httpStatuses) != null && ae.length ? t.fields.passiveHealthCheck.unhealthy.httpStatuses : Ae;
3195
+ u.unhealthy.http_statuses = v(se);
3135
3196
  }
3136
- return c;
3137
- }), S = I(() => {
3138
- const c = {
3197
+ return u;
3198
+ }), H = U(() => {
3199
+ const u = {
3139
3200
  name: t.fields.name,
3140
3201
  slots: Number(t.fields.slots),
3141
3202
  algorithm: t.fields.algorithm,
@@ -3146,167 +3207,167 @@ const pe = {
3146
3207
  },
3147
3208
  host_header: t.fields.hostHeader || null,
3148
3209
  client_certificate: t.fields.clientCertificate ? { id: t.fields.clientCertificate } : null
3149
- }, o = w.value, u = k.value, ae = {
3150
- ...c,
3210
+ }, o = I.value, c = k.value, ae = {
3211
+ ...u,
3151
3212
  ...te.value,
3152
3213
  healthchecks: {
3153
- ...c.healthchecks,
3214
+ ...u.healthchecks,
3154
3215
  active: o || void 0,
3155
- passive: u || void 0
3216
+ passive: c || void 0
3156
3217
  }
3157
3218
  };
3158
- return ae.tags = t.fields.tags ? t.fields.tags.split(",").map((ee) => String(ee || "").trim()).filter((ee) => ee !== "") : [], Object.assign(ae, Y.value), ae;
3159
- }), U = (c) => {
3160
- var u, ae, ee, ie, fe, ye;
3161
- let o = `${(u = i.config) == null ? void 0 : u.apiBaseUrl}${_e.form[(ae = i.config) == null ? void 0 : ae.app][c]}`;
3162
- return ((ee = i.config) == null ? void 0 : ee.app) === "konnect" ? o = o.replace(/{controlPlaneId}/gi, ((ie = i.config) == null ? void 0 : ie.controlPlaneId) || "") : ((fe = i.config) == null ? void 0 : fe.app) === "kongManager" && (o = o.replace(/\/{workspace}/gi, (ye = i.config) != null && ye.workspace ? `/${i.config.workspace}` : "")), o = o.replace(/{id}/gi, i.upstreamId), o;
3163
- }, j = async () => {
3164
- var c;
3219
+ return ae.tags = t.fields.tags ? t.fields.tags.split(",").map((ee) => String(ee || "").trim()).filter((ee) => ee !== "") : [], Object.assign(ae, Z.value), ae;
3220
+ }), x = (u) => {
3221
+ var c, ae, ee, se, fe, ye;
3222
+ let o = `${(c = i.config) == null ? void 0 : c.apiBaseUrl}${_e.form[(ae = i.config) == null ? void 0 : ae.app][u]}`;
3223
+ return ((ee = i.config) == null ? void 0 : ee.app) === "konnect" ? o = o.replace(/{controlPlaneId}/gi, ((se = i.config) == null ? void 0 : se.controlPlaneId) || "") : ((fe = i.config) == null ? void 0 : fe.app) === "kongManager" && (o = o.replace(/\/{workspace}/gi, (ye = i.config) != null && ye.workspace ? `/${i.config.workspace}` : "")), o = o.replace(/{id}/gi, i.upstreamId), o;
3224
+ }, V = async () => {
3225
+ var u;
3165
3226
  try {
3166
- t.readonly = !0, await d.post(U("validate"), S.value);
3227
+ t.readonly = !0, await d.post(x("validate"), H.value);
3167
3228
  let o;
3168
- z.value === ue.Create ? o = await d.post(U("create"), S.value) : z.value === ue.Edit && (o = ((c = i.config) == null ? void 0 : c.app) === "konnect" ? await d.put(U("edit"), S.value) : await d.patch(U("edit"), S.value)), l("update", o == null ? void 0 : o.data);
3229
+ G.value === ue.Create ? o = await d.post(x("create"), H.value) : G.value === ue.Edit && (o = ((u = i.config) == null ? void 0 : u.app) === "konnect" ? await d.put(x("edit"), H.value) : await d.patch(x("edit"), H.value)), l("update", o == null ? void 0 : o.data);
3169
3230
  } catch (o) {
3170
3231
  t.errorMessage = C(o), l("error", o);
3171
3232
  } finally {
3172
3233
  t.readonly = !1;
3173
3234
  }
3174
3235
  };
3175
- return (c, o) => (F(), re("div", ja, [
3176
- h(e(wt), {
3177
- "can-submit": le.value && q.value,
3236
+ return (u, o) => (F(), ie("div", Qa, [
3237
+ h(e(qt), {
3238
+ "can-submit": R.value && w.value,
3178
3239
  config: a.config,
3179
3240
  "edit-id": a.upstreamId,
3180
3241
  "entity-type": e(De).Upstream,
3181
3242
  "error-message": t.errorMessage,
3182
3243
  "fetch-url": oe.value,
3183
- "form-fields": S.value,
3244
+ "form-fields": H.value,
3184
3245
  "is-readonly": t.readonly,
3185
- onCancel: M,
3186
- "onFetch:error": se,
3246
+ onCancel: A,
3247
+ "onFetch:error": le,
3187
3248
  "onFetch:success": P,
3188
- onLoading: Z,
3189
- onSubmit: j
3249
+ onLoading: X,
3250
+ onSubmit: V
3190
3251
  }, {
3191
- default: r(() => [
3192
- h(va, {
3252
+ default: n(() => [
3253
+ h(_a, {
3193
3254
  "client-certificate": t.fields.clientCertificate,
3194
- "onUpdate:clientCertificate": o[0] || (o[0] = (u) => t.fields.clientCertificate = u),
3255
+ "onUpdate:clientCertificate": o[0] || (o[0] = (c) => t.fields.clientCertificate = c),
3195
3256
  "host-header": t.fields.hostHeader,
3196
- "onUpdate:hostHeader": o[1] || (o[1] = (u) => t.fields.hostHeader = u),
3257
+ "onUpdate:hostHeader": o[1] || (o[1] = (c) => t.fields.hostHeader = c),
3197
3258
  name: t.fields.name,
3198
- "onUpdate:name": o[2] || (o[2] = (u) => t.fields.name = u),
3259
+ "onUpdate:name": o[2] || (o[2] = (c) => t.fields.name = c),
3199
3260
  tags: t.fields.tags,
3200
- "onUpdate:tags": o[3] || (o[3] = (u) => t.fields.tags = u),
3261
+ "onUpdate:tags": o[3] || (o[3] = (c) => t.fields.tags = c),
3201
3262
  config: a.config,
3202
3263
  readonly: t.readonly
3203
3264
  }, null, 8, ["client-certificate", "host-header", "name", "tags", "config", "readonly"]),
3204
- h(Ua, {
3265
+ h(qa, {
3205
3266
  algorithm: t.fields.algorithm,
3206
- "onUpdate:algorithm": o[4] || (o[4] = (u) => t.fields.algorithm = u),
3267
+ "onUpdate:algorithm": o[4] || (o[4] = (c) => t.fields.algorithm = c),
3207
3268
  "hash-fallback": t.fields.hashFallback,
3208
- "onUpdate:hashFallback": o[5] || (o[5] = (u) => t.fields.hashFallback = u),
3269
+ "onUpdate:hashFallback": o[5] || (o[5] = (c) => t.fields.hashFallback = c),
3209
3270
  "hash-fallback-header": t.fields.hashFallbackHeader,
3210
- "onUpdate:hashFallbackHeader": o[6] || (o[6] = (u) => t.fields.hashFallbackHeader = u),
3271
+ "onUpdate:hashFallbackHeader": o[6] || (o[6] = (c) => t.fields.hashFallbackHeader = c),
3211
3272
  "hash-fallback-query-argument": t.fields.hashFallbackQueryArgument,
3212
- "onUpdate:hashFallbackQueryArgument": o[7] || (o[7] = (u) => t.fields.hashFallbackQueryArgument = u),
3273
+ "onUpdate:hashFallbackQueryArgument": o[7] || (o[7] = (c) => t.fields.hashFallbackQueryArgument = c),
3213
3274
  "hash-fallback-uri-capture": t.fields.hashFallbackUriCapture,
3214
- "onUpdate:hashFallbackUriCapture": o[8] || (o[8] = (u) => t.fields.hashFallbackUriCapture = u),
3275
+ "onUpdate:hashFallbackUriCapture": o[8] || (o[8] = (c) => t.fields.hashFallbackUriCapture = c),
3215
3276
  "hash-on": t.fields.hashOn,
3216
- "onUpdate:hashOn": o[9] || (o[9] = (u) => t.fields.hashOn = u),
3277
+ "onUpdate:hashOn": o[9] || (o[9] = (c) => t.fields.hashOn = c),
3217
3278
  "hash-on-cookie": t.fields.hashOnCookie,
3218
- "onUpdate:hashOnCookie": o[10] || (o[10] = (u) => t.fields.hashOnCookie = u),
3279
+ "onUpdate:hashOnCookie": o[10] || (o[10] = (c) => t.fields.hashOnCookie = c),
3219
3280
  "hash-on-cookie-path": t.fields.hashOnCookiePath,
3220
- "onUpdate:hashOnCookiePath": o[11] || (o[11] = (u) => t.fields.hashOnCookiePath = u),
3281
+ "onUpdate:hashOnCookiePath": o[11] || (o[11] = (c) => t.fields.hashOnCookiePath = c),
3221
3282
  "hash-on-header": t.fields.hashOnHeader,
3222
- "onUpdate:hashOnHeader": o[12] || (o[12] = (u) => t.fields.hashOnHeader = u),
3283
+ "onUpdate:hashOnHeader": o[12] || (o[12] = (c) => t.fields.hashOnHeader = c),
3223
3284
  "hash-on-query-argument": t.fields.hashOnQueryArgument,
3224
- "onUpdate:hashOnQueryArgument": o[13] || (o[13] = (u) => t.fields.hashOnQueryArgument = u),
3285
+ "onUpdate:hashOnQueryArgument": o[13] || (o[13] = (c) => t.fields.hashOnQueryArgument = c),
3225
3286
  "hash-on-uri-capture": t.fields.hashOnUriCapture,
3226
- "onUpdate:hashOnUriCapture": o[14] || (o[14] = (u) => t.fields.hashOnUriCapture = u),
3287
+ "onUpdate:hashOnUriCapture": o[14] || (o[14] = (c) => t.fields.hashOnUriCapture = c),
3227
3288
  slots: t.fields.slots,
3228
- "onUpdate:slots": o[15] || (o[15] = (u) => t.fields.slots = u),
3289
+ "onUpdate:slots": o[15] || (o[15] = (c) => t.fields.slots = c),
3229
3290
  "sticky-sessions-cookie": t.fields.stickySessionsCookie,
3230
- "onUpdate:stickySessionsCookie": o[16] || (o[16] = (u) => t.fields.stickySessionsCookie = u),
3291
+ "onUpdate:stickySessionsCookie": o[16] || (o[16] = (c) => t.fields.stickySessionsCookie = c),
3231
3292
  "sticky-sessions-cookie-path": t.fields.stickySessionsCookiePath,
3232
- "onUpdate:stickySessionsCookiePath": o[17] || (o[17] = (u) => t.fields.stickySessionsCookiePath = u),
3293
+ "onUpdate:stickySessionsCookiePath": o[17] || (o[17] = (c) => t.fields.stickySessionsCookiePath = c),
3233
3294
  readonly: t.readonly,
3234
3295
  "sticky-sessions-available": a.config.stickySessionsAvailable
3235
3296
  }, 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", "sticky-sessions-cookie", "sticky-sessions-cookie-path", "readonly", "sticky-sessions-available"]),
3236
- h(xa, {
3297
+ h($a, {
3237
3298
  "active-health-switch": t.fields.activeHealthSwitch,
3238
3299
  "onUpdate:activeHealthSwitch": [
3239
- o[18] || (o[18] = (u) => t.fields.activeHealthSwitch = u),
3300
+ o[18] || (o[18] = (c) => t.fields.activeHealthSwitch = c),
3240
3301
  p
3241
3302
  ],
3242
3303
  "healthchecks-threshold": t.fields.healthchecksThreshold,
3243
- "onUpdate:healthchecksThreshold": o[19] || (o[19] = (u) => t.fields.healthchecksThreshold = u),
3304
+ "onUpdate:healthchecksThreshold": o[19] || (o[19] = (c) => t.fields.healthchecksThreshold = c),
3244
3305
  "passive-health-switch": t.fields.passiveHealthSwitch,
3245
3306
  "onUpdate:passiveHealthSwitch": [
3246
- o[20] || (o[20] = (u) => t.fields.passiveHealthSwitch = u),
3247
- H
3307
+ o[20] || (o[20] = (c) => t.fields.passiveHealthSwitch = c),
3308
+ S
3248
3309
  ],
3249
3310
  readonly: t.readonly
3250
3311
  }, null, 8, ["active-health-switch", "healthchecks-threshold", "passive-health-switch", "readonly"]),
3251
- t.fields.activeHealthSwitch ? (F(), N(Ka, {
3312
+ t.fields.activeHealthSwitch ? (F(), E(Va, {
3252
3313
  key: 0,
3253
3314
  concurrency: t.fields.activeHealthCheck.concurrency,
3254
- "onUpdate:concurrency": o[21] || (o[21] = (u) => t.fields.activeHealthCheck.concurrency = u),
3315
+ "onUpdate:concurrency": o[21] || (o[21] = (c) => t.fields.activeHealthCheck.concurrency = c),
3255
3316
  headers: t.fields.activeHealthCheck.headers,
3256
- "onUpdate:headers": o[22] || (o[22] = (u) => t.fields.activeHealthCheck.headers = u),
3317
+ "onUpdate:headers": o[22] || (o[22] = (c) => t.fields.activeHealthCheck.headers = c),
3257
3318
  "healthy-http-statuses": t.fields.activeHealthCheck.healthy.httpStatuses,
3258
- "onUpdate:healthyHttpStatuses": o[23] || (o[23] = (u) => t.fields.activeHealthCheck.healthy.httpStatuses = u),
3319
+ "onUpdate:healthyHttpStatuses": o[23] || (o[23] = (c) => t.fields.activeHealthCheck.healthy.httpStatuses = c),
3259
3320
  "healthy-interval": t.fields.activeHealthCheck.healthy.interval,
3260
- "onUpdate:healthyInterval": o[24] || (o[24] = (u) => t.fields.activeHealthCheck.healthy.interval = u),
3321
+ "onUpdate:healthyInterval": o[24] || (o[24] = (c) => t.fields.activeHealthCheck.healthy.interval = c),
3261
3322
  "healthy-successes": t.fields.activeHealthCheck.healthy.successes,
3262
- "onUpdate:healthySuccesses": o[25] || (o[25] = (u) => t.fields.activeHealthCheck.healthy.successes = u),
3323
+ "onUpdate:healthySuccesses": o[25] || (o[25] = (c) => t.fields.activeHealthCheck.healthy.successes = c),
3263
3324
  "http-path": t.fields.activeHealthCheck.httpPath,
3264
- "onUpdate:httpPath": o[26] || (o[26] = (u) => t.fields.activeHealthCheck.httpPath = u),
3325
+ "onUpdate:httpPath": o[26] || (o[26] = (c) => t.fields.activeHealthCheck.httpPath = c),
3265
3326
  "https-sni": t.fields.activeHealthCheck.httpsSni,
3266
- "onUpdate:httpsSni": o[27] || (o[27] = (u) => t.fields.activeHealthCheck.httpsSni = u),
3327
+ "onUpdate:httpsSni": o[27] || (o[27] = (c) => t.fields.activeHealthCheck.httpsSni = c),
3267
3328
  timeout: t.fields.activeHealthCheck.timeout,
3268
- "onUpdate:timeout": o[28] || (o[28] = (u) => t.fields.activeHealthCheck.timeout = u),
3329
+ "onUpdate:timeout": o[28] || (o[28] = (c) => t.fields.activeHealthCheck.timeout = c),
3269
3330
  type: t.fields.activeHealthCheck.type,
3270
- "onUpdate:type": o[29] || (o[29] = (u) => t.fields.activeHealthCheck.type = u),
3331
+ "onUpdate:type": o[29] || (o[29] = (c) => t.fields.activeHealthCheck.type = c),
3271
3332
  "unhealthy-http-failures": t.fields.activeHealthCheck.unhealthy.httpFailures,
3272
- "onUpdate:unhealthyHttpFailures": o[30] || (o[30] = (u) => t.fields.activeHealthCheck.unhealthy.httpFailures = u),
3333
+ "onUpdate:unhealthyHttpFailures": o[30] || (o[30] = (c) => t.fields.activeHealthCheck.unhealthy.httpFailures = c),
3273
3334
  "unhealthy-http-statuses": t.fields.activeHealthCheck.unhealthy.httpStatuses,
3274
- "onUpdate:unhealthyHttpStatuses": o[31] || (o[31] = (u) => t.fields.activeHealthCheck.unhealthy.httpStatuses = u),
3335
+ "onUpdate:unhealthyHttpStatuses": o[31] || (o[31] = (c) => t.fields.activeHealthCheck.unhealthy.httpStatuses = c),
3275
3336
  "unhealthy-interval": t.fields.activeHealthCheck.unhealthy.interval,
3276
- "onUpdate:unhealthyInterval": o[32] || (o[32] = (u) => t.fields.activeHealthCheck.unhealthy.interval = u),
3337
+ "onUpdate:unhealthyInterval": o[32] || (o[32] = (c) => t.fields.activeHealthCheck.unhealthy.interval = c),
3277
3338
  "unhealthy-tcp-failures": t.fields.activeHealthCheck.unhealthy.tcpFailures,
3278
- "onUpdate:unhealthyTcpFailures": o[33] || (o[33] = (u) => t.fields.activeHealthCheck.unhealthy.tcpFailures = u),
3339
+ "onUpdate:unhealthyTcpFailures": o[33] || (o[33] = (c) => t.fields.activeHealthCheck.unhealthy.tcpFailures = c),
3279
3340
  "unhealthy-timeouts": t.fields.activeHealthCheck.unhealthy.timeouts,
3280
- "onUpdate:unhealthyTimeouts": o[34] || (o[34] = (u) => t.fields.activeHealthCheck.unhealthy.timeouts = u),
3341
+ "onUpdate:unhealthyTimeouts": o[34] || (o[34] = (c) => t.fields.activeHealthCheck.unhealthy.timeouts = c),
3281
3342
  "verify-ssl": t.fields.activeHealthCheck.verifySsl,
3282
- "onUpdate:verifySsl": o[35] || (o[35] = (u) => t.fields.activeHealthCheck.verifySsl = u),
3343
+ "onUpdate:verifySsl": o[35] || (o[35] = (c) => t.fields.activeHealthCheck.verifySsl = c),
3283
3344
  config: a.config,
3284
3345
  readonly: t.readonly
3285
- }, null, 8, ["concurrency", "headers", "healthy-http-statuses", "healthy-interval", "healthy-successes", "http-path", "https-sni", "timeout", "type", "unhealthy-http-failures", "unhealthy-http-statuses", "unhealthy-interval", "unhealthy-tcp-failures", "unhealthy-timeouts", "verify-ssl", "config", "readonly"])) : B("", !0),
3286
- t.fields.passiveHealthSwitch ? (F(), N(Da, {
3346
+ }, null, 8, ["concurrency", "headers", "healthy-http-statuses", "healthy-interval", "healthy-successes", "http-path", "https-sni", "timeout", "type", "unhealthy-http-failures", "unhealthy-http-statuses", "unhealthy-interval", "unhealthy-tcp-failures", "unhealthy-timeouts", "verify-ssl", "config", "readonly"])) : D("", !0),
3347
+ t.fields.passiveHealthSwitch ? (F(), E(ja, {
3287
3348
  key: 1,
3288
3349
  "healthy-http-statuses": t.fields.passiveHealthCheck.healthy.httpStatuses,
3289
- "onUpdate:healthyHttpStatuses": o[36] || (o[36] = (u) => t.fields.passiveHealthCheck.healthy.httpStatuses = u),
3350
+ "onUpdate:healthyHttpStatuses": o[36] || (o[36] = (c) => t.fields.passiveHealthCheck.healthy.httpStatuses = c),
3290
3351
  "healthy-successes": t.fields.passiveHealthCheck.healthy.successes,
3291
- "onUpdate:healthySuccesses": o[37] || (o[37] = (u) => t.fields.passiveHealthCheck.healthy.successes = u),
3352
+ "onUpdate:healthySuccesses": o[37] || (o[37] = (c) => t.fields.passiveHealthCheck.healthy.successes = c),
3292
3353
  type: t.fields.passiveHealthCheck.type,
3293
- "onUpdate:type": o[38] || (o[38] = (u) => t.fields.passiveHealthCheck.type = u),
3354
+ "onUpdate:type": o[38] || (o[38] = (c) => t.fields.passiveHealthCheck.type = c),
3294
3355
  "unhealthy-http-failures": t.fields.passiveHealthCheck.unhealthy.httpFailures,
3295
- "onUpdate:unhealthyHttpFailures": o[39] || (o[39] = (u) => t.fields.passiveHealthCheck.unhealthy.httpFailures = u),
3356
+ "onUpdate:unhealthyHttpFailures": o[39] || (o[39] = (c) => t.fields.passiveHealthCheck.unhealthy.httpFailures = c),
3296
3357
  "unhealthy-http-statuses": t.fields.passiveHealthCheck.unhealthy.httpStatuses,
3297
- "onUpdate:unhealthyHttpStatuses": o[40] || (o[40] = (u) => t.fields.passiveHealthCheck.unhealthy.httpStatuses = u),
3358
+ "onUpdate:unhealthyHttpStatuses": o[40] || (o[40] = (c) => t.fields.passiveHealthCheck.unhealthy.httpStatuses = c),
3298
3359
  "unhealthy-tcp-failures": t.fields.passiveHealthCheck.unhealthy.tcpFailures,
3299
- "onUpdate:unhealthyTcpFailures": o[41] || (o[41] = (u) => t.fields.passiveHealthCheck.unhealthy.tcpFailures = u),
3360
+ "onUpdate:unhealthyTcpFailures": o[41] || (o[41] = (c) => t.fields.passiveHealthCheck.unhealthy.tcpFailures = c),
3300
3361
  "unhealthy-timeouts": t.fields.passiveHealthCheck.unhealthy.timeouts,
3301
- "onUpdate:unhealthyTimeouts": o[42] || (o[42] = (u) => t.fields.passiveHealthCheck.unhealthy.timeouts = u),
3362
+ "onUpdate:unhealthyTimeouts": o[42] || (o[42] = (c) => t.fields.passiveHealthCheck.unhealthy.timeouts = c),
3302
3363
  readonly: t.readonly
3303
- }, null, 8, ["healthy-http-statuses", "healthy-successes", "type", "unhealthy-http-failures", "unhealthy-http-statuses", "unhealthy-tcp-failures", "unhealthy-timeouts", "readonly"])) : B("", !0)
3364
+ }, null, 8, ["healthy-http-statuses", "healthy-successes", "type", "unhealthy-http-failures", "unhealthy-http-statuses", "unhealthy-tcp-failures", "unhealthy-timeouts", "readonly"])) : D("", !0)
3304
3365
  ]),
3305
3366
  _: 1
3306
3367
  }, 8, ["can-submit", "config", "edit-id", "entity-type", "error-message", "fetch-url", "form-fields", "is-readonly"])
3307
3368
  ]));
3308
3369
  }
3309
- }), el = /* @__PURE__ */ me(La, [["__scopeId", "data-v-0d494630"]]), Qa = { "data-testid": "client_certificate-plain-text" }, tl = /* @__PURE__ */ ne({
3370
+ }), al = /* @__PURE__ */ me(Wa, [["__scopeId", "data-v-0d494630"]]), Ja = { "data-testid": "client_certificate-plain-text" }, ll = /* @__PURE__ */ ne({
3310
3371
  __name: "UpstreamsConfigCard",
3311
3372
  props: {
3312
3373
  /** The base konnect or kongManger config. Pass additional config props in the shared entity component as needed. */
@@ -3333,7 +3394,7 @@ const pe = {
3333
3394
  },
3334
3395
  emits: ["loading", "fetch:error", "fetch:success"],
3335
3396
  setup(a) {
3336
- const R = a, { i18n: { t: i }, i18nT: l } = pe.useI18n(), { getPropValue: n } = Kt(), v = I(() => _e.form[R.config.app].edit), f = E({
3397
+ const L = a, { i18n: { t: i }, i18nT: l } = pe.useI18n(), { getPropValue: r } = Kt(), v = U(() => _e.form[L.config.app].edit), f = B({
3337
3398
  id: {},
3338
3399
  name: {},
3339
3400
  created_at: {},
@@ -3376,7 +3437,7 @@ const pe = {
3376
3437
  order: 13,
3377
3438
  section: he.Basic,
3378
3439
  // TODO: change to JsonArray
3379
- type: Vt.Json
3440
+ type: Et.Json
3380
3441
  },
3381
3442
  tags: {
3382
3443
  order: 14,
@@ -3407,212 +3468,212 @@ const pe = {
3407
3468
  tooltip: i("upstreams.form.hash_tooltips.client_certificate")
3408
3469
  }
3409
3470
  });
3410
- return (D, x) => (F(), re("div", null, [
3411
- h(e(Nt), {
3471
+ return (j, O) => (F(), ie("div", null, [
3472
+ h(e(Vt), {
3412
3473
  config: a.config,
3413
3474
  "config-card-doc": a.configCardDoc,
3414
3475
  "config-schema": f.value,
3415
3476
  "entity-type": e(De).Upstream,
3416
3477
  "fetch-url": v.value,
3417
3478
  "hide-title": a.hideTitle,
3418
- "onFetch:error": x[0] || (x[0] = (s) => D.$emit("fetch:error", s)),
3419
- "onFetch:success": x[1] || (x[1] = (s) => D.$emit("fetch:success", s)),
3420
- onLoading: x[2] || (x[2] = (s) => D.$emit("loading", s))
3479
+ "onFetch:error": O[0] || (O[0] = (s) => j.$emit("fetch:error", s)),
3480
+ "onFetch:success": O[1] || (O[1] = (s) => j.$emit("fetch:success", s)),
3481
+ onLoading: O[2] || (O[2] = (s) => j.$emit("loading", s))
3421
3482
  }, {
3422
- "name-label-tooltip": r(() => [
3483
+ "name-label-tooltip": n(() => [
3423
3484
  h(e(l), {
3424
3485
  keypath: "upstreams.form.fields.name.tooltip",
3425
3486
  scope: "global"
3426
3487
  }, {
3427
- host: r(() => [
3488
+ host: n(() => [
3428
3489
  b("code", null, y(e(i)("upstreams.form.fields.name.host")), 1)
3429
3490
  ]),
3430
3491
  _: 1
3431
3492
  })
3432
3493
  ]),
3433
- "hash_on-label-tooltip": r(({ row: s }) => [
3494
+ "hash_on-label-tooltip": n(({ row: s }) => [
3434
3495
  h(e(l), {
3435
3496
  keypath: "upstreams.form.fields.hash_on.tooltip",
3436
3497
  scope: "global"
3437
3498
  }, {
3438
- result: r(() => [
3499
+ result: n(() => [
3439
3500
  b("code", null, y(s.value), 1)
3440
3501
  ]),
3441
3502
  _: 2
3442
3503
  }, 1024)
3443
3504
  ]),
3444
- "hash_on_header-label-tooltip": r(() => [
3505
+ "hash_on_header-label-tooltip": n(() => [
3445
3506
  h(e(l), {
3446
3507
  keypath: "upstreams.form.hash_tooltips.hash_on_header.text",
3447
3508
  scope: "global"
3448
3509
  }, {
3449
- hash_on: r(() => [
3510
+ hash_on: n(() => [
3450
3511
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_header.hash_on")), 1)
3451
3512
  ]),
3452
- header: r(() => [
3513
+ header: n(() => [
3453
3514
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_header.header")), 1)
3454
3515
  ]),
3455
3516
  _: 1
3456
3517
  })
3457
3518
  ]),
3458
- "hash_on_uri_capture-label-tooltip": r(() => [
3519
+ "hash_on_uri_capture-label-tooltip": n(() => [
3459
3520
  h(e(l), {
3460
3521
  keypath: "upstreams.form.hash_tooltips.hash_on_uri_capture.text",
3461
3522
  scope: "global"
3462
3523
  }, {
3463
- hash_on: r(() => [
3524
+ hash_on: n(() => [
3464
3525
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_uri_capture.hash_on")), 1)
3465
3526
  ]),
3466
- uri_capture: r(() => [
3527
+ uri_capture: n(() => [
3467
3528
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_uri_capture.uri_capture")), 1)
3468
3529
  ]),
3469
3530
  _: 1
3470
3531
  })
3471
3532
  ]),
3472
- "hash_on_query_arg-label-tooltip": r(() => [
3533
+ "hash_on_query_arg-label-tooltip": n(() => [
3473
3534
  h(e(l), {
3474
3535
  keypath: "upstreams.form.hash_tooltips.hash_on_query_arg.text",
3475
3536
  scope: "global"
3476
3537
  }, {
3477
- hash_on: r(() => [
3538
+ hash_on: n(() => [
3478
3539
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_query_arg.hash_on")), 1)
3479
3540
  ]),
3480
- query_arg: r(() => [
3541
+ query_arg: n(() => [
3481
3542
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_query_arg.query_arg")), 1)
3482
3543
  ]),
3483
3544
  _: 1
3484
3545
  })
3485
3546
  ]),
3486
- "hash_on_cookie-label-tooltip": r(() => [
3547
+ "hash_on_cookie-label-tooltip": n(() => [
3487
3548
  h(e(l), {
3488
3549
  keypath: "upstreams.form.hash_tooltips.hash_on_cookie.text",
3489
3550
  scope: "global"
3490
3551
  }, {
3491
- hash_on: r(() => [
3552
+ hash_on: n(() => [
3492
3553
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_cookie.hash_on")), 1)
3493
3554
  ]),
3494
- hash_fallback: r(() => [
3555
+ hash_fallback: n(() => [
3495
3556
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_cookie.hash_fallback")), 1)
3496
3557
  ]),
3497
- cookie: r(() => [
3558
+ cookie: n(() => [
3498
3559
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_cookie.cookie")), 1)
3499
3560
  ]),
3500
3561
  _: 1
3501
3562
  })
3502
3563
  ]),
3503
- "hash_on_cookie_path-label-tooltip": r(() => [
3564
+ "hash_on_cookie_path-label-tooltip": n(() => [
3504
3565
  h(e(l), {
3505
3566
  keypath: "upstreams.form.hash_tooltips.hash_on_cookie_path.text",
3506
3567
  scope: "global"
3507
3568
  }, {
3508
- hash_on: r(() => [
3569
+ hash_on: n(() => [
3509
3570
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_cookie_path.hash_on")), 1)
3510
3571
  ]),
3511
- hash_fallback: r(() => [
3572
+ hash_fallback: n(() => [
3512
3573
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_cookie_path.hash_fallback")), 1)
3513
3574
  ]),
3514
- cookie: r(() => [
3575
+ cookie: n(() => [
3515
3576
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_on_cookie_path.cookie")), 1)
3516
3577
  ]),
3517
3578
  _: 1
3518
3579
  })
3519
3580
  ]),
3520
- "slots-label-tooltip": r(() => [
3581
+ "slots-label-tooltip": n(() => [
3521
3582
  h(e(l), {
3522
3583
  keypath: "upstreams.form.hash_tooltips.slots.text",
3523
3584
  scope: "global"
3524
3585
  }, {
3525
- algorithm: r(() => [
3586
+ algorithm: n(() => [
3526
3587
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.slots.algorithm")), 1)
3527
3588
  ]),
3528
- round_robin: r(() => [
3589
+ round_robin: n(() => [
3529
3590
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.slots.round_robin")), 1)
3530
3591
  ]),
3531
- consistent_hashing: r(() => [
3592
+ consistent_hashing: n(() => [
3532
3593
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.slots.consistent_hashing")), 1)
3533
3594
  ]),
3534
- min: r(() => x[3] || (x[3] = [
3595
+ min: n(() => O[3] || (O[3] = [
3535
3596
  b("code", null, "10", -1)
3536
3597
  ])),
3537
- max: r(() => x[4] || (x[4] = [
3598
+ max: n(() => O[4] || (O[4] = [
3538
3599
  b("code", null, "65536", -1)
3539
3600
  ])),
3540
3601
  _: 1
3541
3602
  })
3542
3603
  ]),
3543
- "hash_fallback-label-tooltip": r(() => [
3604
+ "hash_fallback-label-tooltip": n(() => [
3544
3605
  h(e(l), {
3545
3606
  keypath: "upstreams.form.hash_tooltips.hash_fallback.text",
3546
3607
  scope: "global"
3547
3608
  }, {
3548
- hash_on: r(() => [
3609
+ hash_on: n(() => [
3549
3610
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_fallback.hash_on")), 1)
3550
3611
  ]),
3551
- cookie: r(() => [
3612
+ cookie: n(() => [
3552
3613
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_fallback.cookie")), 1)
3553
3614
  ]),
3554
3615
  _: 1
3555
3616
  })
3556
3617
  ]),
3557
- "hash_fallback_header-label-tooltip": r(() => [
3618
+ "hash_fallback_header-label-tooltip": n(() => [
3558
3619
  h(e(l), {
3559
3620
  keypath: "upstreams.form.hash_tooltips.hash_fallback_header.text",
3560
3621
  scope: "global"
3561
3622
  }, {
3562
- hash_fallback: r(() => [
3623
+ hash_fallback: n(() => [
3563
3624
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_fallback_header.hash_fallback")), 1)
3564
3625
  ]),
3565
- header: r(() => [
3626
+ header: n(() => [
3566
3627
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_fallback_header.header")), 1)
3567
3628
  ]),
3568
3629
  _: 1
3569
3630
  })
3570
3631
  ]),
3571
- "hash_fallback_query_arg-label-tooltip": r(() => [
3632
+ "hash_fallback_query_arg-label-tooltip": n(() => [
3572
3633
  h(e(l), {
3573
3634
  keypath: "upstreams.form.hash_tooltips.hash_fallback_query_arg.text",
3574
3635
  scope: "global"
3575
3636
  }, {
3576
- hash_fallback: r(() => [
3637
+ hash_fallback: n(() => [
3577
3638
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_fallback_query_arg.hash_fallback")), 1)
3578
3639
  ]),
3579
- query_arg: r(() => [
3640
+ query_arg: n(() => [
3580
3641
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_fallback_query_arg.query_arg")), 1)
3581
3642
  ]),
3582
3643
  _: 1
3583
3644
  })
3584
3645
  ]),
3585
- "hash_fallback_uri_capture-label-tooltip": r(() => [
3646
+ "hash_fallback_uri_capture-label-tooltip": n(() => [
3586
3647
  h(e(l), {
3587
3648
  keypath: "upstreams.form.hash_tooltips.hash_fallback_uri_capture.text",
3588
3649
  scope: "global"
3589
3650
  }, {
3590
- hash_fallback: r(() => [
3651
+ hash_fallback: n(() => [
3591
3652
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_fallback_uri_capture.hash_fallback")), 1)
3592
3653
  ]),
3593
- uri_capture: r(() => [
3654
+ uri_capture: n(() => [
3594
3655
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.hash_fallback_uri_capture.uri_capture")), 1)
3595
3656
  ]),
3596
3657
  _: 1
3597
3658
  })
3598
3659
  ]),
3599
- "host_header-label-tooltip": r(() => [
3660
+ "host_header-label-tooltip": n(() => [
3600
3661
  h(e(l), {
3601
3662
  keypath: "upstreams.form.hash_tooltips.host_header.text",
3602
3663
  scope: "global"
3603
3664
  }, {
3604
- host: r(() => [
3665
+ host: n(() => [
3605
3666
  b("code", null, y(e(i)("upstreams.form.hash_tooltips.host_header.host")), 1)
3606
3667
  ]),
3607
3668
  _: 1
3608
3669
  })
3609
3670
  ]),
3610
- client_certificate: r((s) => {
3671
+ client_certificate: n((s) => {
3611
3672
  var d;
3612
3673
  return [
3613
3674
  b("div", null, [
3614
- b("div", Qa, [
3615
- b("span", null, y((d = e(n)("rowValue", s)) == null ? void 0 : d.id), 1)
3675
+ b("div", Ja, [
3676
+ b("span", null, y((d = e(r)("rowValue", s)) == null ? void 0 : d.id), 1)
3616
3677
  ])
3617
3678
  ])
3618
3679
  ];
@@ -3623,9 +3684,9 @@ const pe = {
3623
3684
  }
3624
3685
  });
3625
3686
  export {
3626
- pa as TargetForm,
3627
- Ya as TargetsList,
3628
- tl as UpstreamsConfigCard,
3629
- el as UpstreamsForm,
3630
- Za as UpstreamsList
3687
+ fa as TargetForm,
3688
+ tl as TargetsList,
3689
+ ll as UpstreamsConfigCard,
3690
+ al as UpstreamsForm,
3691
+ el as UpstreamsList
3631
3692
  };