@kiva/kv-components 9.1.0 → 9.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/utils/headerMenuTiming.d.ts +6 -0
- package/dist/utils/headerMenuTiming.js +9 -0
- package/dist/utils/useHeaderMenuGroup.d.ts +27 -0
- package/dist/utils/useHeaderMenuGroup.js +68 -0
- package/dist/utils/useHeaderMenuPlacement.d.ts +6 -0
- package/dist/utils/useHeaderMenuPlacement.js +30 -0
- package/dist/utils/useHeaderMenuState.d.ts +10 -0
- package/dist/utils/useHeaderMenuState.js +21 -0
- package/dist/utils/useHoverIntent.d.ts +5 -0
- package/dist/utils/useHoverIntent.js +17 -0
- package/dist/utils/useOutsidePointerDown.d.ts +2 -0
- package/dist/utils/useOutsidePointerDown.js +19 -0
- package/dist/utils/usePointerType.d.ts +5 -0
- package/dist/utils/usePointerType.js +19 -0
- package/dist/vue/KvWwwHeaderBasic/HeaderMenuGroup.css +1 -0
- package/dist/vue/KvWwwHeaderBasic/HeaderMenuGroup.js +35 -0
- package/dist/vue/KvWwwHeaderBasic/HeaderMenuGroup.vue.d.ts +25 -0
- package/dist/vue/KvWwwHeaderBasic/HeaderMenuGroup2.js +37 -0
- package/dist/vue/KvWwwHeaderBasic/KvWwwHeaderBasic.css +1 -1
- package/dist/vue/KvWwwHeaderBasic/KvWwwHeaderBasic.js +29 -75
- package/dist/vue/KvWwwHeaderBasic/KvWwwHeaderBasic2.js +37 -92
- package/dist/vue/KvWwwHeaderBasic/LinkBar.css +1 -1
- package/dist/vue/KvWwwHeaderBasic/LinkBar.js +206 -132
- package/dist/vue/KvWwwHeaderBasic/LinkBar.vue.d.ts +226 -185
- package/dist/vue/KvWwwHeaderBasic/LinkBar2.js +69 -96
- package/dist/vue/KvWwwHeaderBasic/MobileLendMenu/MobileLendMenu.vue.d.ts +9 -1
- package/dist/vue/KvWwwHeaderBasic/MobileLendMenu/SearchPanel.js +12 -11
- package/dist/vue/KvWwwHeaderBasic/MobileLendMenu/SearchPanel.vue.d.ts +9 -1
- package/dist/vue/KvWwwHeaderBasic/SearchBar.js +12 -12
- package/dist/vue/KvWwwHeaderBasic/SearchBar.vue.d.ts +9 -1
- package/dist/vue/KvWwwHeaderBasic/SearchBar2.js +49 -43
- package/package.json +3 -4
- package/dist/utils/useHeaderBasicMenuState.d.ts +0 -3197
- package/dist/utils/useHeaderBasicMenuState.js +0 -30
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { ref as o, computed as
|
|
2
|
-
import { gql as
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import { useBreakpoints as
|
|
6
|
-
import
|
|
7
|
-
|
|
8
|
-
const S = "4rem", Y = G`
|
|
1
|
+
import { ref as o, computed as S, onMounted as h } from "vue";
|
|
2
|
+
import { gql as b } from "@apollo/client/core";
|
|
3
|
+
import v from "../KvThemeProvider.js";
|
|
4
|
+
import B from "../KvPageContainer.js";
|
|
5
|
+
import { useBreakpoints as w } from "../../utils/useBreakpoints.js";
|
|
6
|
+
import k from "./LinkBar.js";
|
|
7
|
+
const N = "4rem", I = b`
|
|
9
8
|
query loanSearchSuggestions {
|
|
10
9
|
lend {
|
|
11
10
|
loanSearchSuggestions {
|
|
@@ -15,12 +14,12 @@ const S = "4rem", Y = G`
|
|
|
15
14
|
}
|
|
16
15
|
}
|
|
17
16
|
}
|
|
18
|
-
`,
|
|
17
|
+
`, _ = {
|
|
19
18
|
name: "KvWwwHeaderBasic",
|
|
20
19
|
components: {
|
|
21
|
-
KvThemeProvider:
|
|
22
|
-
KvPageContainer:
|
|
23
|
-
LinkBar:
|
|
20
|
+
KvThemeProvider: v,
|
|
21
|
+
KvPageContainer: B,
|
|
22
|
+
LinkBar: k
|
|
24
23
|
},
|
|
25
24
|
props: {
|
|
26
25
|
loggedIn: { type: Boolean, default: !1 },
|
|
@@ -45,96 +44,42 @@ const S = "4rem", Y = G`
|
|
|
45
44
|
mostRecentBorrowedLoanId: { type: Number, default: null }
|
|
46
45
|
},
|
|
47
46
|
emits: ["load-lend-menu-data", "load-search-data", "search-submit", "login-click"],
|
|
48
|
-
setup(
|
|
49
|
-
const { isMobile:
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
} = V(), l = o(null), w = o(null), r = o(null), y = o(S), c = o(null), L = o(!0), b = o(d.appOrigin);
|
|
58
|
-
let u = null;
|
|
59
|
-
const m = o([]);
|
|
60
|
-
let p = !1;
|
|
61
|
-
const U = s(
|
|
62
|
-
() => m.value.length ? m.value : d.searchSuggestions
|
|
63
|
-
), g = s(() => {
|
|
64
|
-
var t, e;
|
|
65
|
-
return ((e = (t = l.value) == null ? void 0 : t.$options) == null ? void 0 : e.name) === "MobileMenu";
|
|
66
|
-
}), h = s(() => {
|
|
67
|
-
var t, e;
|
|
68
|
-
return ((e = (t = l.value) == null ? void 0 : t.$options) == null ? void 0 : e.name) === "MyKivaMenu";
|
|
69
|
-
}), q = s(() => {
|
|
70
|
-
var t, e;
|
|
71
|
-
return ((e = (t = l.value) == null ? void 0 : t.$options) == null ? void 0 : e.name) === "AboutMenu";
|
|
72
|
-
}), C = s(() => g.value ? "tw-w-full tw-min-h-dvh tw-rounded-none" : h.value ? "tw-w-auto tw-rounded-b tw-border tw-border-t-0 tw-border-tertiary" : q.value ? "tw-w-full md:tw-w-auto tw-rounded-none !tw-rounded-b md:tw-border md:tw-border-t-0 md:tw-border-tertiary" : "tw-w-full md:tw-w-auto tw-rounded-none !md:tw-rounded-b");
|
|
73
|
-
function E(t, e, n, i = null) {
|
|
74
|
-
c.value = i, f(t, e, n);
|
|
47
|
+
setup(n) {
|
|
48
|
+
const { isMobile: d, checkIsMobile: f } = w(), i = o(null), p = o(!0), s = o(n.appOrigin), l = o([]);
|
|
49
|
+
let r = !1;
|
|
50
|
+
const g = S(
|
|
51
|
+
() => l.value.length ? l.value : n.searchSuggestions
|
|
52
|
+
);
|
|
53
|
+
function c(u) {
|
|
54
|
+
var e, t;
|
|
55
|
+
(t = (e = i.value) == null ? void 0 : e.loadMenuData) == null || t.call(e, u);
|
|
75
56
|
}
|
|
76
|
-
|
|
77
|
-
if (!t || c.value == null) return;
|
|
78
|
-
await P();
|
|
79
|
-
const e = w.value;
|
|
80
|
-
if (!e) return;
|
|
81
|
-
const n = e.offsetWidth, i = c.value, a = Math.max(0, window.innerWidth - (i + n / 2));
|
|
82
|
-
v.value = { right: `${a}px`, position: "absolute" };
|
|
83
|
-
});
|
|
84
|
-
function R() {
|
|
85
|
-
M("load-lend-menu-data");
|
|
86
|
-
}
|
|
87
|
-
function T(t) {
|
|
88
|
-
var e, n;
|
|
89
|
-
(n = (e = l.value) == null ? void 0 : e.onLoad) == null || n.call(e, t);
|
|
90
|
-
}
|
|
91
|
-
async function _(t) {
|
|
57
|
+
async function m(u) {
|
|
92
58
|
var e;
|
|
93
|
-
if (!
|
|
94
|
-
|
|
59
|
+
if (!r) {
|
|
60
|
+
r = !0;
|
|
95
61
|
try {
|
|
96
|
-
const { data:
|
|
97
|
-
|
|
62
|
+
const { data: t } = await u.query({ query: I }), y = ((e = t == null ? void 0 : t.lend) == null ? void 0 : e.loanSearchSuggestions) ?? [];
|
|
63
|
+
l.value = y.filter((a) => !!a).map((a) => ({ group: a.group ?? "", label: a.label ?? "", query: a.query ?? void 0 }));
|
|
98
64
|
} catch {
|
|
99
|
-
|
|
65
|
+
r = !1;
|
|
100
66
|
}
|
|
101
67
|
}
|
|
102
68
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
}
|
|
106
|
-
return K(() => {
|
|
107
|
-
!d.appOrigin && typeof window < "u" && (b.value = window.location.origin), k(), O(), r.value && typeof ResizeObserver < "u" && (u = new ResizeObserver(() => {
|
|
108
|
-
r.value && (y.value = `${r.value.offsetHeight}px`);
|
|
109
|
-
}), u.observe(r.value));
|
|
110
|
-
}), $(() => {
|
|
111
|
-
u == null || u.disconnect(), u = null;
|
|
69
|
+
return h(() => {
|
|
70
|
+
!n.appOrigin && typeof window < "u" && (s.value = window.location.origin), f();
|
|
112
71
|
}), {
|
|
113
|
-
MIN_HEADER_HEIGHT:
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
menuComponent: A,
|
|
122
|
-
menuItem: N,
|
|
123
|
-
menuPosition: v,
|
|
124
|
-
isMobileMenuActive: g,
|
|
125
|
-
menuPanelClass: C,
|
|
126
|
-
menuComponentInstance: l,
|
|
127
|
-
menuPanelRef: w,
|
|
128
|
-
pinMenuOpen: H,
|
|
129
|
-
setMenu: f,
|
|
130
|
-
onItemHover: E,
|
|
131
|
-
handleOverlayClick: x,
|
|
132
|
-
emitLendMenuEvent: R,
|
|
133
|
-
loadMenuData: T,
|
|
134
|
-
loadSearchSuggestions: _
|
|
72
|
+
MIN_HEADER_HEIGHT: N,
|
|
73
|
+
linkBarRef: i,
|
|
74
|
+
linksVisible: p,
|
|
75
|
+
resolvedAppOrigin: s,
|
|
76
|
+
effectiveSuggestions: g,
|
|
77
|
+
isMobile: d,
|
|
78
|
+
loadMenuData: c,
|
|
79
|
+
loadSearchSuggestions: m
|
|
135
80
|
};
|
|
136
81
|
}
|
|
137
82
|
};
|
|
138
83
|
export {
|
|
139
|
-
|
|
84
|
+
_ as default
|
|
140
85
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.link-bar[data-v-
|
|
1
|
+
.link-bar[data-v-816544c3]{display:flex;align-items:center;gap:.5rem}.link-bar__logo[data-v-816544c3]{position:absolute;top:50%;left:50%;--tw-translate-x: -50%;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}@media(min-width:45.875rem){.link-bar[data-v-816544c3]{display:grid;-moz-column-gap:1rem;column-gap:1rem;grid-template-areas:"logo lend right" "search search search";grid-template-columns:1fr auto auto;grid-template-rows:4rem auto;row-gap:.5rem}.link-bar__logo[data-v-816544c3]{position:static;--tw-translate-x: 0;--tw-translate-y: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));grid-area:logo;justify-self:start}.link-bar__lend[data-v-816544c3]{grid-area:lend}.link-bar__search[data-v-816544c3]{grid-area:search;margin-bottom:.5rem}.link-bar__right[data-v-816544c3]{grid-area:right;align-self:stretch}}@media(min-width:64rem){.link-bar[data-v-816544c3]{-moz-column-gap:1.25rem;column-gap:1.25rem;grid-template-areas:"logo lend search right";grid-template-columns:auto auto 1fr auto;grid-template-rows:4rem}.link-bar__search[data-v-816544c3]{margin-bottom:0}}.header-link[data-v-816544c3]{cursor:pointer;padding-top:1rem;padding-bottom:1rem;--tw-text-opacity: 1;color:rgba(var(--text-primary),var(--tw-text-opacity, 1));text-decoration-line:none}.header-link[data-v-816544c3]:hover{--tw-text-opacity: 1;color:rgba(var(--text-action),var(--tw-text-opacity, 1));text-decoration-line:none}.menu-trigger[data-v-816544c3]{border:0;background:none;font:inherit;cursor:pointer}.backdrop[data-v-816544c3]{position:absolute;z-index:1300;top:var(--nav-height, 4rem);inset-inline:0;height:0;background-color:rgba(var(--bg-action-highlight),.5);visibility:hidden;opacity:0;transition:opacity var(--menu-close-fade) ease var(--menu-open-delay),visibility 0s calc(var(--menu-open-delay) + var(--menu-close-fade)),height 0s calc(var(--menu-open-delay) + var(--menu-close-fade))}.link-bar:has(.menu-group>[aria-expanded=true])>.backdrop[data-v-816544c3],.link-bar[data-pointer=mouse]:has(.menu-group:hover)>.backdrop[data-v-816544c3]{visibility:visible;opacity:1;height:100vh;transition:opacity .3s ease var(--menu-open-delay),visibility 0s var(--menu-open-delay),height 0s var(--menu-open-delay)}.chevron[data-v-816544c3]{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.menu-group:has(>[aria-expanded=true]) .chevron[data-v-816544c3],[data-pointer=mouse] .menu-group:hover .chevron[data-v-816544c3]{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.link-bar__basket-count-loader[data-v-816544c3]{width:1.5ch;height:1.375em;height:1lh}
|
|
@@ -1,186 +1,260 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { resolveComponent as
|
|
1
|
+
import I from "./LinkBar2.js";
|
|
2
|
+
import { resolveComponent as r, openBlock as l, createElementBlock as s, normalizeStyle as h, createVNode as o, withCtx as d, createElementVNode as i, mergeProps as k, Fragment as f, renderList as U, toDisplayString as g, createTextVNode as b, createCommentVNode as m, withDirectives as O, vShow as N, createBlock as y } from "vue";
|
|
3
3
|
import "./LinkBar.css";
|
|
4
|
-
import
|
|
5
|
-
const
|
|
4
|
+
import T from "../../_virtual/_plugin-vue_export-helper.js";
|
|
5
|
+
const V = ["data-pointer"], A = ["onClick"], K = { class: "link-bar__right tw-flex tw-items-center tw-justify-end tw-ml-auto md:tw-ml-0 tw-gap-1 md:tw-gap-2 lg:tw-gap-2.5" }, j = ["href", "data-testid", "onClick"], P = ["href"], E = { class: "tw-hidden md:tw-flex tw-items-center" }, R = { class: "tw-bg-secondary tw-rounded-xs tw-py-0.5 tw-px-1 tw-mr-1 tw-leading-none tw-flex tw-items-center tw-justify-center" }, z = {
|
|
6
6
|
key: 0,
|
|
7
7
|
class: "link-bar__basket-count-loader",
|
|
8
8
|
"data-testid": "header-basket-skeleton"
|
|
9
|
-
},
|
|
9
|
+
}, F = { class: "tw-relative tw-flex md:tw-hidden tw-items-center tw-text-eco-green-4" }, G = {
|
|
10
10
|
key: 0,
|
|
11
11
|
class: "tw-absolute tw-w-4 tw-h-4 tw-pt-0.5 tw-flex tw-items-center tw-justify-center tw-text-white tw-text-small tw-font-medium tw-pointer-events-none"
|
|
12
|
-
},
|
|
12
|
+
}, q = { class: "tw-hidden md:tw-block" }, H = {
|
|
13
13
|
key: 0,
|
|
14
|
-
class: "tw-w-4 tw-h-3"
|
|
15
|
-
},
|
|
14
|
+
class: "tw-block tw-w-4 tw-h-3"
|
|
15
|
+
}, J = {
|
|
16
16
|
key: 1,
|
|
17
17
|
class: "tw-text-eco-green-4"
|
|
18
|
-
},
|
|
18
|
+
}, Q = {
|
|
19
19
|
key: 3,
|
|
20
|
-
class: "tw-w-3 tw-h-3 tw-rounded-full tw-overflow-hidden",
|
|
20
|
+
class: "tw-block tw-w-3 tw-h-3 tw-rounded-full tw-overflow-hidden",
|
|
21
21
|
"data-testid": "header-avatar-skeleton"
|
|
22
22
|
};
|
|
23
|
-
function
|
|
24
|
-
const
|
|
25
|
-
return
|
|
26
|
-
|
|
27
|
-
|
|
23
|
+
function W(u, t, n, a, X, Y) {
|
|
24
|
+
const w = r("kv-material-icon"), C = r("mobile-menu"), c = r("header-menu-group"), L = r("kv-header-logo"), M = r("kv-lend-menu"), p = r("search-bar"), x = r("about-menu"), v = r("kv-loading-placeholder"), B = r("kv-button"), D = r("kv-user-avatar"), S = r("my-kiva-menu");
|
|
25
|
+
return l(), s("div", {
|
|
26
|
+
ref: "rootRef",
|
|
27
|
+
class: "link-bar tw-min-h-[4rem] tw-font-medium",
|
|
28
|
+
style: h(a.menuTimingVars),
|
|
29
|
+
"data-pointer": a.pointerType
|
|
28
30
|
}, [
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
"
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
},
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
31
|
+
o(c, {
|
|
32
|
+
class: "md:tw-hidden",
|
|
33
|
+
"panel-id": "header-basic-menu-drawer",
|
|
34
|
+
variant: "drawer",
|
|
35
|
+
onOpen: t[0] || (t[0] = (e) => a.track("hover-Mobile-menu", "Mobile")),
|
|
36
|
+
onClose: t[1] || (t[1] = (e) => a.track("close-Mobile-menu", "Mobile"))
|
|
37
|
+
}, {
|
|
38
|
+
default: d(({ trigger: e }) => [
|
|
39
|
+
i("button", k(e, {
|
|
40
|
+
type: "button",
|
|
41
|
+
"aria-label": "Open menu",
|
|
42
|
+
class: "header-link menu-trigger link-bar__hamburger tw-inline-flex tw-p-0"
|
|
43
|
+
}), [
|
|
44
|
+
o(w, { icon: a.mdiMenu }, null, 8, ["icon"])
|
|
45
|
+
], 16)
|
|
46
|
+
]),
|
|
47
|
+
panel: d(({ close: e }) => [
|
|
48
|
+
o(C, {
|
|
49
|
+
"logged-in": n.loggedIn,
|
|
50
|
+
"login-url": n.loginUrl,
|
|
51
|
+
"is-mobile": n.isMobile,
|
|
52
|
+
onClosingMenu: e
|
|
53
|
+
}, null, 8, ["logged-in", "login-url", "is-mobile", "onClosingMenu"])
|
|
54
|
+
]),
|
|
55
|
+
_: 1
|
|
56
|
+
}),
|
|
57
|
+
i("a", {
|
|
39
58
|
href: "/",
|
|
40
59
|
"aria-label": "Kiva home",
|
|
41
60
|
class: "link-bar__logo tw-px-1 tw-py-2 tw-cursor-pointer",
|
|
42
|
-
onClick: t[2] || (t[2] = (...
|
|
61
|
+
onClick: t[2] || (t[2] = (...e) => a.onLogoClick && a.onLogoClick(...e))
|
|
43
62
|
}, [
|
|
44
|
-
|
|
63
|
+
o(L)
|
|
45
64
|
]),
|
|
46
|
-
|
|
65
|
+
o(c, {
|
|
47
66
|
class: "link-bar__lend",
|
|
48
|
-
"
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
"open-menu-item": e.lendOpenItem,
|
|
52
|
-
"dropdown-icon": e.mdiChevronDown,
|
|
53
|
-
"base-class": "tw-py-1",
|
|
54
|
-
onOnHover: e.handleOnHover,
|
|
55
|
-
onMouseleave: t[3] || (t[3] = (n) => e.handleMouseOut("lendButton")),
|
|
56
|
-
onUserTap: e.handleTouchStart
|
|
67
|
+
"panel-id": "header-basic-menu-lend",
|
|
68
|
+
variant: "full",
|
|
69
|
+
onOpen: t[6] || (t[6] = (e) => a.track("hover-Lend-menu", "Lend"))
|
|
57
70
|
}, {
|
|
58
|
-
default:
|
|
59
|
-
|
|
60
|
-
|
|
71
|
+
default: d(({ trigger: e, toggle: _ }) => [
|
|
72
|
+
i("a", {
|
|
73
|
+
href: "/lend-by-category",
|
|
74
|
+
class: "header-link tw-py-1",
|
|
75
|
+
onClick: _
|
|
76
|
+
}, "Lend", 8, A),
|
|
77
|
+
i("button", k(e, {
|
|
78
|
+
type: "button",
|
|
79
|
+
"aria-label": "Lend menu",
|
|
80
|
+
class: "menu-trigger tw-p-0 tw-py-1 tw-ml-0.5 tw-inline-flex tw-items-center tw-text-primary hover:tw-text-action"
|
|
81
|
+
}), [
|
|
82
|
+
o(w, {
|
|
83
|
+
class: "chevron tw-w-3",
|
|
84
|
+
icon: a.mdiChevronDown
|
|
85
|
+
}, null, 8, ["icon"])
|
|
86
|
+
], 16)
|
|
87
|
+
]),
|
|
88
|
+
panel: d(() => [
|
|
89
|
+
o(M, {
|
|
90
|
+
ref: "lendMenuInstance",
|
|
91
|
+
"user-id": n.userId,
|
|
92
|
+
"show-m-g-upsell-link": n.showMGUpsellLink,
|
|
93
|
+
"countries-not-lent-to-url": n.countriesNotLentToUrl,
|
|
94
|
+
"use-mobile-mega-menu": !0,
|
|
95
|
+
"search-suggestions": n.searchSuggestions,
|
|
96
|
+
"app-origin": n.appOrigin,
|
|
97
|
+
onLoadLendMenuData: t[3] || (t[3] = (e) => u.$emit("load-lend-menu-data")),
|
|
98
|
+
onLoadSearchData: t[4] || (t[4] = (e) => u.$emit("load-search-data")),
|
|
99
|
+
onSearchSubmit: t[5] || (t[5] = (e) => u.$emit("search-submit", e))
|
|
100
|
+
}, null, 8, ["user-id", "show-m-g-upsell-link", "countries-not-lent-to-url", "search-suggestions", "app-origin"])
|
|
101
|
+
]),
|
|
61
102
|
_: 1
|
|
62
|
-
}
|
|
63
|
-
|
|
103
|
+
}),
|
|
104
|
+
o(p, {
|
|
64
105
|
class: "link-bar__search tw-min-w-0 tw-hidden md:tw-block",
|
|
65
|
-
"search-suggestions":
|
|
66
|
-
"app-origin":
|
|
67
|
-
"is-mobile":
|
|
68
|
-
onLoadSearchData: t[
|
|
69
|
-
onSearchSubmit: t[
|
|
106
|
+
"search-suggestions": n.searchSuggestions,
|
|
107
|
+
"app-origin": n.appOrigin,
|
|
108
|
+
"is-mobile": n.isMobile,
|
|
109
|
+
onLoadSearchData: t[7] || (t[7] = (e) => u.$emit("load-search-data")),
|
|
110
|
+
onSearchSubmit: t[8] || (t[8] = (e) => u.$emit("search-submit", e))
|
|
70
111
|
}, null, 8, ["search-suggestions", "app-origin", "is-mobile"]),
|
|
71
|
-
|
|
72
|
-
(
|
|
73
|
-
key:
|
|
74
|
-
href:
|
|
112
|
+
i("div", K, [
|
|
113
|
+
(l(!0), s(f, null, U(a.visiblePrimaryLinks, (e) => (l(), s("a", {
|
|
114
|
+
key: e.id,
|
|
115
|
+
href: e.href,
|
|
75
116
|
class: "header-link tw-hidden md:tw-block",
|
|
76
|
-
"data-testid": `header-link-${
|
|
77
|
-
onClick: (
|
|
78
|
-
},
|
|
79
|
-
|
|
80
|
-
"
|
|
81
|
-
|
|
82
|
-
"
|
|
83
|
-
"
|
|
84
|
-
"dropdown-icon": e.mdiChevronDown,
|
|
85
|
-
"base-class": "tw-py-1",
|
|
86
|
-
"send-link-position": "",
|
|
87
|
-
onOnHover: e.handleOnHover,
|
|
88
|
-
onMouseleave: t[6] || (t[6] = (n) => e.handleMouseOut("aboutLink")),
|
|
89
|
-
onUserTap: e.handleTouchStart
|
|
117
|
+
"data-testid": `header-link-${e.id}`,
|
|
118
|
+
onClick: (_) => a.onPrimaryClick(e)
|
|
119
|
+
}, g(e.label), 9, j))), 128)),
|
|
120
|
+
o(c, {
|
|
121
|
+
class: "tw-hidden md:tw-flex",
|
|
122
|
+
"panel-id": "header-basic-menu-about",
|
|
123
|
+
variant: "card",
|
|
124
|
+
onOpen: t[9] || (t[9] = (e) => a.track("hover-About-menu", "About"))
|
|
90
125
|
}, {
|
|
91
|
-
default:
|
|
92
|
-
|
|
93
|
-
|
|
126
|
+
default: d(({ trigger: e }) => [
|
|
127
|
+
i("button", k(e, {
|
|
128
|
+
type: "button",
|
|
129
|
+
class: "header-link menu-trigger tw-p-0 tw-py-1 tw-flex tw-items-center"
|
|
130
|
+
}), [
|
|
131
|
+
t[13] || (t[13] = b(" About ")),
|
|
132
|
+
o(w, {
|
|
133
|
+
class: "chevron tw-inline tw-w-3 tw-ml-0.5",
|
|
134
|
+
icon: a.mdiChevronDown
|
|
135
|
+
}, null, 8, ["icon"])
|
|
136
|
+
], 16)
|
|
137
|
+
]),
|
|
138
|
+
panel: d(({ close: e }) => [
|
|
139
|
+
o(x, {
|
|
140
|
+
"is-mobile": n.isMobile,
|
|
141
|
+
onClosingMenu: e
|
|
142
|
+
}, null, 8, ["is-mobile", "onClosingMenu"])
|
|
143
|
+
]),
|
|
94
144
|
_: 1
|
|
95
|
-
}
|
|
96
|
-
|
|
145
|
+
}),
|
|
146
|
+
n.loggedIn ? m("", !0) : (l(), s("a", {
|
|
97
147
|
key: 0,
|
|
98
|
-
href:
|
|
148
|
+
href: n.loginUrl,
|
|
99
149
|
class: "header-link",
|
|
100
150
|
"data-testid": "header-login",
|
|
101
|
-
onClick: t[
|
|
102
|
-
}, "Log in", 8,
|
|
103
|
-
|
|
104
|
-
style:
|
|
151
|
+
onClick: t[10] || (t[10] = (...e) => a.onLoginClick && a.onLoginClick(...e))
|
|
152
|
+
}, "Log in", 8, P)),
|
|
153
|
+
O(i("a", {
|
|
154
|
+
style: h(n.isBasketDataLoading ? { display: "var(--basket-display, flex)" } : void 0),
|
|
105
155
|
href: "/basket",
|
|
106
156
|
class: "header-link tw-flex tw-items-center",
|
|
107
157
|
"data-testid": "header-basket",
|
|
108
|
-
onClick: t[
|
|
158
|
+
onClick: t[11] || (t[11] = (...e) => a.onBasketClick && a.onBasketClick(...e))
|
|
109
159
|
}, [
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
])) : (
|
|
115
|
-
|
|
160
|
+
i("span", E, [
|
|
161
|
+
i("span", R, [
|
|
162
|
+
n.isBasketDataLoading ? (l(), s("span", z, [
|
|
163
|
+
o(v)
|
|
164
|
+
])) : (l(), s(f, { key: 1 }, [
|
|
165
|
+
b(g(n.basketCount), 1)
|
|
116
166
|
], 64))
|
|
117
167
|
]),
|
|
118
|
-
t[
|
|
168
|
+
t[14] || (t[14] = b(" Basket "))
|
|
119
169
|
]),
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
icon:
|
|
170
|
+
i("span", F, [
|
|
171
|
+
n.isBasketDataLoading ? m("", !0) : (l(), s("span", G, g(n.basketCount), 1)),
|
|
172
|
+
o(w, {
|
|
173
|
+
icon: a.mdiBriefcase,
|
|
124
174
|
class: "tw-w-4 tw-h-4 tw-pointer-events-none"
|
|
125
175
|
}, null, 8, ["icon"]),
|
|
126
|
-
t[
|
|
176
|
+
t[15] || (t[15] = i("span", { class: "tw-sr-only" }, "Basket", -1))
|
|
127
177
|
])
|
|
128
178
|
], 4), [
|
|
129
|
-
[
|
|
179
|
+
[N, n.basketCount > 0 || n.isBasketDataLoading]
|
|
130
180
|
]),
|
|
131
|
-
|
|
132
|
-
|
|
181
|
+
i("div", q, [
|
|
182
|
+
o(B, {
|
|
133
183
|
variant: "secondary",
|
|
134
184
|
href: "/donate/supportus",
|
|
135
185
|
class: "tw-whitespace-nowrap",
|
|
136
186
|
"data-testid": "header-support-kiva",
|
|
137
|
-
onClick:
|
|
187
|
+
onClick: a.onSupportKivaClick
|
|
138
188
|
}, {
|
|
139
|
-
default:
|
|
140
|
-
|
|
189
|
+
default: d(() => t[16] || (t[16] = [
|
|
190
|
+
b(" Support Kiva ")
|
|
141
191
|
])),
|
|
142
192
|
_: 1
|
|
143
193
|
}, 8, ["onClick"])
|
|
144
194
|
]),
|
|
145
|
-
|
|
195
|
+
n.loggedIn ? (l(), y(c, {
|
|
146
196
|
key: 1,
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
197
|
+
"panel-id": "header-basic-menu-my-kiva",
|
|
198
|
+
variant: "card",
|
|
199
|
+
onOpen: t[12] || (t[12] = (e) => a.track("hover-User-menu", "User"))
|
|
200
|
+
}, {
|
|
201
|
+
default: d(({ trigger: e }) => [
|
|
202
|
+
i("button", k(e, {
|
|
203
|
+
type: "button",
|
|
204
|
+
"aria-label": "My Kiva menu",
|
|
205
|
+
"data-testid": "header-avatar-menu",
|
|
206
|
+
class: "menu-trigger tw-p-0 tw-py-1 tw-flex tw-items-center tw-gap-1 tw-cursor-pointer",
|
|
207
|
+
style: n.isUserDataLoading ? { display: "var(--user-loading-display, flex)" } : void 0
|
|
208
|
+
}), [
|
|
209
|
+
n.isUserDataLoading ? (l(), s("span", H, [
|
|
210
|
+
o(v)
|
|
211
|
+
])) : (l(), s("span", J, g(a.formattedBalance), 1)),
|
|
212
|
+
a.avatarMode === "esi" ? (l(), y(w, {
|
|
213
|
+
key: 2,
|
|
214
|
+
icon: a.mdiAccountCircle,
|
|
215
|
+
class: "tw-w-3 tw-h-3 tw-text-primary",
|
|
216
|
+
"data-testid": "header-avatar-icon",
|
|
217
|
+
style: { display: "var(--user-avatar-legacy-display, inline-block)" }
|
|
218
|
+
}, null, 8, ["icon"])) : m("", !0),
|
|
219
|
+
a.avatarMode === "skeleton" ? (l(), s("span", Q, [
|
|
220
|
+
o(v)
|
|
221
|
+
])) : m("", !0),
|
|
222
|
+
a.avatarMode !== "skeleton" ? (l(), y(D, {
|
|
223
|
+
key: 4,
|
|
224
|
+
class: "tw-w-3 tw-h-3",
|
|
225
|
+
"data-testid": a.avatarMode === "esi" ? "header-avatar-esi" : null,
|
|
226
|
+
style: h(a.avatarMode === "esi" ? { display: "var(--user-avatar-display, block)" } : void 0),
|
|
227
|
+
"lender-name": n.lenderName,
|
|
228
|
+
"lender-image-url": n.lenderImageUrl,
|
|
229
|
+
"show-css-placeholder": a.avatarMode === "esi",
|
|
230
|
+
"use-icon-fallback": "",
|
|
231
|
+
"is-small": ""
|
|
232
|
+
}, null, 8, ["data-testid", "style", "lender-name", "lender-image-url", "show-css-placeholder"])) : m("", !0)
|
|
233
|
+
], 16)
|
|
234
|
+
]),
|
|
235
|
+
panel: d(({ close: e }) => [
|
|
236
|
+
o(S, {
|
|
237
|
+
"logged-in": n.loggedIn,
|
|
238
|
+
"user-id": n.userId,
|
|
239
|
+
"is-borrower": n.isBorrower,
|
|
240
|
+
"is-trustee": n.isTrustee,
|
|
241
|
+
"trustee-id": n.trusteeId,
|
|
242
|
+
"most-recent-borrowed-loan-id": n.mostRecentBorrowedLoanId,
|
|
243
|
+
"my-dashboard-url": n.myDashboardUrl,
|
|
244
|
+
"is-mobile": n.isMobile,
|
|
245
|
+
onClosingMenu: e
|
|
246
|
+
}, null, 8, ["logged-in", "user-id", "is-borrower", "is-trustee", "trustee-id", "most-recent-borrowed-loan-id", "my-dashboard-url", "is-mobile", "onClosingMenu"])
|
|
247
|
+
]),
|
|
248
|
+
_: 1
|
|
249
|
+
})) : m("", !0)
|
|
250
|
+
]),
|
|
251
|
+
t[17] || (t[17] = i("div", {
|
|
252
|
+
class: "backdrop",
|
|
253
|
+
"aria-hidden": "true"
|
|
254
|
+
}, null, -1))
|
|
255
|
+
], 12, V);
|
|
182
256
|
}
|
|
183
|
-
const
|
|
257
|
+
const ne = /* @__PURE__ */ T(I, [["render", W], ["__scopeId", "data-v-816544c3"]]);
|
|
184
258
|
export {
|
|
185
|
-
|
|
259
|
+
ne as default
|
|
186
260
|
};
|