Files
enlight-lms/lms/public/frontend/assets/CourseCard.bf057db6.js
2024-01-10 21:36:02 +05:30

299 lines
6.7 KiB
JavaScript

import { _ as f } from "./UserAvatar.3cd4adb4.js";
import { s as g, B as v, U as y } from "./index.51e5b051.js";
import {
s,
u as r,
A as o,
K as i,
L as d,
E as t,
F as c,
B as m,
a2 as h,
C as n,
D as a,
z as x,
X as b,
a0 as k,
y as w,
} from "./frappe-ui.a747cf9c.js";
import { S as _ } from "./star.d358f014.js";
const C = {
key: 0,
class: "flex flex-col border border-gray-200 h-full rounded-md shadow-sm text-base overflow-auto",
style: { "min-height": "320px" },
},
B = { class: "flex relative top-4 left-4 w-fit" },
S = { class: "course-card-pills rounded-md border border-gray-200" },
z = { key: 0, class: "image-placeholder" },
N = { class: "flex flex-col flex-auto p-4" },
U = { class: "flex items-center justify-between mb-2" },
V = { key: 0, class: "flex items-center space-x-1 py-1" },
j = { key: 1, class: "flex items-center space-x-1 py-1" },
A = { key: 2, class: "flex items-center space-x-1 py-1" },
D = { key: 3 },
E = { class: "text-xl font-semibold" },
F = { class: "short-introduction" },
I = { key: 0, class: "w-full bg-gray-200 rounded-full h-1 mb-2" },
L = { key: 1, class: "text-sm mb-4" },
M = { class: "flex items-center justify-between mt-auto" },
O = { class: "flex avatar-group overlap" },
R = { key: 0 },
$ = { key: 1 },
K = { key: 2 },
T = { class: "font-semibold" },
Q = {
__name: "CourseCard",
props: { course: { type: Object, default: null } },
setup(e) {
const { user: u } = g();
return (X, q) =>
e.course.title
? (s(),
r("div", C, [
o(
"div",
{
class: m([
"course-image",
{ "default-image": !e.course.image },
]),
style: h({
backgroundImage:
"url(" +
encodeURI(e.course.image) +
")",
}),
},
[
o("div", B, [
(s(!0),
r(
i,
null,
d(
e.course.tags,
(l) => (
s(), r("div", S, t(l), 1)
)
),
256
)),
]),
e.course.image
? c("", !0)
: (s(),
r("div", z, t(e.course.title[0]), 1)),
],
6
),
o("div", N, [
o("div", U, [
e.course.lesson_count
? (s(),
r("div", V, [
n(a(v), {
class: "h-4 w-4 stroke-1.5 text-gray-700",
}),
o(
"span",
null,
t(e.course.lesson_count),
1
),
]))
: c("", !0),
e.course.enrollment_count
? (s(),
r("div", j, [
n(a(y), {
class: "h-4 w-4 stroke-1.5 text-gray-700",
}),
o(
"span",
null,
t(
e.course
.enrollment_count
),
1
),
]))
: c("", !0),
e.course.avg_rating
? (s(),
r("div", A, [
n(a(_), {
class: "h-4 w-4 stroke-1.5 text-gray-700",
}),
o(
"span",
null,
t(e.course.avg_rating),
1
),
]))
: c("", !0),
e.course.status != "Approved"
? (s(),
r("div", D, [
n(
a(k),
{
variant: "solid",
theme:
e.course.status ===
"Under Review"
? "orange"
: "blue",
size: "sm",
},
{
default: x(() => [
b(
t(
e.course
.status
),
1
),
]),
_: 1,
},
8,
["theme"]
),
]))
: c("", !0),
]),
o("div", E, t(e.course.title), 1),
o("div", F, t(e.course.short_introduction), 1),
a(u) && e.course.membership
? (s(),
r("div", I, [
o(
"div",
{
class: "bg-gray-900 h-1 rounded-full",
style: h({
width:
Math.ceil(
e.course
.membership
.progress
) + "%",
}),
},
null,
4
),
]))
: c("", !0),
a(u) && e.course.membership
? (s(),
r(
"div",
L,
t(
Math.ceil(
e.course.membership.progress
)
) + "% completed ",
1
))
: c("", !0),
o("div", M, [
o("div", O, [
o(
"div",
{
class: m([
"mr-1",
{
"avatar-group overlap":
e.course.instructors
.length > 1,
},
]),
},
[
(s(!0),
r(
i,
null,
d(
e.course.instructors,
(l) => (
s(),
w(
f,
{ user: l },
null,
8,
["user"]
)
)
),
256
)),
],
2
),
e.course.instructors.length == 1
? (s(),
r(
"span",
R,
t(
e.course.instructors[0]
.full_name
),
1
))
: c("", !0),
e.course.instructors.length == 2
? (s(),
r(
"span",
$,
t(
e.course.instructors[0]
.first_name
) +
" and " +
t(
e.course
.instructors[1]
.first_name
),
1
))
: c("", !0),
e.course.instructors.length > 2
? (s(),
r(
"span",
K,
t(
e.course.instructors[0]
.first_name
) +
" and " +
t(
e.course.instructors
.length - 1
) +
" others ",
1
))
: c("", !0),
]),
o("div", T, t(e.course.price), 1),
]),
]),
]))
: c("", !0);
},
};
export { Q as _ };