docthub-core-components 3.0.0 → 3.2.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/components/overrides/ui/auto-complete.js +466 -0
- package/dist/components/overrides/ui/autocomplete-checkbox.js +491 -0
- package/dist/components/overrides/ui/chips/doct-chip.js +157 -0
- package/dist/components/overrides/ui/circular-progress.js +32 -0
- package/dist/components/overrides/ui/composed/address-form-section.js +67 -0
- package/dist/components/overrides/ui/composed/contact-form-section.js +56 -0
- package/dist/components/overrides/ui/composed/search-filter-section.js +132 -0
- package/dist/components/overrides/ui/composed/user-registration-section.js +77 -0
- package/dist/components/overrides/ui/currencyInput/currency-input.js +69 -0
- package/dist/components/overrides/ui/doct-animation-loader.js +13 -0
- package/dist/components/overrides/ui/expandable-card.js +115 -0
- package/dist/components/overrides/ui/footer/doct-footer.js +35 -0
- package/dist/components/overrides/ui/footer/footer-desktop.js +92 -0
- package/dist/components/overrides/ui/footer/footer-mobile.js +123 -0
- package/dist/components/overrides/ui/footer/footer-routes.js +87 -0
- package/dist/components/overrides/ui/footer/footer-shared.js +137 -0
- package/dist/components/overrides/ui/footer/presets.js +269 -0
- package/dist/components/overrides/ui/inputs/labeled-input.js +92 -0
- package/dist/components/overrides/ui/inputs/otp-input.js +101 -0
- package/dist/components/overrides/ui/inputs/password-input.js +77 -0
- package/dist/components/overrides/ui/inputs/phone-input.js +336 -0
- package/dist/components/overrides/ui/navigation-menu/doct-navigation-menu.js +22 -0
- package/dist/components/overrides/ui/navigation-menu/individual-nav-routes.js +46 -0
- package/dist/components/overrides/ui/navigation-menu/individual-navigation-menu-desktop.js +109 -0
- package/dist/components/overrides/ui/navigation-menu/individual-navigation-menu-mobile.js +231 -0
- package/dist/components/overrides/ui/navigation-menu/individual-navigation-menu.js +44 -0
- package/dist/components/overrides/ui/navigation-menu/nav-env.js +64 -0
- package/dist/components/overrides/ui/navigation-menu/navigation-menu-adapter.js +55 -0
- package/dist/components/overrides/ui/navigation-menu/navigation-menu-internal.js +36 -0
- package/dist/components/overrides/ui/navigation-menu/organization-nav-routes.js +34 -0
- package/dist/components/overrides/ui/navigation-menu/organization-navigation-menu-desktop.js +109 -0
- package/dist/components/overrides/ui/navigation-menu/organization-navigation-menu-mobile.js +231 -0
- package/dist/components/overrides/ui/navigation-menu/organization-navigation-menu.js +44 -0
- package/dist/components/overrides/ui/navigation-menu/presets.js +238 -0
- package/dist/components/overrides/ui/navigation-menu/types.js +6 -0
- package/dist/components/overrides/ui/pickers/date-picker-field.js +361 -0
- package/dist/components/overrides/ui/pickers/date-range-picker-field.js +288 -0
- package/dist/components/overrides/ui/pickers/day-picker-bounds.js +38 -0
- package/dist/components/overrides/ui/pickers/select-field.js +158 -0
- package/dist/components/overrides/ui/search/auto-complete.js +64 -0
- package/dist/components/overrides/ui/search/search-input.js +65 -0
- package/dist/components/overrides/ui/showcase/component-section.js +45 -0
- package/dist/components/ui/alert.js +94 -0
- package/dist/components/ui/avatar.js +69 -0
- package/dist/components/ui/badge.js +37 -0
- package/dist/components/ui/breadcrumb.js +117 -0
- package/dist/components/ui/button.js +223 -0
- package/dist/components/ui/calendar.js +100 -0
- package/dist/components/ui/checkbox.js +57 -0
- package/dist/components/ui/collapsible.js +25 -0
- package/dist/components/ui/command.js +132 -0
- package/dist/components/ui/dialog.js +230 -0
- package/dist/components/ui/drawer.js +119 -0
- package/dist/components/ui/dropdown-menu.js +216 -0
- package/dist/components/ui/input.js +48 -0
- package/dist/components/ui/label.js +22 -0
- package/dist/components/ui/popover.js +181 -0
- package/dist/components/ui/progress.js +91 -0
- package/dist/components/ui/radio-group.js +49 -0
- package/dist/components/ui/select.js +169 -0
- package/dist/components/ui/skeleton.js +91 -0
- package/dist/components/ui/spinner.js +32 -0
- package/dist/components/ui/tabs.js +68 -0
- package/dist/components/ui/textarea.js +73 -0
- package/dist/components/ui/timeline.js +177 -0
- package/dist/components/ui/toast.js +82 -0
- package/dist/components/ui/tooltip.js +91 -0
- package/dist/components/ui/typography.js +213 -0
- package/dist/hooks/use-exclusive-dropdown.js +53 -0
- package/dist/hooks/use-mobile.js +19 -0
- package/dist/hooks/useAutocompleteCheckbox.js +204 -0
- package/dist/index.js +187 -0
- package/dist/lib/dropdown-manager.js +17 -0
- package/dist/lib/get-floating-dropdown-position.js +32 -0
- package/dist/lib/get-scroll-parents.js +20 -0
- package/dist/lib/slot.js +40 -0
- package/dist/lib/utils.js +9 -0
- package/dist/src/components/overrides/ui/autocomplete-checkbox.d.ts +16 -1
- package/dist/style.css +1 -1
- package/dist/util/getInputClasses.js +19 -0
- package/package.json +5 -5
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as s, jsxs as u } from "react/jsx-runtime";
|
|
3
|
+
import { c as v } from "react-compiler-runtime";
|
|
4
|
+
import * as P from "react";
|
|
5
|
+
import { DoctTypography as F } from "../../../ui/typography.js";
|
|
6
|
+
import { cn as I } from "../../../../lib/utils.js";
|
|
7
|
+
import { FooterBrandBlock as L, FooterCopyright as B, FooterNavLink as R, SeeAllLinkList as T } from "./footer-shared.js";
|
|
8
|
+
function q(c) {
|
|
9
|
+
const e = v(28), {
|
|
10
|
+
brand: t,
|
|
11
|
+
columns: o,
|
|
12
|
+
platformPolicies: a,
|
|
13
|
+
enterprisePolicies: l,
|
|
14
|
+
copyrightText: i,
|
|
15
|
+
className: n
|
|
16
|
+
} = c, [k, A] = P.useState(null);
|
|
17
|
+
if (!o.length)
|
|
18
|
+
return null;
|
|
19
|
+
let r;
|
|
20
|
+
e[0] !== n ? (r = I("mt-auto w-full border-t border-black/8 bg-[#F5FBFD]", n), e[0] = n, e[1] = r) : r = e[1];
|
|
21
|
+
let d;
|
|
22
|
+
e[2] !== t ? (d = /* @__PURE__ */ s("div", { className: "min-w-[175px] flex-[1.2] xl:min-w-[175px]", children: /* @__PURE__ */ s(L, { brand: t, variant: "desktop" }) }), e[2] = t, e[3] = d) : d = e[3];
|
|
23
|
+
let f;
|
|
24
|
+
if (e[4] !== o || e[5] !== k) {
|
|
25
|
+
let g;
|
|
26
|
+
e[7] !== k ? (g = (y) => /* @__PURE__ */ s("div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ s("div", { className: "flex flex-col gap-5 pb-4", children: y.sections.map((w, C) => /* @__PURE__ */ s("div", { className: I(C > 0 && "border-t border-black/8 pt-4"), children: /* @__PURE__ */ s(V, { section: w, expandedSeeAllSectionId: k, onSeeAllExpandChange: A }) }, w.id)) }) }, y.id), e[7] = k, e[8] = g) : g = e[8], f = o.map(g), e[4] = o, e[5] = k, e[6] = f;
|
|
27
|
+
} else
|
|
28
|
+
f = e[6];
|
|
29
|
+
let p;
|
|
30
|
+
e[9] !== d || e[10] !== f ? (p = /* @__PURE__ */ u("div", { className: "flex gap-4 py-6 xl:gap-6", children: [
|
|
31
|
+
d,
|
|
32
|
+
f
|
|
33
|
+
] }), e[9] = d, e[10] = f, e[11] = p) : p = e[11];
|
|
34
|
+
let m;
|
|
35
|
+
e[12] !== a ? (m = /* @__PURE__ */ s(E, { title: "PLATFORM POLICIES", policies: a }), e[12] = a, e[13] = m) : m = e[13];
|
|
36
|
+
let x;
|
|
37
|
+
e[14] !== l ? (x = /* @__PURE__ */ s(E, { title: "ENTERPRISE POLICIES", policies: l }), e[14] = l, e[15] = x) : x = e[15];
|
|
38
|
+
let h;
|
|
39
|
+
e[16] !== m || e[17] !== x ? (h = /* @__PURE__ */ u("div", { className: "flex items-start justify-between border-t border-black/8 py-4", children: [
|
|
40
|
+
m,
|
|
41
|
+
x
|
|
42
|
+
] }), e[16] = m, e[17] = x, e[18] = h) : h = e[18];
|
|
43
|
+
let b;
|
|
44
|
+
e[19] !== i ? (b = /* @__PURE__ */ s(B, { text: i, isMobile: !1, className: "py-2" }), e[19] = i, e[20] = b) : b = e[20];
|
|
45
|
+
let N;
|
|
46
|
+
e[21] !== p || e[22] !== h || e[23] !== b ? (N = /* @__PURE__ */ u("div", { className: "mx-auto w-full max-w-[1160px]", children: [
|
|
47
|
+
p,
|
|
48
|
+
h,
|
|
49
|
+
b
|
|
50
|
+
] }), e[21] = p, e[22] = h, e[23] = b, e[24] = N) : N = e[24];
|
|
51
|
+
let S;
|
|
52
|
+
return e[25] !== r || e[26] !== N ? (S = /* @__PURE__ */ s("footer", { className: r, children: N }), e[25] = r, e[26] = N, e[27] = S) : S = e[27], S;
|
|
53
|
+
}
|
|
54
|
+
function V(c) {
|
|
55
|
+
const e = v(11), {
|
|
56
|
+
section: t,
|
|
57
|
+
expandedSeeAllSectionId: o,
|
|
58
|
+
onSeeAllExpandChange: a
|
|
59
|
+
} = c;
|
|
60
|
+
let l;
|
|
61
|
+
e[0] !== t.title ? (l = /* @__PURE__ */ s(F, { variant: "body3", weight: "bold", className: "px-1.5 py-2.5 mb-1 !text-[#313233]", children: t.title }), e[0] = t.title, e[1] = l) : l = e[1];
|
|
62
|
+
let i;
|
|
63
|
+
e[2] !== o || e[3] !== a || e[4] !== t.id || e[5] !== t.links || e[6] !== t.sectionVariant ? (i = /* @__PURE__ */ s(T, { links: t.links, sectionVariant: t.sectionVariant, linkClassName: "text-black/68", sectionId: t.id, expandedSectionId: o, onExpandChange: a }), e[2] = o, e[3] = a, e[4] = t.id, e[5] = t.links, e[6] = t.sectionVariant, e[7] = i) : i = e[7];
|
|
64
|
+
let n;
|
|
65
|
+
return e[8] !== l || e[9] !== i ? (n = /* @__PURE__ */ u("div", { className: "flex flex-col", children: [
|
|
66
|
+
l,
|
|
67
|
+
i
|
|
68
|
+
] }), e[8] = l, e[9] = i, e[10] = n) : n = e[10], n;
|
|
69
|
+
}
|
|
70
|
+
function E(c) {
|
|
71
|
+
const e = v(9), {
|
|
72
|
+
title: t,
|
|
73
|
+
policies: o
|
|
74
|
+
} = c;
|
|
75
|
+
let a;
|
|
76
|
+
e[0] !== t ? (a = /* @__PURE__ */ s(F, { variant: "body3", weight: "bold", className: "py-2 !text-[#313233]", children: t }), e[0] = t, e[1] = a) : a = e[1];
|
|
77
|
+
let l;
|
|
78
|
+
e[2] !== o ? (l = o.map(j), e[2] = o, e[3] = l) : l = e[3];
|
|
79
|
+
let i;
|
|
80
|
+
e[4] !== l ? (i = /* @__PURE__ */ s("div", { className: "flex flex-wrap items-start gap-6", children: l }), e[4] = l, e[5] = i) : i = e[5];
|
|
81
|
+
let n;
|
|
82
|
+
return e[6] !== a || e[7] !== i ? (n = /* @__PURE__ */ u("div", { className: "flex flex-col items-start", children: [
|
|
83
|
+
a,
|
|
84
|
+
i
|
|
85
|
+
] }), e[6] = a, e[7] = i, e[8] = n) : n = e[8], n;
|
|
86
|
+
}
|
|
87
|
+
function j(c) {
|
|
88
|
+
return /* @__PURE__ */ s(R, { link: c, className: "px-0 py-1 text-black/56" }, c.id);
|
|
89
|
+
}
|
|
90
|
+
export {
|
|
91
|
+
q as FooterDesktop
|
|
92
|
+
};
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as p, jsxs as A } from "react/jsx-runtime";
|
|
3
|
+
import { c as y } from "react-compiler-runtime";
|
|
4
|
+
import { Collapsible as I } from "@base-ui/react/collapsible";
|
|
5
|
+
import { ChevronDown as P } from "lucide-react";
|
|
6
|
+
import * as _ from "react";
|
|
7
|
+
import { DoctTypography as V } from "../../../ui/typography.js";
|
|
8
|
+
import { cn as N } from "../../../../lib/utils.js";
|
|
9
|
+
import { FooterBrandBlock as $, FooterCopyright as j, SeeAllLinkList as B } from "./footer-shared.js";
|
|
10
|
+
function J(u) {
|
|
11
|
+
const e = y(30), {
|
|
12
|
+
brand: t,
|
|
13
|
+
columns: n,
|
|
14
|
+
platformPolicies: i,
|
|
15
|
+
enterprisePolicies: o,
|
|
16
|
+
copyrightText: f,
|
|
17
|
+
className: h
|
|
18
|
+
} = u, [l, m] = _.useState(null);
|
|
19
|
+
let k;
|
|
20
|
+
e[0] !== n ? (k = n.flatMap(D), e[0] = n, e[1] = k) : k = e[1];
|
|
21
|
+
const g = k;
|
|
22
|
+
if (!g.length)
|
|
23
|
+
return null;
|
|
24
|
+
let x;
|
|
25
|
+
e[2] !== h ? (x = N("mt-auto w-full border-y border-black/8 bg-[#F5FBFD]", h), e[2] = h, e[3] = x) : x = e[3];
|
|
26
|
+
let s;
|
|
27
|
+
e[4] !== t ? (s = /* @__PURE__ */ p($, { brand: t, variant: "mobile" }), e[4] = t, e[5] = s) : s = e[5];
|
|
28
|
+
let S;
|
|
29
|
+
if (e[6] !== l || e[7] !== g) {
|
|
30
|
+
let w;
|
|
31
|
+
e[9] !== l ? (w = (E) => /* @__PURE__ */ p(M, { section: E, expandedSeeAllSectionId: l, onSeeAllExpandChange: m }, E.id), e[9] = l, e[10] = w) : w = e[10], S = g.map(w), e[6] = l, e[7] = g, e[8] = S;
|
|
32
|
+
} else
|
|
33
|
+
S = e[8];
|
|
34
|
+
let a;
|
|
35
|
+
e[11] !== l || e[12] !== i ? (a = /* @__PURE__ */ p(F, { title: "Platform Policies", policies: i, expandedSeeAllSectionId: l, onSeeAllExpandChange: m }), e[11] = l, e[12] = i, e[13] = a) : a = e[13];
|
|
36
|
+
let c;
|
|
37
|
+
e[14] !== o || e[15] !== l ? (c = /* @__PURE__ */ p(F, { title: "Enterprise Policies", policies: o, expandedSeeAllSectionId: l, onSeeAllExpandChange: m }), e[14] = o, e[15] = l, e[16] = c) : c = e[16];
|
|
38
|
+
let r;
|
|
39
|
+
e[17] !== S || e[18] !== a || e[19] !== c ? (r = /* @__PURE__ */ A("div", { className: "mt-4 w-full", children: [
|
|
40
|
+
S,
|
|
41
|
+
a,
|
|
42
|
+
c
|
|
43
|
+
] }), e[17] = S, e[18] = a, e[19] = c, e[20] = r) : r = e[20];
|
|
44
|
+
let b;
|
|
45
|
+
e[21] !== f ? (b = /* @__PURE__ */ p(j, { text: f, isMobile: !0, className: "mt-2 pt-1" }), e[21] = f, e[22] = b) : b = e[22];
|
|
46
|
+
let d;
|
|
47
|
+
e[23] !== s || e[24] !== r || e[25] !== b ? (d = /* @__PURE__ */ A("div", { className: "mx-auto w-full max-w-6xl px-4 py-3", children: [
|
|
48
|
+
s,
|
|
49
|
+
r,
|
|
50
|
+
b
|
|
51
|
+
] }), e[23] = s, e[24] = r, e[25] = b, e[26] = d) : d = e[26];
|
|
52
|
+
let C;
|
|
53
|
+
return e[27] !== x || e[28] !== d ? (C = /* @__PURE__ */ p("footer", { className: x, children: d }), e[27] = x, e[28] = d, e[29] = C) : C = e[29], C;
|
|
54
|
+
}
|
|
55
|
+
function D(u) {
|
|
56
|
+
return u.sections;
|
|
57
|
+
}
|
|
58
|
+
function v(u) {
|
|
59
|
+
const e = y(22), {
|
|
60
|
+
title: t,
|
|
61
|
+
links: n,
|
|
62
|
+
sectionVariant: i,
|
|
63
|
+
linkClassName: o,
|
|
64
|
+
sectionId: f,
|
|
65
|
+
expandedSeeAllSectionId: h,
|
|
66
|
+
onSeeAllExpandChange: l
|
|
67
|
+
} = u, m = o === void 0 ? "w-full text-black/68" : o, [k, g] = _.useState(!1);
|
|
68
|
+
let x;
|
|
69
|
+
e[0] === Symbol.for("react.memo_cache_sentinel") ? (x = () => g(L), e[0] = x) : x = e[0];
|
|
70
|
+
let s;
|
|
71
|
+
e[1] !== t ? (s = /* @__PURE__ */ p(V, { as: "p", variant: "body3", weight: "bold", className: "text-black/68", children: t }), e[1] = t, e[2] = s) : s = e[2];
|
|
72
|
+
const S = k && "rotate-180";
|
|
73
|
+
let a;
|
|
74
|
+
e[3] !== S ? (a = N("h-5 w-5 shrink-0 text-neutral-56 transition-transform duration-200", S), e[3] = S, e[4] = a) : a = e[4];
|
|
75
|
+
let c;
|
|
76
|
+
e[5] !== a ? (c = /* @__PURE__ */ p(P, { className: a, "aria-hidden": "true" }), e[5] = a, e[6] = c) : c = e[6];
|
|
77
|
+
let r;
|
|
78
|
+
e[7] !== s || e[8] !== c ? (r = /* @__PURE__ */ A("button", { type: "button", className: "flex w-full items-center justify-between py-3.5", onClick: x, children: [
|
|
79
|
+
s,
|
|
80
|
+
c
|
|
81
|
+
] }), e[7] = s, e[8] = c, e[9] = r) : r = e[9];
|
|
82
|
+
let b;
|
|
83
|
+
e[10] === Symbol.for("react.memo_cache_sentinel") ? (b = N("pb-4", "overflow-hidden data-[closed]:animate-collapsible-up data-[open]:animate-collapsible-down"), e[10] = b) : b = e[10];
|
|
84
|
+
let d;
|
|
85
|
+
e[11] !== h || e[12] !== m || e[13] !== n || e[14] !== l || e[15] !== f || e[16] !== i ? (d = /* @__PURE__ */ p(I.Panel, { className: b, children: /* @__PURE__ */ p(B, { links: n, sectionVariant: i, linkClassName: m, className: "space-y-2", sectionId: f, expandedSectionId: h, onExpandChange: l }) }), e[11] = h, e[12] = m, e[13] = n, e[14] = l, e[15] = f, e[16] = i, e[17] = d) : d = e[17];
|
|
86
|
+
let C;
|
|
87
|
+
return e[18] !== k || e[19] !== r || e[20] !== d ? (C = /* @__PURE__ */ A(I.Root, { open: k, onOpenChange: g, className: "w-full border-t border-black/8", children: [
|
|
88
|
+
r,
|
|
89
|
+
d
|
|
90
|
+
] }), e[18] = k, e[19] = r, e[20] = d, e[21] = C) : C = e[21], C;
|
|
91
|
+
}
|
|
92
|
+
function L(u) {
|
|
93
|
+
return !u;
|
|
94
|
+
}
|
|
95
|
+
function M(u) {
|
|
96
|
+
const e = y(7), {
|
|
97
|
+
section: t,
|
|
98
|
+
expandedSeeAllSectionId: n,
|
|
99
|
+
onSeeAllExpandChange: i
|
|
100
|
+
} = u;
|
|
101
|
+
let o;
|
|
102
|
+
return e[0] !== n || e[1] !== i || e[2] !== t.id || e[3] !== t.links || e[4] !== t.sectionVariant || e[5] !== t.title ? (o = /* @__PURE__ */ p(v, { title: t.title, links: t.links, sectionVariant: t.sectionVariant, sectionId: t.id, expandedSeeAllSectionId: n, onSeeAllExpandChange: i }), e[0] = n, e[1] = i, e[2] = t.id, e[3] = t.links, e[4] = t.sectionVariant, e[5] = t.title, e[6] = o) : o = e[6], o;
|
|
103
|
+
}
|
|
104
|
+
function F(u) {
|
|
105
|
+
const e = y(9), {
|
|
106
|
+
title: t,
|
|
107
|
+
policies: n,
|
|
108
|
+
expandedSeeAllSectionId: i,
|
|
109
|
+
onSeeAllExpandChange: o
|
|
110
|
+
} = u;
|
|
111
|
+
let f;
|
|
112
|
+
if (e[0] !== t) {
|
|
113
|
+
let m;
|
|
114
|
+
e[2] === Symbol.for("react.memo_cache_sentinel") ? (m = /\s+/g, e[2] = m) : m = e[2], f = t.toLowerCase().replace(m, "-"), e[0] = t, e[1] = f;
|
|
115
|
+
} else
|
|
116
|
+
f = e[1];
|
|
117
|
+
const h = f;
|
|
118
|
+
let l;
|
|
119
|
+
return e[3] !== i || e[4] !== o || e[5] !== n || e[6] !== h || e[7] !== t ? (l = /* @__PURE__ */ p(v, { title: t, links: n, linkClassName: "w-full text-black/56", sectionId: h, expandedSeeAllSectionId: i, onSeeAllExpandChange: o }), e[3] = i, e[4] = o, e[5] = n, e[6] = h, e[7] = t, e[8] = l) : l = e[8], l;
|
|
120
|
+
}
|
|
121
|
+
export {
|
|
122
|
+
J as FooterMobile
|
|
123
|
+
};
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { resolveNavEnv as e } from "../navigation-menu/nav-env.js";
|
|
3
|
+
const t = {
|
|
4
|
+
jobs: "https://jobs.dochub.in/",
|
|
5
|
+
courses: "https://courses.dochub.in/",
|
|
6
|
+
events: "https://events.dochub.in/",
|
|
7
|
+
logbook: "https://dev.dochub.in/logbook",
|
|
8
|
+
"resume-builder": "https://dev.dochub.in/resume-builder",
|
|
9
|
+
exhibitor: "https://dev.dochub.in/healthcare-career-app/",
|
|
10
|
+
healthcareNews: "https://news.dochub.in/",
|
|
11
|
+
coursePages: "https://dev.dochub.in/course-pages/",
|
|
12
|
+
jobRolePages: "https://dev.dochub.in/jobrole-pages/",
|
|
13
|
+
recruiterSolution: "https://dev.dochub.in/recruiter/",
|
|
14
|
+
instituteSolution: "https://dev.dochub.in/institute/",
|
|
15
|
+
eventOrganizerSolution: "https://dev.dochub.in/event-organizer/",
|
|
16
|
+
membershipManagement: "https://dev.dochub.in/membership-management/",
|
|
17
|
+
qrCheckInApp: "https://dev.dochub.in/qr-check-in-app/",
|
|
18
|
+
enterpriseSolutions: "https://dev.dochub.in/enterprise-solutions/",
|
|
19
|
+
aboutUs: "https://dev.dochub.in/about-us/",
|
|
20
|
+
mediaReleases: "https://dev.dochub.in/media-releases/",
|
|
21
|
+
contactUs: "https://dev.dochub.in/contact-us/",
|
|
22
|
+
healthcareCareerApp: "https://dev.dochub.in/healthcare-career-app/",
|
|
23
|
+
docthubHome: "https://dev.dochub.in/",
|
|
24
|
+
termsConditions: "https://dev.dochub.in/terms-conditions/",
|
|
25
|
+
privacyPolicy: "https://dev.dochub.in/privacy-policy/",
|
|
26
|
+
cookiesPolicy: "https://dev.dochub.in/cookies-policy/",
|
|
27
|
+
paymentPolicy: "https://dev.dochub.in/payment-policy/",
|
|
28
|
+
disclaimerPolicy: "https://dev.dochub.in/disclaimer-policy/",
|
|
29
|
+
blogs: "https://blogs.dochub.in/",
|
|
30
|
+
jobsDropYourResume: "https://jobs.dochub.in/drop-your-resume",
|
|
31
|
+
// Due to removing localization, `/en` is omitted from enterprise login/register URLs (QA + PROD).
|
|
32
|
+
enterpriseLogin: "https://enterprise.ibns.in/login/",
|
|
33
|
+
// When domain is changed to enterprise.dochub.in, update the URL
|
|
34
|
+
enterpriseRegister: "https://enterprise.ibns.in/register/",
|
|
35
|
+
enterpriseTermsConditions: "https://enterprise.dochub.in/enterprise-terms-conditions/",
|
|
36
|
+
enterprisePrivacyPolicy: "https://enterprise.dochub.in/enterprise-privacy-policy/",
|
|
37
|
+
enterprisePaymentPolicy: "https://enterprise.dochub.in/enterprise-payment-policy/",
|
|
38
|
+
libraryPlaceholder: "#",
|
|
39
|
+
contactSupportPlaceholder: "#",
|
|
40
|
+
courseAfter12thPlaceholder: "https://dev.dochub.in/explore-courses-after-12th"
|
|
41
|
+
}, o = {
|
|
42
|
+
jobs: "https://jobs.docthub.com/",
|
|
43
|
+
courses: "https://courses.docthub.com/",
|
|
44
|
+
events: "https://events.docthub.com/",
|
|
45
|
+
logbook: "https://www.docthub.com/logbook",
|
|
46
|
+
"resume-builder": "https://www.docthub.com/resume-builder",
|
|
47
|
+
exhibitor: "https://www.docthub.com/healthcare-career-app/",
|
|
48
|
+
healthcareNews: "https://news.docthub.com/",
|
|
49
|
+
coursePages: "https://www.docthub.com/course-pages",
|
|
50
|
+
jobRolePages: "https://www.docthub.com/jobrole-pages",
|
|
51
|
+
recruiterSolution: "https://www.docthub.com/recruiter",
|
|
52
|
+
instituteSolution: "https://www.docthub.com/institute",
|
|
53
|
+
eventOrganizerSolution: "https://www.docthub.com/event-organizer",
|
|
54
|
+
membershipManagement: "https://www.docthub.com/membership-management",
|
|
55
|
+
qrCheckInApp: "https://www.docthub.com/qr-check-in-app",
|
|
56
|
+
enterpriseSolutions: "https://www.docthub.com/enterprise-solutions",
|
|
57
|
+
aboutUs: "https://www.docthub.com/about-us",
|
|
58
|
+
mediaReleases: "https://www.docthub.com/media-releases",
|
|
59
|
+
contactUs: "https://www.docthub.com/contact-us",
|
|
60
|
+
healthcareCareerApp: "https://www.docthub.com/healthcare-career-app",
|
|
61
|
+
docthubHome: "https://www.docthub.com/",
|
|
62
|
+
termsConditions: "https://www.docthub.com/terms-conditions",
|
|
63
|
+
privacyPolicy: "https://www.docthub.com/privacy-policy",
|
|
64
|
+
cookiesPolicy: "https://www.docthub.com/cookies-policy",
|
|
65
|
+
paymentPolicy: "https://www.docthub.com/payment-policy",
|
|
66
|
+
disclaimerPolicy: "https://www.docthub.com/disclaimer-policy",
|
|
67
|
+
blogs: "https://blogs.docthub.com/",
|
|
68
|
+
jobsDropYourResume: "https://jobs.docthub.com/drop-your-resume",
|
|
69
|
+
// Due to removing localization, `/en` is omitted from enterprise login/register URLs (QA + PROD).
|
|
70
|
+
enterpriseLogin: "https://enterprise.docthub.com/login/",
|
|
71
|
+
enterpriseRegister: "https://enterprise.docthub.com/register/",
|
|
72
|
+
enterpriseTermsConditions: "https://enterprise.docthub.com/enterprise-terms-conditions/",
|
|
73
|
+
enterprisePrivacyPolicy: "https://enterprise.docthub.com/enterprise-privacy-policy/",
|
|
74
|
+
enterprisePaymentPolicy: "https://enterprise.docthub.com/enterprise-payment-policy/",
|
|
75
|
+
libraryPlaceholder: "#",
|
|
76
|
+
contactSupportPlaceholder: "#",
|
|
77
|
+
courseAfter12thPlaceholder: "https://www.docthub.com/explore-courses-after-12th"
|
|
78
|
+
};
|
|
79
|
+
function c() {
|
|
80
|
+
return e() === "production" ? o : t;
|
|
81
|
+
}
|
|
82
|
+
e();
|
|
83
|
+
export {
|
|
84
|
+
o as FOOTER_ROUTES_PROD,
|
|
85
|
+
t as FOOTER_ROUTES_QA,
|
|
86
|
+
c as getFooterRoutes
|
|
87
|
+
};
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as a, jsxs as B } from "react/jsx-runtime";
|
|
3
|
+
import { c as y } from "react-compiler-runtime";
|
|
4
|
+
import { ChevronDown as F } from "lucide-react";
|
|
5
|
+
import * as j from "react";
|
|
6
|
+
import { DoctButton as I } from "../../../ui/button.js";
|
|
7
|
+
import { DoctTypography as C } from "../../../ui/typography.js";
|
|
8
|
+
import { cn as g } from "../../../../lib/utils.js";
|
|
9
|
+
function _(u) {
|
|
10
|
+
const e = y(11), {
|
|
11
|
+
link: t,
|
|
12
|
+
className: f
|
|
13
|
+
} = u, o = t.href ? "a" : "button", i = t.href ? void 0 : "button", l = t.href, c = t.onClick;
|
|
14
|
+
let n;
|
|
15
|
+
e[0] !== f ? (n = g("rounded-xl px-1.5 text-left transition-colors !text-[#4F5151]", "hover:text-[#0091af] active:text-[#007890]", "focus-visible:outline-none focus-visible:rounded-md focus-visible:border focus-visible:border-black/12", f), e[0] = f, e[1] = n) : n = e[1];
|
|
16
|
+
let d;
|
|
17
|
+
e[2] !== t.label ? (d = /* @__PURE__ */ a(C, { as: "p", variant: "textLabel3", weight: "medium", color: "inherit", children: t.label }), e[2] = t.label, e[3] = d) : d = e[3];
|
|
18
|
+
let r;
|
|
19
|
+
return e[4] !== o || e[5] !== t.href || e[6] !== t.onClick || e[7] !== i || e[8] !== n || e[9] !== d ? (r = /* @__PURE__ */ a(o, { type: i, href: l, onClick: c, className: n, children: d }), e[4] = o, e[5] = t.href, e[6] = t.onClick, e[7] = i, e[8] = n, e[9] = d, e[10] = r) : r = e[10], r;
|
|
20
|
+
}
|
|
21
|
+
const $ = {
|
|
22
|
+
default: 10,
|
|
23
|
+
compact: 6
|
|
24
|
+
};
|
|
25
|
+
function q(u) {
|
|
26
|
+
const e = y(25), {
|
|
27
|
+
links: t,
|
|
28
|
+
sectionVariant: f,
|
|
29
|
+
linkClassName: o,
|
|
30
|
+
className: i,
|
|
31
|
+
sectionId: l,
|
|
32
|
+
expandedSectionId: c,
|
|
33
|
+
onExpandChange: n
|
|
34
|
+
} = u, [d, r] = j.useState(!1), m = l !== void 0 && c !== void 0 && n !== void 0, s = m ? c === l : d;
|
|
35
|
+
let h;
|
|
36
|
+
e[0] !== s || e[1] !== m || e[2] !== n || e[3] !== l ? (h = () => {
|
|
37
|
+
m && l ? n(s ? null : l) : m || r(D);
|
|
38
|
+
}, e[0] = s, e[1] = m, e[2] = n, e[3] = l, e[4] = h) : h = e[4];
|
|
39
|
+
const x = h, b = f ? $[f] : void 0, p = b !== void 0 && t.length > b;
|
|
40
|
+
let v;
|
|
41
|
+
e[5] !== s || e[6] !== p || e[7] !== b || e[8] !== t ? (v = p && !s ? t.slice(0, b) : t, e[5] = s, e[6] = p, e[7] = b, e[8] = t, e[9] = v) : v = e[9];
|
|
42
|
+
const A = v;
|
|
43
|
+
let N;
|
|
44
|
+
e[10] !== i ? (N = g("flex flex-col gap-3", i), e[10] = i, e[11] = N) : N = e[11];
|
|
45
|
+
let k;
|
|
46
|
+
if (e[12] !== o || e[13] !== A) {
|
|
47
|
+
let S;
|
|
48
|
+
e[15] !== o ? (S = (E) => /* @__PURE__ */ a(_, { link: E, className: o }, E.id), e[15] = o, e[16] = S) : S = e[16], k = A.map(S), e[12] = o, e[13] = A, e[14] = k;
|
|
49
|
+
} else
|
|
50
|
+
k = e[14];
|
|
51
|
+
let w;
|
|
52
|
+
e[17] !== s || e[18] !== x || e[19] !== p ? (w = p ? /* @__PURE__ */ B("button", { type: "button", onClick: x, className: g("flex items-center gap-0.5 rounded-xl px-1.5 text-left transition-colors", "focus-visible:outline-none focus-visible:rounded-md focus-visible:border focus-visible:border-black/12"), "aria-expanded": s, children: [
|
|
53
|
+
/* @__PURE__ */ a(C, { variant: "textLabel3", weight: "medium", color: "inherit", children: s ? "See Less" : "See All" }),
|
|
54
|
+
/* @__PURE__ */ a(F, { className: g("h-4 w-4 shrink-0 transition-transform duration-200", s && "rotate-180"), "aria-hidden": "true" })
|
|
55
|
+
] }) : null, e[17] = s, e[18] = x, e[19] = p, e[20] = w) : w = e[20];
|
|
56
|
+
let L;
|
|
57
|
+
return e[21] !== N || e[22] !== k || e[23] !== w ? (L = /* @__PURE__ */ B("div", { className: N, children: [
|
|
58
|
+
k,
|
|
59
|
+
w
|
|
60
|
+
] }), e[21] = N, e[22] = k, e[23] = w, e[24] = L) : L = e[24], L;
|
|
61
|
+
}
|
|
62
|
+
function D(u) {
|
|
63
|
+
return !u;
|
|
64
|
+
}
|
|
65
|
+
function M(u) {
|
|
66
|
+
const e = y(8), {
|
|
67
|
+
appLink: t
|
|
68
|
+
} = u;
|
|
69
|
+
let f;
|
|
70
|
+
e[0] !== t ? (f = () => {
|
|
71
|
+
t.onClick ? t.onClick() : t.href && window.open(t.href, "_blank", "noopener,noreferrer");
|
|
72
|
+
}, e[0] = t, e[1] = f) : f = e[1];
|
|
73
|
+
const o = f;
|
|
74
|
+
let i;
|
|
75
|
+
e[2] !== t.icon ? (i = /* @__PURE__ */ a("span", { className: "flex h-5 w-5 items-center justify-center", children: t.icon }), e[2] = t.icon, e[3] = i) : i = e[3];
|
|
76
|
+
let l;
|
|
77
|
+
return e[4] !== t.label || e[5] !== o || e[6] !== i ? (l = /* @__PURE__ */ a(I, { variant: "primary", size: "medium", fullWidth: !0, className: "gap-2 items-center justify-center focus-visible:ring-brandBlue focus-visible:ring-offset-0", icon: i, onClick: o, children: t.label }), e[4] = t.label, e[5] = o, e[6] = i, e[7] = l) : l = e[7], l;
|
|
78
|
+
}
|
|
79
|
+
function H(u) {
|
|
80
|
+
const e = y(20), {
|
|
81
|
+
brand: t,
|
|
82
|
+
variant: f
|
|
83
|
+
} = u;
|
|
84
|
+
if (!t)
|
|
85
|
+
return null;
|
|
86
|
+
const {
|
|
87
|
+
logo: o,
|
|
88
|
+
logoSrc: i,
|
|
89
|
+
logoAlt: l,
|
|
90
|
+
tagline: c,
|
|
91
|
+
socialLinks: n,
|
|
92
|
+
appLinks: d
|
|
93
|
+
} = t, r = f === "mobile";
|
|
94
|
+
let m;
|
|
95
|
+
e[0] !== o || e[1] !== l || e[2] !== i ? (m = o ?? (i ? /* @__PURE__ */ a("img", { src: i, alt: l ?? "Brand", className: "h-[18px] w-auto", loading: "lazy" }) : null), e[0] = o, e[1] = l, e[2] = i, e[3] = m) : m = e[3];
|
|
96
|
+
let s;
|
|
97
|
+
e[4] !== m ? (s = /* @__PURE__ */ a("div", { className: "flex h-[33px] w-full items-center", children: m }), e[4] = m, e[5] = s) : s = e[5];
|
|
98
|
+
let h;
|
|
99
|
+
e[6] !== r || e[7] !== c ? (h = c ? /* @__PURE__ */ a(C, { as: "p", variant: "body3", weight: "regular", className: g("pt-3 pb-6 text-black/80", r ? "max-w-[260px]" : "max-w-[175px]"), children: c }) : null, e[6] = r, e[7] = c, e[8] = h) : h = e[8];
|
|
100
|
+
let x;
|
|
101
|
+
e[9] !== r || e[10] !== n ? (x = n != null && n.length ? /* @__PURE__ */ a("div", { className: g("flex items-center pb-4", r ? "gap-3" : "gap-1.5"), children: n.map((v) => /* @__PURE__ */ a("a", { href: v.href, "aria-label": v.ariaLabel, className: g("inline-flex items-center justify-center rounded-lg border border-black/8 bg-white", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brandBlue", r ? "h-9 w-9" : "h-7 w-7"), children: v.icon }, v.id)) }) : null, e[9] = r, e[10] = n, e[11] = x) : x = e[11];
|
|
102
|
+
let b;
|
|
103
|
+
e[12] !== d || e[13] !== r ? (b = d != null && d.length ? /* @__PURE__ */ B("div", { className: "w-full", children: [
|
|
104
|
+
/* @__PURE__ */ a(C, { as: "p", variant: "body3", weight: "bold", className: "py-4 text-black/80", children: "Get Career App" }),
|
|
105
|
+
/* @__PURE__ */ a("div", { className: g("flex w-full", r ? "flex-row gap-2" : "flex-col gap-1.5"), children: d.map(T) })
|
|
106
|
+
] }) : null, e[12] = d, e[13] = r, e[14] = b) : b = e[14];
|
|
107
|
+
let p;
|
|
108
|
+
return e[15] !== s || e[16] !== h || e[17] !== x || e[18] !== b ? (p = /* @__PURE__ */ B("div", { className: "flex h-full flex-col items-start", children: [
|
|
109
|
+
s,
|
|
110
|
+
h,
|
|
111
|
+
x,
|
|
112
|
+
b
|
|
113
|
+
] }), e[15] = s, e[16] = h, e[17] = x, e[18] = b, e[19] = p) : p = e[19], p;
|
|
114
|
+
}
|
|
115
|
+
function T(u) {
|
|
116
|
+
return /* @__PURE__ */ a(M, { appLink: u }, u.id);
|
|
117
|
+
}
|
|
118
|
+
function J(u) {
|
|
119
|
+
const e = y(8), {
|
|
120
|
+
text: t,
|
|
121
|
+
isMobile: f,
|
|
122
|
+
className: o
|
|
123
|
+
} = u, i = f ? "text-center" : "border-t border-black/8 text-center";
|
|
124
|
+
let l;
|
|
125
|
+
e[0] !== o || e[1] !== i ? (l = g(i, o), e[0] = o, e[1] = i, e[2] = l) : l = e[2];
|
|
126
|
+
let c;
|
|
127
|
+
e[3] !== t ? (c = /* @__PURE__ */ a(C, { as: "p", variant: "body4", weight: "regular", color: "#6C6E6F", className: "py-1", children: t }), e[3] = t, e[4] = c) : c = e[4];
|
|
128
|
+
let n;
|
|
129
|
+
return e[5] !== l || e[6] !== c ? (n = /* @__PURE__ */ a("div", { className: l, children: c }), e[5] = l, e[6] = c, e[7] = n) : n = e[7], n;
|
|
130
|
+
}
|
|
131
|
+
export {
|
|
132
|
+
M as FooterAppButton,
|
|
133
|
+
H as FooterBrandBlock,
|
|
134
|
+
J as FooterCopyright,
|
|
135
|
+
_ as FooterNavLink,
|
|
136
|
+
q as SeeAllLinkList
|
|
137
|
+
};
|