fix: structure of ourline creation
This commit is contained in:
@@ -0,0 +1 @@
|
|||||||
|
<template></template>
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -44,44 +44,44 @@ import {
|
|||||||
k as S,
|
k as S,
|
||||||
w as se,
|
w as se,
|
||||||
x as i,
|
x as i,
|
||||||
A as $,
|
F as $,
|
||||||
B as f,
|
G as f,
|
||||||
C as t,
|
H as t,
|
||||||
I as u,
|
L as u,
|
||||||
G as d,
|
J as d,
|
||||||
H as e,
|
K as e,
|
||||||
ak as H,
|
aj as H,
|
||||||
al as le,
|
ak as le,
|
||||||
y as h,
|
y as h,
|
||||||
Q as w,
|
Q as w,
|
||||||
R as A,
|
R as A,
|
||||||
F as O,
|
I as O,
|
||||||
J as V,
|
M as V,
|
||||||
D as I,
|
D as I,
|
||||||
r as B,
|
r as B,
|
||||||
U as L,
|
U as L,
|
||||||
a7 as D,
|
a7 as D,
|
||||||
b as Z,
|
b as Z,
|
||||||
ae as ne,
|
ae as ne,
|
||||||
am as P,
|
al as P,
|
||||||
T as ae,
|
T as ae,
|
||||||
ac as he,
|
ac as he,
|
||||||
a5 as ie,
|
a5 as ie,
|
||||||
an as be,
|
am as be,
|
||||||
ao as ye,
|
an as ye,
|
||||||
N as de,
|
P as de,
|
||||||
ap as ve,
|
ao as ve,
|
||||||
aq as fe,
|
ap as fe,
|
||||||
ar as ge,
|
aq as ge,
|
||||||
as as re,
|
ar as re,
|
||||||
at as ke,
|
as as ke,
|
||||||
au as xe,
|
at as xe,
|
||||||
j as R,
|
j as R,
|
||||||
X as $e,
|
X as $e,
|
||||||
a6 as Ve,
|
a6 as Ve,
|
||||||
a8 as Ce,
|
a8 as Ce,
|
||||||
a9 as Se,
|
a9 as Se,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
import {
|
import {
|
||||||
a as M,
|
a as M,
|
||||||
f as E,
|
f as E,
|
||||||
@@ -89,15 +89,15 @@ import {
|
|||||||
g as Me,
|
g as Me,
|
||||||
t as we,
|
t as we,
|
||||||
B as Le,
|
B as Le,
|
||||||
} from "./index-Vx7mSx23.js";
|
} from "./index-6k1S_EjG.js";
|
||||||
import { _ as De } from "./CourseCard--twQpeIf.js";
|
import { _ as De } from "./CourseCard-RMpjQ-rq.js";
|
||||||
import { C as J, a as G } from "./clock-blcPmEdF.js";
|
import { C as J, a as G } from "./clock-q4vfplv-.js";
|
||||||
import { P as ue } from "./plus-pxSjkL_w.js";
|
import { P as ue } from "./plus-0JOmes86.js";
|
||||||
import { _ as je } from "./Link-Z_9V94MR.js";
|
import { _ as je } from "./Link-rwTAUhIL.js";
|
||||||
import { _ as Ae } from "./Discussions-C9dFHLpJ.js";
|
import { _ as Ae } from "./Discussions-3EqlwpPS.js";
|
||||||
import { B as Ue } from "./book-open-check-j9IEQjWh.js";
|
import { B as Ue } from "./book-open-check-_W-8v7wc.js";
|
||||||
import "./UserAvatar-yrWInUTi.js";
|
import "./UserAvatar-A3tEMZXD.js";
|
||||||
import "./star-ypmGZNF0.js";
|
import "./star--IkSKstT.js";
|
||||||
/**
|
/**
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
*
|
*
|
||||||
@@ -258,8 +258,8 @@ import "./star-ypmGZNF0.js";
|
|||||||
Ze = { key: 0 },
|
Ze = { key: 0 },
|
||||||
Je = { class: "mb-1.5 text-sm text-gray-600" },
|
Je = { class: "mb-1.5 text-sm text-gray-600" },
|
||||||
Ge = { class: "grid grid-cols-2 gap-2" },
|
Ge = { class: "grid grid-cols-2 gap-2" },
|
||||||
Qe = ["onClick"],
|
Ke = ["onClick"],
|
||||||
Xe = {
|
Qe = {
|
||||||
__name: "EvaluationModal",
|
__name: "EvaluationModal",
|
||||||
props: z(
|
props: z(
|
||||||
{
|
{
|
||||||
@@ -480,7 +480,7 @@ import "./star-ypmGZNF0.js";
|
|||||||
)
|
)
|
||||||
),
|
),
|
||||||
11,
|
11,
|
||||||
Qe
|
Ke
|
||||||
),
|
),
|
||||||
])
|
])
|
||||||
)
|
)
|
||||||
@@ -500,12 +500,12 @@ import "./star-ypmGZNF0.js";
|
|||||||
);
|
);
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ke = { class: "mb-10" },
|
Xe = { class: "mb-10" },
|
||||||
We = { class: "text-lg font-semibold mb-4" },
|
We = { class: "text-lg font-semibold mb-4" },
|
||||||
et = { key: 1 },
|
et = { key: 1 },
|
||||||
tt = { class: "grid grid-cols-2 gap-4" },
|
tt = { class: "grid grid-cols-2 gap-4" },
|
||||||
st = { class: "border rounded-md p-3" },
|
st = { class: "border rounded-md p-3" },
|
||||||
at = { class: "font-medium mb-3" },
|
at = { class: "font-semibold mb-3" },
|
||||||
ot = { class: "flex items-center mb-2" },
|
ot = { class: "flex items-center mb-2" },
|
||||||
lt = { class: "ml-2" },
|
lt = { class: "ml-2" },
|
||||||
nt = { class: "flex items-center mb-2" },
|
nt = { class: "flex items-center mb-2" },
|
||||||
@@ -546,7 +546,7 @@ import "./star-ypmGZNF0.js";
|
|||||||
w,
|
w,
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
t("div", Ke, [
|
t("div", Xe, [
|
||||||
m.isStudent
|
m.isStudent
|
||||||
? (i(),
|
? (i(),
|
||||||
$(
|
$(
|
||||||
@@ -692,7 +692,7 @@ import "./star-ypmGZNF0.js";
|
|||||||
)),
|
)),
|
||||||
]),
|
]),
|
||||||
d(
|
d(
|
||||||
Xe,
|
Qe,
|
||||||
{
|
{
|
||||||
batch: m.batch,
|
batch: m.batch,
|
||||||
endDate: m.endDate,
|
endDate: m.endDate,
|
||||||
@@ -1469,7 +1469,7 @@ import "./star-ypmGZNF0.js";
|
|||||||
Zt = { key: 0 },
|
Zt = { key: 0 },
|
||||||
Jt = { key: 0 },
|
Jt = { key: 0 },
|
||||||
Gt = { class: "flex gap-2" },
|
Gt = { class: "flex gap-2" },
|
||||||
Qt = {
|
Kt = {
|
||||||
__name: "BatchStudents",
|
__name: "BatchStudents",
|
||||||
props: { batch: { type: String, default: null } },
|
props: { batch: { type: String, default: null } },
|
||||||
setup(m) {
|
setup(m) {
|
||||||
@@ -1817,8 +1817,8 @@ import "./star-ypmGZNF0.js";
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Xt = { key: 0 },
|
Qt = { key: 0 },
|
||||||
Kt = { class: "mb-8" },
|
Xt = { class: "mb-8" },
|
||||||
Wt = { class: "flex items-center justify-between mb-2" },
|
Wt = { class: "flex items-center justify-between mb-2" },
|
||||||
es = { class: "flex items-center" },
|
es = { class: "flex items-center" },
|
||||||
ts = { class: "ml-2" },
|
ts = { class: "ml-2" },
|
||||||
@@ -1853,7 +1853,7 @@ import "./star-ypmGZNF0.js";
|
|||||||
var l;
|
var l;
|
||||||
return (l = e(o).data) != null && l.length
|
return (l = e(o).data) != null && l.length
|
||||||
? (i(),
|
? (i(),
|
||||||
h("div", Xt, [
|
h("div", Qt, [
|
||||||
(i(!0),
|
(i(!0),
|
||||||
h(
|
h(
|
||||||
w,
|
w,
|
||||||
@@ -1863,7 +1863,7 @@ import "./star-ypmGZNF0.js";
|
|||||||
(s) => (
|
(s) => (
|
||||||
i(),
|
i(),
|
||||||
h("div", null, [
|
h("div", null, [
|
||||||
t("div", Kt, [
|
t("div", Xt, [
|
||||||
t("div", Wt, [
|
t("div", Wt, [
|
||||||
t("div", es, [
|
t("div", es, [
|
||||||
d(
|
d(
|
||||||
@@ -2101,7 +2101,7 @@ import "./star-ypmGZNF0.js";
|
|||||||
Ns = { class: "px-5 py-3" },
|
Ns = { class: "px-5 py-3" },
|
||||||
Ps = { key: 0, class: "mb-4 leading-6" },
|
Ps = { key: 0, class: "mb-4 leading-6" },
|
||||||
Ys = { key: 1, class: "mb-4 leading-6" },
|
Ys = { key: 1, class: "mb-4 leading-6" },
|
||||||
Xs = {
|
Qs = {
|
||||||
__name: "Batch",
|
__name: "Batch",
|
||||||
props: { batchName: { type: String, required: !0 } },
|
props: { batchName: { type: String, required: !0 } },
|
||||||
setup(m) {
|
setup(m) {
|
||||||
@@ -2187,7 +2187,7 @@ import "./star-ypmGZNF0.js";
|
|||||||
p.value = !0;
|
p.value = !0;
|
||||||
};
|
};
|
||||||
return (a, r) => {
|
return (a, r) => {
|
||||||
var N, Q, X, K;
|
var N, K, Q, X;
|
||||||
const U = $e("router-link");
|
const U = $e("router-link");
|
||||||
return ((N = e(o).data) != null && N.is_moderator) || _.value
|
return ((N = e(o).data) != null && N.is_moderator) || _.value
|
||||||
? (i(),
|
? (i(),
|
||||||
@@ -2200,7 +2200,7 @@ import "./star-ypmGZNF0.js";
|
|||||||
8,
|
8,
|
||||||
["items"]
|
["items"]
|
||||||
),
|
),
|
||||||
(Q = e(o).data) != null && Q.is_moderator
|
(K = e(o).data) != null && K.is_moderator
|
||||||
? (i(),
|
? (i(),
|
||||||
$(
|
$(
|
||||||
e(D),
|
e(D),
|
||||||
@@ -2471,7 +2471,7 @@ import "./star-ypmGZNF0.js";
|
|||||||
? (i(),
|
? (i(),
|
||||||
h("div", Vs, [
|
h("div", Vs, [
|
||||||
d(
|
d(
|
||||||
Qt,
|
Kt,
|
||||||
{
|
{
|
||||||
batch: e(
|
batch: e(
|
||||||
l
|
l
|
||||||
@@ -2644,7 +2644,7 @@ import "./star-ypmGZNF0.js";
|
|||||||
]))
|
]))
|
||||||
: V("", !0),
|
: V("", !0),
|
||||||
]))
|
]))
|
||||||
: (X = e(o).data) != null && X.name
|
: (Q = e(o).data) != null && Q.name
|
||||||
? V("", !0)
|
? V("", !0)
|
||||||
: (i(),
|
: (i(),
|
||||||
h("div", Us, [
|
h("div", Us, [
|
||||||
@@ -2687,13 +2687,13 @@ import "./star-ypmGZNF0.js";
|
|||||||
name: "Batches",
|
name: "Batches",
|
||||||
params: {
|
params: {
|
||||||
batchName:
|
batchName:
|
||||||
(K =
|
(X =
|
||||||
e(
|
e(
|
||||||
l
|
l
|
||||||
).data) ==
|
).data) ==
|
||||||
null
|
null
|
||||||
? void 0
|
? void 0
|
||||||
: K.name,
|
: X.name,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -2752,5 +2752,5 @@ import "./star-ypmGZNF0.js";
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { Xs as default };
|
export { Qs as default };
|
||||||
//# sourceMappingURL=Batch-58vnulBX.js.map
|
//# sourceMappingURL=Batch-VUgAxRGV.js.map
|
||||||
1
lms/public/frontend/assets/Batch-VUgAxRGV.js.map
Normal file
1
lms/public/frontend/assets/Batch-VUgAxRGV.js.map
Normal file
File diff suppressed because one or more lines are too long
@@ -3,34 +3,34 @@ import {
|
|||||||
j as C,
|
j as C,
|
||||||
x as n,
|
x as n,
|
||||||
y as h,
|
y as h,
|
||||||
A as b,
|
F as b,
|
||||||
B as u,
|
G as u,
|
||||||
U as N,
|
U as N,
|
||||||
I as s,
|
L as s,
|
||||||
H as t,
|
K as t,
|
||||||
a8 as Y,
|
a8 as B,
|
||||||
J as d,
|
M as d,
|
||||||
C as e,
|
H as e,
|
||||||
G as r,
|
J as r,
|
||||||
a7 as w,
|
a7 as w,
|
||||||
X as D,
|
X as D,
|
||||||
L as H,
|
C as H,
|
||||||
k as $,
|
k as $,
|
||||||
Q as S,
|
Q as S,
|
||||||
R as O,
|
R as O,
|
||||||
a6 as R,
|
a6 as R,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
import { b as V, B as j, f as M } from "./index-Vx7mSx23.js";
|
import { b as V, B as j, f as M } from "./index-6k1S_EjG.js";
|
||||||
import { C as L, a as T } from "./clock-blcPmEdF.js";
|
import { C as L, a as T } from "./clock-q4vfplv-.js";
|
||||||
import { _ as E } from "./CourseCard--twQpeIf.js";
|
import { _ as E } from "./CourseCard-RMpjQ-rq.js";
|
||||||
import "./UserAvatar-yrWInUTi.js";
|
import "./UserAvatar-A3tEMZXD.js";
|
||||||
import "./star-ypmGZNF0.js";
|
import "./star--IkSKstT.js";
|
||||||
const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
const F = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
||||||
I = { key: 2, class: "text-lg font-semibold mb-3" },
|
q = { key: 2, class: "text-lg font-semibold mb-3" },
|
||||||
q = { class: "flex items-center mb-3" },
|
|
||||||
z = { class: "flex items-center mb-3" },
|
z = { class: "flex items-center mb-3" },
|
||||||
F = { class: "flex items-center" },
|
A = { class: "flex items-center mb-3" },
|
||||||
G = {
|
G = { class: "flex items-center" },
|
||||||
|
I = {
|
||||||
__name: "BatchOverlay",
|
__name: "BatchOverlay",
|
||||||
props: { batch: { type: Object, default: null } },
|
props: { batch: { type: Object, default: null } },
|
||||||
setup(c) {
|
setup(c) {
|
||||||
@@ -54,11 +54,11 @@ const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
|||||||
const _ = D("router-link");
|
const _ = D("router-link");
|
||||||
return c.batch.data
|
return c.batch.data
|
||||||
? (n(),
|
? (n(),
|
||||||
h("div", A, [
|
h("div", F, [
|
||||||
c.batch.data.seat_count && i.value > 0
|
c.batch.data.seat_count && i.value > 0
|
||||||
? (n(),
|
? (n(),
|
||||||
b(
|
b(
|
||||||
t(Y),
|
t(B),
|
||||||
{
|
{
|
||||||
key: 0,
|
key: 0,
|
||||||
theme: "green",
|
theme: "green",
|
||||||
@@ -79,7 +79,7 @@ const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
|||||||
: c.batch.data.seat_count && i.value <= 0
|
: c.batch.data.seat_count && i.value <= 0
|
||||||
? (n(),
|
? (n(),
|
||||||
b(
|
b(
|
||||||
t(Y),
|
t(B),
|
||||||
{
|
{
|
||||||
key: 1,
|
key: 1,
|
||||||
theme: "red",
|
theme: "red",
|
||||||
@@ -97,7 +97,7 @@ const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
|||||||
? (n(),
|
? (n(),
|
||||||
h(
|
h(
|
||||||
"div",
|
"div",
|
||||||
I,
|
q,
|
||||||
s(
|
s(
|
||||||
t(V)(
|
t(V)(
|
||||||
c.batch.data.amount,
|
c.batch.data.amount,
|
||||||
@@ -107,7 +107,7 @@ const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
|||||||
1
|
1
|
||||||
))
|
))
|
||||||
: d("", !0),
|
: d("", !0),
|
||||||
e("div", q, [
|
e("div", z, [
|
||||||
r(t(j), {
|
r(t(j), {
|
||||||
class: "h-4 w-4 stroke-1.5 mr-2 text-gray-700",
|
class: "h-4 w-4 stroke-1.5 mr-2 text-gray-700",
|
||||||
}),
|
}),
|
||||||
@@ -120,7 +120,7 @@ const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
|||||||
1
|
1
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
e("div", z, [
|
e("div", A, [
|
||||||
r(t(L), {
|
r(t(L), {
|
||||||
class: "h-4 w-4 stroke-1.5 mr-2 text-gray-700",
|
class: "h-4 w-4 stroke-1.5 mr-2 text-gray-700",
|
||||||
}),
|
}),
|
||||||
@@ -141,7 +141,7 @@ const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
|||||||
1
|
1
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
e("div", F, [
|
e("div", G, [
|
||||||
r(t(T), {
|
r(t(T), {
|
||||||
class: "h-4 w-4 stroke-1.5 mr-2 text-gray-700",
|
class: "h-4 w-4 stroke-1.5 mr-2 text-gray-700",
|
||||||
}),
|
}),
|
||||||
@@ -285,10 +285,10 @@ const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
J = { key: 0, class: "h-screen text-base" },
|
J = { key: 0, class: "h-screen text-base" },
|
||||||
Q = { class: "sticky top-0 z-10 border-b bg-white px-3 py-2.5 sm:px-5" },
|
K = { class: "sticky top-0 z-10 border-b bg-white px-3 py-2.5 sm:px-5" },
|
||||||
U = { class: "m-5 pb-10" },
|
Q = { class: "m-5 pb-10" },
|
||||||
X = { class: "text-3xl font-semibold" },
|
U = { class: "text-3xl font-semibold" },
|
||||||
K = { class: "my-3" },
|
X = { class: "my-3" },
|
||||||
P = { class: "flex items-center justify-between w-1/2" },
|
P = { class: "flex items-center justify-between w-1/2" },
|
||||||
W = { class: "flex items-center" },
|
W = { class: "flex items-center" },
|
||||||
Z = { key: 0 },
|
Z = { key: 0 },
|
||||||
@@ -359,18 +359,18 @@ const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
|||||||
);
|
);
|
||||||
});
|
});
|
||||||
return (l, m) => {
|
return (l, m) => {
|
||||||
var g, B;
|
var g, Y;
|
||||||
const o = D("router-link");
|
const o = D("router-link");
|
||||||
return t(a).data
|
return t(a).data
|
||||||
? (n(),
|
? (n(),
|
||||||
h("div", J, [
|
h("div", J, [
|
||||||
e("header", Q, [
|
e("header", K, [
|
||||||
r(t(R), { items: _.value }, null, 8, ["items"]),
|
r(t(R), { items: _.value }, null, 8, ["items"]),
|
||||||
]),
|
]),
|
||||||
e("div", U, [
|
e("div", Q, [
|
||||||
e("div", null, [
|
e("div", null, [
|
||||||
e("div", X, s(t(a).data.title), 1),
|
e("div", U, s(t(a).data.title), 1),
|
||||||
e("div", K, s(t(a).data.description), 1),
|
e("div", X, s(t(a).data.description), 1),
|
||||||
e("div", P, [
|
e("div", P, [
|
||||||
e("div", W, [
|
e("div", W, [
|
||||||
r(t(j), {
|
r(t(j), {
|
||||||
@@ -380,12 +380,12 @@ const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
|||||||
"span",
|
"span",
|
||||||
null,
|
null,
|
||||||
s(
|
s(
|
||||||
(B =
|
(Y =
|
||||||
(g = t(a).data) == null
|
(g = t(a).data) == null
|
||||||
? void 0
|
? void 0
|
||||||
: g.courses) == null
|
: g.courses) == null
|
||||||
? void 0
|
? void 0
|
||||||
: B.length
|
: Y.length
|
||||||
) +
|
) +
|
||||||
" " +
|
" " +
|
||||||
s(l.__("Courses")),
|
s(l.__("Courses")),
|
||||||
@@ -449,7 +449,7 @@ const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
|||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
e("div", null, [
|
e("div", null, [
|
||||||
r(G, { batch: t(a) }, null, 8, [
|
r(I, { batch: t(a) }, null, 8, [
|
||||||
"batch",
|
"batch",
|
||||||
]),
|
]),
|
||||||
]),
|
]),
|
||||||
@@ -540,4 +540,4 @@ const A = { key: 0, class: "shadow rounded-md p-5", style: { width: "300px" } },
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { ft as default };
|
export { ft as default };
|
||||||
//# sourceMappingURL=BatchDetail-Y5ojGFjm.js.map
|
//# sourceMappingURL=BatchDetail-gQdB1fdL.js.map
|
||||||
File diff suppressed because one or more lines are too long
@@ -2,30 +2,30 @@ import {
|
|||||||
d as C,
|
d as C,
|
||||||
x as n,
|
x as n,
|
||||||
y as u,
|
y as u,
|
||||||
A as g,
|
F as g,
|
||||||
B as h,
|
G as h,
|
||||||
U as f,
|
U as f,
|
||||||
I as t,
|
L as t,
|
||||||
H as o,
|
K as o,
|
||||||
a8 as x,
|
a8 as x,
|
||||||
J as y,
|
M as y,
|
||||||
C as a,
|
H as a,
|
||||||
G as i,
|
J as i,
|
||||||
k as N,
|
k as Y,
|
||||||
r as Y,
|
r as j,
|
||||||
j as m,
|
j as m,
|
||||||
a6 as j,
|
a6 as D,
|
||||||
a7 as D,
|
a7 as M,
|
||||||
F as $,
|
I as $,
|
||||||
N as V,
|
P as N,
|
||||||
Q as M,
|
Q as V,
|
||||||
R as z,
|
R as L,
|
||||||
a9 as A,
|
a9 as P,
|
||||||
X as L,
|
X as z,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
import { B as O, f as B } from "./index-Vx7mSx23.js";
|
import { B as O, f as B } from "./index-6k1S_EjG.js";
|
||||||
import { C as P, a as S } from "./clock-blcPmEdF.js";
|
import { C as S, a as U } from "./clock-q4vfplv-.js";
|
||||||
import { P as U } from "./plus-pxSjkL_w.js";
|
import { P as A } from "./plus-0JOmes86.js";
|
||||||
const E = {
|
const E = {
|
||||||
class: "flex flex-col border border-gray-200 rounded-md p-4 h-full",
|
class: "flex flex-col border border-gray-200 rounded-md p-4 h-full",
|
||||||
style: { "min-height": "150px" },
|
style: { "min-height": "150px" },
|
||||||
@@ -37,7 +37,7 @@ const E = {
|
|||||||
G = { class: "flex items-center mb-3" },
|
G = { class: "flex items-center mb-3" },
|
||||||
H = { class: "flex items-center mb-3" },
|
H = { class: "flex items-center mb-3" },
|
||||||
J = { class: "flex items-center" },
|
J = { class: "flex items-center" },
|
||||||
Q = {
|
K = {
|
||||||
__name: "BatchCard",
|
__name: "BatchCard",
|
||||||
props: { batch: { type: Object, default: null } },
|
props: { batch: { type: Object, default: null } },
|
||||||
setup(s) {
|
setup(s) {
|
||||||
@@ -103,7 +103,7 @@ const E = {
|
|||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
a("div", H, [
|
a("div", H, [
|
||||||
i(o(P), {
|
i(o(S), {
|
||||||
class: "h-4 w-4 stroke-1.5 mr-2 text-gray-700",
|
class: "h-4 w-4 stroke-1.5 mr-2 text-gray-700",
|
||||||
}),
|
}),
|
||||||
a(
|
a(
|
||||||
@@ -124,7 +124,7 @@ const E = {
|
|||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
a("div", J, [
|
a("div", J, [
|
||||||
i(o(S), {
|
i(o(U), {
|
||||||
class: "h-4 w-4 stroke-1.5 mr-2 text-gray-700",
|
class: "h-4 w-4 stroke-1.5 mr-2 text-gray-700",
|
||||||
}),
|
}),
|
||||||
a(
|
a(
|
||||||
@@ -141,11 +141,11 @@ const E = {
|
|||||||
);
|
);
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
X = { class: "h-screen text-base" },
|
Q = { class: "h-screen text-base" },
|
||||||
q = {
|
X = {
|
||||||
class: "sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5",
|
class: "sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5",
|
||||||
},
|
},
|
||||||
K = { class: "flex" },
|
q = { class: "flex" },
|
||||||
W = { class: "pb-5" },
|
W = { class: "pb-5" },
|
||||||
Z = {
|
Z = {
|
||||||
key: 0,
|
key: 0,
|
||||||
@@ -161,7 +161,7 @@ const E = {
|
|||||||
setup(s) {
|
setup(s) {
|
||||||
var p, k;
|
var p, k;
|
||||||
const d = C("$user"),
|
const d = C("$user"),
|
||||||
c = N({
|
c = Y({
|
||||||
url: "lms.lms.utils.get_batches",
|
url: "lms.lms.utils.get_batches",
|
||||||
cache: [
|
cache: [
|
||||||
"batches",
|
"batches",
|
||||||
@@ -171,7 +171,7 @@ const E = {
|
|||||||
],
|
],
|
||||||
auto: !0,
|
auto: !0,
|
||||||
}),
|
}),
|
||||||
v = Y(0),
|
v = j(0),
|
||||||
_ = [
|
_ = [
|
||||||
{
|
{
|
||||||
label: "Upcoming",
|
label: "Upcoming",
|
||||||
@@ -242,13 +242,13 @@ const E = {
|
|||||||
}),
|
}),
|
||||||
}),
|
}),
|
||||||
(e, l) => {
|
(e, l) => {
|
||||||
const w = L("router-link");
|
const w = z("router-link");
|
||||||
return (
|
return (
|
||||||
n(),
|
n(),
|
||||||
u("div", X, [
|
u("div", Q, [
|
||||||
a("header", q, [
|
a("header", X, [
|
||||||
i(
|
i(
|
||||||
o(j),
|
o(D),
|
||||||
{
|
{
|
||||||
class: "h-7",
|
class: "h-7",
|
||||||
items: [
|
items: [
|
||||||
@@ -262,13 +262,13 @@ const E = {
|
|||||||
8,
|
8,
|
||||||
["items"]
|
["items"]
|
||||||
),
|
),
|
||||||
a("div", K, [
|
a("div", q, [
|
||||||
i(
|
i(
|
||||||
o(D),
|
o(M),
|
||||||
{ variant: "solid" },
|
{ variant: "solid" },
|
||||||
{
|
{
|
||||||
prefix: h(() => [
|
prefix: h(() => [
|
||||||
i(o(U), { class: "h-4 w-4" }),
|
i(o(A), { class: "h-4 w-4" }),
|
||||||
]),
|
]),
|
||||||
default: h(() => [
|
default: h(() => [
|
||||||
f(
|
f(
|
||||||
@@ -283,7 +283,7 @@ const E = {
|
|||||||
]),
|
]),
|
||||||
a("div", W, [
|
a("div", W, [
|
||||||
i(
|
i(
|
||||||
o(A),
|
o(P),
|
||||||
{
|
{
|
||||||
modelValue: v.value,
|
modelValue: v.value,
|
||||||
"onUpdate:modelValue":
|
"onUpdate:modelValue":
|
||||||
@@ -309,7 +309,7 @@ const E = {
|
|||||||
[
|
[
|
||||||
r.icon
|
r.icon
|
||||||
? (n(),
|
? (n(),
|
||||||
g(V(r.icon), {
|
g(N(r.icon), {
|
||||||
key: 0,
|
key: 0,
|
||||||
class: "h-5",
|
class: "h-5",
|
||||||
}))
|
}))
|
||||||
@@ -364,9 +364,9 @@ const E = {
|
|||||||
u("div", Z, [
|
u("div", Z, [
|
||||||
(n(!0),
|
(n(!0),
|
||||||
u(
|
u(
|
||||||
M,
|
V,
|
||||||
null,
|
null,
|
||||||
z(
|
L(
|
||||||
r.batches.value,
|
r.batches.value,
|
||||||
(b) => (
|
(b) => (
|
||||||
n(),
|
n(),
|
||||||
@@ -386,7 +386,7 @@ const E = {
|
|||||||
h(
|
h(
|
||||||
() => [
|
() => [
|
||||||
i(
|
i(
|
||||||
Q,
|
K,
|
||||||
{
|
{
|
||||||
batch: b,
|
batch: b,
|
||||||
},
|
},
|
||||||
@@ -441,4 +441,4 @@ const E = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { ce as default };
|
export { ce as default };
|
||||||
//# sourceMappingURL=Batches-P9EN0hZ-.js.map
|
//# sourceMappingURL=Batches-irCWn_Pc.js.map
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,24 +1,24 @@
|
|||||||
import {
|
import {
|
||||||
x as c,
|
x as c,
|
||||||
y as _,
|
y as _,
|
||||||
C as s,
|
H as s,
|
||||||
U as x,
|
U as x,
|
||||||
I as o,
|
L as o,
|
||||||
G as d,
|
J as d,
|
||||||
B as L,
|
G as L,
|
||||||
H as n,
|
K as n,
|
||||||
a7 as P,
|
a7 as P,
|
||||||
d as T,
|
d as T,
|
||||||
s as j,
|
s as j,
|
||||||
k as f,
|
k as f,
|
||||||
a as z,
|
a as z,
|
||||||
F as I,
|
I,
|
||||||
J as b,
|
M as b,
|
||||||
am as u,
|
al as u,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
import { _ as S } from "./Link-Z_9V94MR.js";
|
import { _ as S } from "./Link-rwTAUhIL.js";
|
||||||
import { c as V } from "./index-Vx7mSx23.js";
|
import { c as V } from "./index-6k1S_EjG.js";
|
||||||
import "./plus-pxSjkL_w.js";
|
import "./plus-0JOmes86.js";
|
||||||
const E = { class: "text-base border rounded-md w-1/3 mx-auto my-32" },
|
const E = { class: "text-base border rounded-md w-1/3 mx-auto my-32" },
|
||||||
G = { class: "border-b px-5 py-3 font-medium" },
|
G = { class: "border-b px-5 py-3 font-medium" },
|
||||||
R = s(
|
R = s(
|
||||||
@@ -72,11 +72,11 @@ const E = { class: "text-base border rounded-md w-1/3 mx-auto my-32" },
|
|||||||
);
|
);
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
q = { class: "text-base h-screen" },
|
K = { class: "text-base h-screen" },
|
||||||
F = { key: 0, class: "mt-10 w-1/2 mx-auto" },
|
q = { key: 0, class: "mt-10 w-1/2 mx-auto" },
|
||||||
J = { class: "text-3xl font-bold" },
|
J = { class: "text-3xl font-bold" },
|
||||||
K = { class: "text-gray-600 mt-1" },
|
O = { class: "text-gray-600 mt-1" },
|
||||||
O = { class: "border rounded-md p-5 mt-5" },
|
F = { class: "border rounded-md p-5 mt-5" },
|
||||||
W = { class: "text-xl font-semibold" },
|
W = { class: "text-xl font-semibold" },
|
||||||
Y = { class: "text-gray-600 mt-1" },
|
Y = { class: "text-gray-600 mt-1" },
|
||||||
Q = { class: "mt-5" },
|
Q = { class: "mt-5" },
|
||||||
@@ -162,7 +162,7 @@ const E = { class: "text-base border rounded-md w-1/3 mx-auto my-32" },
|
|||||||
(t.gstin = e.gstin || ""),
|
(t.gstin = e.gstin || ""),
|
||||||
(t.pan = e.pan || "");
|
(t.pan = e.pan || "");
|
||||||
},
|
},
|
||||||
B = f({
|
M = f({
|
||||||
url: "lms.lms.utils.get_payment_options",
|
url: "lms.lms.utils.get_payment_options",
|
||||||
makeParams(e) {
|
makeParams(e) {
|
||||||
return {
|
return {
|
||||||
@@ -174,8 +174,8 @@ const E = { class: "text-base border rounded-md w-1/3 mx-auto my-32" },
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
M = () => {
|
B = () => {
|
||||||
B.submit(
|
M.submit(
|
||||||
{},
|
{},
|
||||||
{
|
{
|
||||||
validate(e) {
|
validate(e) {
|
||||||
@@ -304,14 +304,14 @@ const E = { class: "text-base border rounded-md w-1/3 mx-auto my-32" },
|
|||||||
var y, h, g;
|
var y, h, g;
|
||||||
return (
|
return (
|
||||||
c(),
|
c(),
|
||||||
_("div", q, [
|
_("div", K, [
|
||||||
(y = n(p).data) != null && y.access && n(i).data
|
(y = n(p).data) != null && y.access && n(i).data
|
||||||
? (c(),
|
? (c(),
|
||||||
_("div", F, [
|
_("div", q, [
|
||||||
s("div", J, o(e.__("Billing Details")), 1),
|
s("div", J, o(e.__("Billing Details")), 1),
|
||||||
s(
|
s(
|
||||||
"div",
|
"div",
|
||||||
K,
|
O,
|
||||||
o(
|
o(
|
||||||
e.__(
|
e.__(
|
||||||
"Enter the billing information to complete the payment."
|
"Enter the billing information to complete the payment."
|
||||||
@@ -319,7 +319,7 @@ const E = { class: "text-base border rounded-md w-1/3 mx-auto my-32" },
|
|||||||
),
|
),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
s("div", O, [
|
s("div", F, [
|
||||||
s("div", W, o(e.__("Summary")), 1),
|
s("div", W, o(e.__("Summary")), 1),
|
||||||
s(
|
s(
|
||||||
"div",
|
"div",
|
||||||
@@ -718,7 +718,7 @@ const E = { class: "text-base border rounded-md w-1/3 mx-auto my-32" },
|
|||||||
class: "mt-8",
|
class: "mt-8",
|
||||||
onClick:
|
onClick:
|
||||||
a[11] ||
|
a[11] ||
|
||||||
(a[11] = (l) => M()),
|
(a[11] = (l) => B()),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
default: L(() => [
|
default: L(() => [
|
||||||
@@ -778,4 +778,4 @@ const E = { class: "text-base border rounded-md w-1/3 mx-auto my-32" },
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { Ne as default };
|
export { Ne as default };
|
||||||
//# sourceMappingURL=Billing-bj16mAfD.js.map
|
//# sourceMappingURL=Billing-tJdywChZ.js.map
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,25 +1,25 @@
|
|||||||
import { _ as b } from "./UserAvatar-yrWInUTi.js";
|
import { _ as b } from "./UserAvatar-A3tEMZXD.js";
|
||||||
import { s as w, B, U as _ } from "./index-Vx7mSx23.js";
|
import { s as w, B as _, U as B } from "./index-6k1S_EjG.js";
|
||||||
import {
|
import {
|
||||||
x as t,
|
x as t,
|
||||||
y as o,
|
y as o,
|
||||||
C as r,
|
H as r,
|
||||||
Q as h,
|
Q as h,
|
||||||
R as f,
|
R as f,
|
||||||
A as g,
|
F as g,
|
||||||
B as n,
|
G as n,
|
||||||
U as v,
|
U as v,
|
||||||
I as s,
|
L as s,
|
||||||
H as c,
|
K as c,
|
||||||
a8 as x,
|
a8 as x,
|
||||||
J as a,
|
M as a,
|
||||||
F as y,
|
I as y,
|
||||||
V as k,
|
V as k,
|
||||||
G as l,
|
J as l,
|
||||||
T as d,
|
T as d,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
import { S as C } from "./star-ypmGZNF0.js";
|
import { S } from "./star--IkSKstT.js";
|
||||||
const S = {
|
const C = {
|
||||||
key: 0,
|
key: 0,
|
||||||
class: "flex flex-col h-full rounded-md shadow-md text-base overflow-auto",
|
class: "flex flex-col h-full rounded-md shadow-md text-base overflow-auto",
|
||||||
style: { "min-height": "320px" },
|
style: { "min-height": "320px" },
|
||||||
@@ -30,13 +30,13 @@ const S = {
|
|||||||
N = { class: "flex items-center justify-between mb-2" },
|
N = { class: "flex items-center justify-between mb-2" },
|
||||||
R = { key: 0 },
|
R = { key: 0 },
|
||||||
j = { key: 1 },
|
j = { key: 1 },
|
||||||
A = { key: 2 },
|
I = { key: 2 },
|
||||||
I = { key: 3 },
|
L = { key: 3 },
|
||||||
T = { class: "text-xl font-semibold" },
|
M = { class: "text-xl font-semibold" },
|
||||||
E = { class: "short-introduction" },
|
T = { class: "short-introduction" },
|
||||||
F = { key: 0, class: "w-full bg-gray-200 rounded-full h-1 mb-2" },
|
A = { key: 0, class: "w-full bg-gray-200 rounded-full h-1 mb-2" },
|
||||||
L = { key: 1, class: "text-sm mb-4" },
|
E = { key: 1, class: "text-sm mb-4" },
|
||||||
M = { class: "flex items-center justify-between mt-auto" },
|
F = { class: "flex items-center justify-between mt-auto" },
|
||||||
O = { class: "flex avatar-group overlap" },
|
O = { class: "flex avatar-group overlap" },
|
||||||
$ = { key: 0 },
|
$ = { key: 0 },
|
||||||
D = { key: 1 },
|
D = { key: 1 },
|
||||||
@@ -50,7 +50,7 @@ const S = {
|
|||||||
return (u, J) =>
|
return (u, J) =>
|
||||||
e.course.title
|
e.course.title
|
||||||
? (t(),
|
? (t(),
|
||||||
o("div", S, [
|
o("div", C, [
|
||||||
r(
|
r(
|
||||||
"div",
|
"div",
|
||||||
{
|
{
|
||||||
@@ -115,7 +115,7 @@ const S = {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
default: n(() => [
|
default: n(() => [
|
||||||
l(c(B), {
|
l(c(_), {
|
||||||
class: "h-4 w-4 stroke-1.5 text-gray-700",
|
class: "h-4 w-4 stroke-1.5 text-gray-700",
|
||||||
}),
|
}),
|
||||||
r(
|
r(
|
||||||
@@ -148,7 +148,7 @@ const S = {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
default: n(() => [
|
default: n(() => [
|
||||||
l(c(_), {
|
l(c(B), {
|
||||||
class: "h-4 w-4 stroke-1.5 text-gray-700",
|
class: "h-4 w-4 stroke-1.5 text-gray-700",
|
||||||
}),
|
}),
|
||||||
r(
|
r(
|
||||||
@@ -170,7 +170,7 @@ const S = {
|
|||||||
: a("", !0),
|
: a("", !0),
|
||||||
e.course.avg_rating
|
e.course.avg_rating
|
||||||
? (t(),
|
? (t(),
|
||||||
o("div", A, [
|
o("div", I, [
|
||||||
l(
|
l(
|
||||||
c(d),
|
c(d),
|
||||||
{
|
{
|
||||||
@@ -181,7 +181,7 @@ const S = {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
default: n(() => [
|
default: n(() => [
|
||||||
l(c(C), {
|
l(c(S), {
|
||||||
class: "h-4 w-4 stroke-1.5 text-gray-700",
|
class: "h-4 w-4 stroke-1.5 text-gray-700",
|
||||||
}),
|
}),
|
||||||
r(
|
r(
|
||||||
@@ -203,7 +203,7 @@ const S = {
|
|||||||
: a("", !0),
|
: a("", !0),
|
||||||
e.course.status != "Approved"
|
e.course.status != "Approved"
|
||||||
? (t(),
|
? (t(),
|
||||||
o("div", I, [
|
o("div", L, [
|
||||||
l(
|
l(
|
||||||
c(x),
|
c(x),
|
||||||
{
|
{
|
||||||
@@ -233,11 +233,11 @@ const S = {
|
|||||||
]))
|
]))
|
||||||
: a("", !0),
|
: a("", !0),
|
||||||
]),
|
]),
|
||||||
r("div", T, s(e.course.title), 1),
|
r("div", M, s(e.course.title), 1),
|
||||||
r("div", E, s(e.course.short_introduction), 1),
|
r("div", T, s(e.course.short_introduction), 1),
|
||||||
c(m) && e.course.membership
|
c(m) && e.course.membership
|
||||||
? (t(),
|
? (t(),
|
||||||
o("div", F, [
|
o("div", A, [
|
||||||
r(
|
r(
|
||||||
"div",
|
"div",
|
||||||
{
|
{
|
||||||
@@ -260,7 +260,7 @@ const S = {
|
|||||||
? (t(),
|
? (t(),
|
||||||
o(
|
o(
|
||||||
"div",
|
"div",
|
||||||
L,
|
E,
|
||||||
s(
|
s(
|
||||||
Math.ceil(
|
Math.ceil(
|
||||||
e.course.membership.progress
|
e.course.membership.progress
|
||||||
@@ -269,7 +269,7 @@ const S = {
|
|||||||
1
|
1
|
||||||
))
|
))
|
||||||
: a("", !0),
|
: a("", !0),
|
||||||
r("div", M, [
|
r("div", F, [
|
||||||
r("div", O, [
|
r("div", O, [
|
||||||
r(
|
r(
|
||||||
"div",
|
"div",
|
||||||
@@ -363,4 +363,4 @@ const S = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { W as _ };
|
export { W as _ };
|
||||||
//# sourceMappingURL=CourseCard--twQpeIf.js.map
|
//# sourceMappingURL=CourseCard-RMpjQ-rq.js.map
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,62 +1,63 @@
|
|||||||
var A = Object.defineProperty;
|
var P = Object.defineProperty;
|
||||||
var L = Object.getOwnPropertySymbols;
|
var L = Object.getOwnPropertySymbols;
|
||||||
var P = Object.prototype.hasOwnProperty,
|
var A = Object.prototype.hasOwnProperty,
|
||||||
F = Object.prototype.propertyIsEnumerable;
|
F = Object.prototype.propertyIsEnumerable;
|
||||||
var z = (a, i, e) =>
|
var z = (a, n, e) =>
|
||||||
i in a
|
n in a
|
||||||
? A(a, i, {
|
? P(a, n, {
|
||||||
enumerable: !0,
|
enumerable: !0,
|
||||||
configurable: !0,
|
configurable: !0,
|
||||||
writable: !0,
|
writable: !0,
|
||||||
value: e,
|
value: e,
|
||||||
})
|
})
|
||||||
: (a[i] = e),
|
: (a[n] = e),
|
||||||
B = (a, i) => {
|
T = (a, n) => {
|
||||||
for (var e in i || (i = {})) P.call(i, e) && z(a, e, i[e]);
|
for (var e in n || (n = {})) A.call(n, e) && z(a, e, n[e]);
|
||||||
if (L) for (var e of L(i)) F.call(i, e) && z(a, e, i[e]);
|
if (L) for (var e of L(n)) F.call(n, e) && z(a, e, n[e]);
|
||||||
return a;
|
return a;
|
||||||
};
|
};
|
||||||
import {
|
import {
|
||||||
L as W,
|
C as W,
|
||||||
d as j,
|
d as j,
|
||||||
j as E,
|
j as E,
|
||||||
x as l,
|
x as o,
|
||||||
y as u,
|
y as d,
|
||||||
J as v,
|
M as v,
|
||||||
C as s,
|
H as s,
|
||||||
I as r,
|
L as r,
|
||||||
A as y,
|
F as b,
|
||||||
B as w,
|
G as w,
|
||||||
G as m,
|
J as m,
|
||||||
H as t,
|
K as t,
|
||||||
a7 as k,
|
a7 as k,
|
||||||
k as $,
|
k as $,
|
||||||
X as G,
|
X as G,
|
||||||
r as q,
|
r as q,
|
||||||
Q as x,
|
Q as x,
|
||||||
R,
|
R,
|
||||||
F as M,
|
I as M,
|
||||||
aa as I,
|
aa as I,
|
||||||
ab as C,
|
ab as C,
|
||||||
a as J,
|
a as J,
|
||||||
ac as Q,
|
ac as K,
|
||||||
D as X,
|
D as Q,
|
||||||
U as V,
|
U as V,
|
||||||
b as T,
|
b as U,
|
||||||
a6 as K,
|
a6 as X,
|
||||||
T as U,
|
T as B,
|
||||||
a8 as Y,
|
a8 as Y,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
import { B as Z, U as D, c as S } from "./index-Vx7mSx23.js";
|
import { B as Z, U as D, c as S } from "./index-6k1S_EjG.js";
|
||||||
import { S as N } from "./star-ypmGZNF0.js";
|
import { S as N } from "./star--IkSKstT.js";
|
||||||
import { _ as ee } from "./CourseOutline-M5G5Rx7O.js";
|
import { _ as ee } from "./CourseOutline-AirCiy-C.js";
|
||||||
import { _ as O } from "./UserAvatar-yrWInUTi.js";
|
import { _ as O } from "./UserAvatar-A3tEMZXD.js";
|
||||||
|
import "./file-text-w2g11TfY.js";
|
||||||
const te = { class: "shadow rounded-md min-w-80" },
|
const te = { class: "shadow rounded-md min-w-80" },
|
||||||
se = ["src"],
|
se = ["src"],
|
||||||
ae = { class: "p-5" },
|
ae = { class: "p-5" },
|
||||||
re = { key: 0, class: "text-2xl font-semibold mb-3" },
|
re = { key: 0, class: "text-2xl font-semibold mb-3" },
|
||||||
le = { class: "mt-8 mb-4 font-medium" },
|
oe = { class: "mt-8 mb-4 font-medium" },
|
||||||
oe = { class: "flex items-center mb-3" },
|
le = { class: "flex items-center mb-3" },
|
||||||
ne = { class: "ml-2" },
|
ne = { class: "ml-2" },
|
||||||
ie = { class: "flex items-center mb-3" },
|
ie = { class: "flex items-center mb-3" },
|
||||||
ue = { class: "ml-2" },
|
ue = { class: "ml-2" },
|
||||||
@@ -66,16 +67,16 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
__name: "CourseCardOverlay",
|
__name: "CourseCardOverlay",
|
||||||
props: { course: { type: Object, default: null } },
|
props: { course: { type: Object, default: null } },
|
||||||
setup(a) {
|
setup(a) {
|
||||||
const i = W(),
|
const n = W(),
|
||||||
e = j("$user"),
|
e = j("$user"),
|
||||||
_ = a,
|
_ = a,
|
||||||
o = E(() =>
|
l = E(() =>
|
||||||
_.course.data.video_link
|
_.course.data.video_link
|
||||||
? "https://www.youtube.com/embed/" +
|
? "https://www.youtube.com/embed/" +
|
||||||
_.course.data.video_link
|
_.course.data.video_link
|
||||||
: null
|
: null
|
||||||
);
|
);
|
||||||
function f() {
|
function p() {
|
||||||
if (!e.data)
|
if (!e.data)
|
||||||
S({
|
S({
|
||||||
title: "Please Login",
|
title: "Please Login",
|
||||||
@@ -86,18 +87,18 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
window.location.href = `/login?redirect-to=${window.location.pathname}`;
|
window.location.href = `/login?redirect-to=${window.location.pathname}`;
|
||||||
}, 3e3);
|
}, 3e3);
|
||||||
else {
|
else {
|
||||||
const n = $({
|
const i = $({
|
||||||
url: "lms.lms.doctype.lms_enrollment.lms_enrollment.create_membership",
|
url: "lms.lms.doctype.lms_enrollment.lms_enrollment.create_membership",
|
||||||
});
|
});
|
||||||
console.log(_.course),
|
console.log(_.course),
|
||||||
n.submit({ course: _.course.data.name }).then(() => {
|
i.submit({ course: _.course.data.name }).then(() => {
|
||||||
S({
|
S({
|
||||||
title: "Enrolled Successfully",
|
title: "Enrolled Successfully",
|
||||||
icon: "check",
|
icon: "check",
|
||||||
iconClasses: "text-green-600 bg-green-100",
|
iconClasses: "text-green-600 bg-green-100",
|
||||||
}),
|
}),
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
i.push({
|
n.push({
|
||||||
name: "Lesson",
|
name: "Lesson",
|
||||||
params: {
|
params: {
|
||||||
courseName: _.course.data.name,
|
courseName: _.course.data.name,
|
||||||
@@ -109,19 +110,20 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return (n, h) => {
|
const g = () => {};
|
||||||
var d, c;
|
return (i, f) => {
|
||||||
const g = G("router-link");
|
var c, y;
|
||||||
|
const u = G("router-link");
|
||||||
return (
|
return (
|
||||||
l(),
|
o(),
|
||||||
u("div", te, [
|
d("div", te, [
|
||||||
a.course.data.video_link
|
a.course.data.video_link
|
||||||
? (l(),
|
? (o(),
|
||||||
u(
|
d(
|
||||||
"iframe",
|
"iframe",
|
||||||
{
|
{
|
||||||
key: 0,
|
key: 0,
|
||||||
src: o.value,
|
src: l.value,
|
||||||
class: "rounded-t-md min-h-56 min-w-80",
|
class: "rounded-t-md min-h-56 min-w-80",
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
@@ -131,12 +133,12 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
: v("", !0),
|
: v("", !0),
|
||||||
s("div", ae, [
|
s("div", ae, [
|
||||||
a.course.data.price
|
a.course.data.price
|
||||||
? (l(), u("div", re, r(a.course.data.price), 1))
|
? (o(), d("div", re, r(a.course.data.price), 1))
|
||||||
: v("", !0),
|
: v("", !0),
|
||||||
a.course.data.membership
|
a.course.data.membership
|
||||||
? (l(),
|
? (o(),
|
||||||
y(
|
b(
|
||||||
g,
|
u,
|
||||||
{
|
{
|
||||||
key: 1,
|
key: 1,
|
||||||
to: {
|
to: {
|
||||||
@@ -173,7 +175,7 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
"span",
|
"span",
|
||||||
null,
|
null,
|
||||||
r(
|
r(
|
||||||
n.__(
|
i.__(
|
||||||
"Continue Learning"
|
"Continue Learning"
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
@@ -190,9 +192,9 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
["to"]
|
["to"]
|
||||||
))
|
))
|
||||||
: a.course.data.paid_course
|
: a.course.data.paid_course
|
||||||
? (l(),
|
? (o(),
|
||||||
y(
|
b(
|
||||||
g,
|
u,
|
||||||
{
|
{
|
||||||
key: 2,
|
key: 2,
|
||||||
to: {
|
to: {
|
||||||
@@ -218,7 +220,7 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
"span",
|
"span",
|
||||||
null,
|
null,
|
||||||
r(
|
r(
|
||||||
n.__(
|
i.__(
|
||||||
"Buy this course"
|
"Buy this course"
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
@@ -234,13 +236,13 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
8,
|
8,
|
||||||
["to"]
|
["to"]
|
||||||
))
|
))
|
||||||
: (l(),
|
: (o(),
|
||||||
y(
|
b(
|
||||||
t(k),
|
t(k),
|
||||||
{
|
{
|
||||||
key: 3,
|
key: 3,
|
||||||
onClick:
|
onClick:
|
||||||
h[0] || (h[0] = (b) => f()),
|
f[0] || (f[0] = (h) => p()),
|
||||||
variant: "solid",
|
variant: "solid",
|
||||||
class: "w-full",
|
class: "w-full",
|
||||||
size: "md",
|
size: "md",
|
||||||
@@ -250,39 +252,60 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
s(
|
s(
|
||||||
"span",
|
"span",
|
||||||
null,
|
null,
|
||||||
r(n.__("Start Learning")),
|
r(i.__("Start Learning")),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
_: 1,
|
_: 1,
|
||||||
}
|
}
|
||||||
)),
|
)),
|
||||||
(c = (d = t(e)) == null ? void 0 : d.data) !=
|
((y = (c = t(e)) == null ? void 0 : c.data) !=
|
||||||
null && c.is_moderator
|
null &&
|
||||||
? (l(),
|
y.is_moderator) ||
|
||||||
y(
|
g()
|
||||||
t(k),
|
? (o(),
|
||||||
|
b(
|
||||||
|
u,
|
||||||
{
|
{
|
||||||
key: 4,
|
key: 4,
|
||||||
variant: "subtle",
|
to: {
|
||||||
class: "w-full",
|
name: "CreateCourse",
|
||||||
size: "md",
|
params: {
|
||||||
|
courseName:
|
||||||
|
a.course.data.name,
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
default: w(() => [
|
default: w(() => [
|
||||||
s(
|
m(
|
||||||
"span",
|
t(k),
|
||||||
null,
|
{
|
||||||
r(n.__("Edit")),
|
variant: "subtle",
|
||||||
1
|
class: "w-full mt-2",
|
||||||
|
size: "md",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
default: w(() => [
|
||||||
|
s(
|
||||||
|
"span",
|
||||||
|
null,
|
||||||
|
r(i.__("Edit")),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
_: 1,
|
||||||
|
}
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
_: 1,
|
_: 1,
|
||||||
}
|
},
|
||||||
|
8,
|
||||||
|
["to"]
|
||||||
))
|
))
|
||||||
: v("", !0),
|
: v("", !0),
|
||||||
s("div", le, r(n.__("This course has:")), 1),
|
s("div", oe, r(i.__("This course has:")), 1),
|
||||||
s("div", oe, [
|
s("div", le, [
|
||||||
m(t(Z), {
|
m(t(Z), {
|
||||||
class: "h-5 w-5 stroke-1.5 text-gray-600",
|
class: "h-5 w-5 stroke-1.5 text-gray-600",
|
||||||
}),
|
}),
|
||||||
@@ -291,7 +314,7 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
ne,
|
ne,
|
||||||
r(a.course.data.lesson_count) +
|
r(a.course.data.lesson_count) +
|
||||||
" " +
|
" " +
|
||||||
r(n.__("Lessons")),
|
r(i.__("Lessons")),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
@@ -306,7 +329,7 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
a.course.data.enrollment_count_formatted
|
a.course.data.enrollment_count_formatted
|
||||||
) +
|
) +
|
||||||
" " +
|
" " +
|
||||||
r(n.__("Enrolled Students")),
|
r(i.__("Enrolled Students")),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
@@ -319,7 +342,7 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
ce,
|
ce,
|
||||||
r(a.course.data.avg_rating) +
|
r(a.course.data.avg_rating) +
|
||||||
" " +
|
" " +
|
||||||
r(n.__("Rating")),
|
r(i.__("Rating")),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
@@ -337,33 +360,33 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
modelValue: { type: Number, default: 0 },
|
modelValue: { type: Number, default: 0 },
|
||||||
},
|
},
|
||||||
emits: ["update:modelValue"],
|
emits: ["update:modelValue"],
|
||||||
setup(a, { emit: i }) {
|
setup(a, { emit: n }) {
|
||||||
const e = a,
|
const e = a,
|
||||||
_ = i;
|
_ = n;
|
||||||
let o = q(e.modelValue),
|
let l = q(e.modelValue),
|
||||||
f = (h) => {
|
p = (i) => {
|
||||||
_("update:modelValue", h);
|
_("update:modelValue", i);
|
||||||
};
|
};
|
||||||
function n(h) {
|
function g(i) {
|
||||||
f(h), (o.value = h);
|
p(i), (l.value = i);
|
||||||
}
|
}
|
||||||
return (h, g) => (
|
return (i, f) => (
|
||||||
l(),
|
o(),
|
||||||
u("div", _e, [
|
d("div", _e, [
|
||||||
(l(),
|
(o(),
|
||||||
u(
|
d(
|
||||||
x,
|
x,
|
||||||
null,
|
null,
|
||||||
R(5, (d) =>
|
R(5, (u) =>
|
||||||
s("div", null, [
|
s("div", null, [
|
||||||
m(
|
m(
|
||||||
t(N),
|
t(N),
|
||||||
{
|
{
|
||||||
class: M([
|
class: M([
|
||||||
d <= t(o) ? "fill-orange-500" : "",
|
u <= t(l) ? "fill-orange-500" : "",
|
||||||
"h-6 w-6 fill-gray-400 text-gray-50 mr-1 cursor-pointer",
|
"h-6 w-6 fill-gray-400 text-gray-50 mr-1 cursor-pointer",
|
||||||
]),
|
]),
|
||||||
onClick: (c) => n(d),
|
onClick: (c) => g(u),
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
8,
|
8,
|
||||||
@@ -399,64 +422,64 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
"update:hasReviewed",
|
"update:hasReviewed",
|
||||||
],
|
],
|
||||||
setup(a) {
|
setup(a) {
|
||||||
const i = C(a, "modelValue"),
|
const n = C(a, "modelValue"),
|
||||||
e = C(a, "reloadReviews"),
|
e = C(a, "reloadReviews"),
|
||||||
_ = C(a, "hasReviewed");
|
_ = C(a, "hasReviewed");
|
||||||
let o = J({ review: "", rating: 0 });
|
let l = J({ review: "", rating: 0 });
|
||||||
const f = a,
|
const p = a,
|
||||||
n = $({
|
g = $({
|
||||||
url: "frappe.client.insert",
|
url: "frappe.client.insert",
|
||||||
makeParams(g) {
|
makeParams(f) {
|
||||||
return {
|
return {
|
||||||
doc: B(
|
doc: T(
|
||||||
{
|
{
|
||||||
doctype: "LMS Course Review",
|
doctype: "LMS Course Review",
|
||||||
course: f.courseName,
|
course: p.courseName,
|
||||||
},
|
},
|
||||||
g
|
f
|
||||||
),
|
),
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
function h(g) {
|
function i(f) {
|
||||||
(o.rating = o.rating / 5),
|
(l.rating = l.rating / 5),
|
||||||
n.submit(o, {
|
g.submit(l, {
|
||||||
validate() {
|
validate() {
|
||||||
if (!o.rating) return "Please enter a rating.";
|
if (!l.rating) return "Please enter a rating.";
|
||||||
},
|
},
|
||||||
onSuccess() {
|
onSuccess() {
|
||||||
e.value.reload(), _.value.reload();
|
e.value.reload(), _.value.reload();
|
||||||
},
|
},
|
||||||
onError(d) {
|
onError(u) {
|
||||||
var c;
|
var c;
|
||||||
S({
|
S({
|
||||||
text:
|
text:
|
||||||
((c = d.messages) == null
|
((c = u.messages) == null
|
||||||
? void 0
|
? void 0
|
||||||
: c[0]) || d,
|
: c[0]) || u,
|
||||||
icon: "x",
|
icon: "x",
|
||||||
iconClasses: "text-red-600 bg-red-300",
|
iconClasses: "text-red-600 bg-red-300",
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
g();
|
f();
|
||||||
}
|
}
|
||||||
return (g, d) => (
|
return (f, u) => (
|
||||||
l(),
|
o(),
|
||||||
y(
|
b(
|
||||||
t(X),
|
t(Q),
|
||||||
{
|
{
|
||||||
modelValue: i.value,
|
modelValue: n.value,
|
||||||
"onUpdate:modelValue":
|
"onUpdate:modelValue":
|
||||||
d[2] || (d[2] = (c) => (i.value = c)),
|
u[2] || (u[2] = (c) => (n.value = c)),
|
||||||
options: {
|
options: {
|
||||||
title: g.__("Write a Review"),
|
title: f.__("Write a Review"),
|
||||||
size: "xl",
|
size: "xl",
|
||||||
actions: [
|
actions: [
|
||||||
{
|
{
|
||||||
label: "Submit",
|
label: "Submit",
|
||||||
variant: "solid",
|
variant: "solid",
|
||||||
onClick: (c) => h(c),
|
onClick: (c) => i(c),
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
@@ -465,15 +488,15 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
"body-content": w(() => [
|
"body-content": w(() => [
|
||||||
s("div", ge, [
|
s("div", ge, [
|
||||||
s("div", null, [
|
s("div", null, [
|
||||||
s("div", fe, r(g.__("Rating")), 1),
|
s("div", fe, r(f.__("Rating")), 1),
|
||||||
m(
|
m(
|
||||||
ve,
|
ve,
|
||||||
{
|
{
|
||||||
modelValue: t(o).rating,
|
modelValue: t(l).rating,
|
||||||
"onUpdate:modelValue":
|
"onUpdate:modelValue":
|
||||||
d[0] ||
|
u[0] ||
|
||||||
(d[0] = (c) =>
|
(u[0] = (c) =>
|
||||||
(t(o).rating = c)),
|
(t(l).rating = c)),
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
8,
|
8,
|
||||||
@@ -481,18 +504,18 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
s("div", null, [
|
s("div", null, [
|
||||||
s("div", he, r(g.__("Review")), 1),
|
s("div", he, r(f.__("Review")), 1),
|
||||||
m(
|
m(
|
||||||
t(Q),
|
t(K),
|
||||||
{
|
{
|
||||||
type: "text",
|
type: "text",
|
||||||
size: "md",
|
size: "md",
|
||||||
rows: "5",
|
rows: "5",
|
||||||
modelValue: t(o).review,
|
modelValue: t(l).review,
|
||||||
"onUpdate:modelValue":
|
"onUpdate:modelValue":
|
||||||
d[1] ||
|
u[1] ||
|
||||||
(d[1] = (c) =>
|
(u[1] = (c) =>
|
||||||
(t(o).review = c)),
|
(t(l).review = c)),
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
8,
|
8,
|
||||||
@@ -525,54 +548,54 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
membership: { type: Object, required: !1 },
|
membership: { type: Object, required: !1 },
|
||||||
},
|
},
|
||||||
setup(a) {
|
setup(a) {
|
||||||
var h, g, d;
|
var i, f, u;
|
||||||
const i = j("$user"),
|
const n = j("$user"),
|
||||||
e = a,
|
e = a,
|
||||||
_ = $({
|
_ = $({
|
||||||
url: "frappe.client.get_count",
|
url: "frappe.client.get_count",
|
||||||
cache: [
|
cache: [
|
||||||
"eligible_to_review",
|
"eligible_to_review",
|
||||||
e.courseName,
|
e.courseName,
|
||||||
(h = e.membership) == null ? void 0 : h.member,
|
(i = e.membership) == null ? void 0 : i.member,
|
||||||
],
|
],
|
||||||
params: {
|
params: {
|
||||||
doctype: "LMS Course Review",
|
doctype: "LMS Course Review",
|
||||||
filters: {
|
filters: {
|
||||||
course: e.courseName,
|
course: e.courseName,
|
||||||
owner:
|
owner:
|
||||||
(g = e.membership) == null ? void 0 : g.member,
|
(f = e.membership) == null ? void 0 : f.member,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
auto: !!((d = i.data) != null && d.name),
|
auto: !!((u = n.data) != null && u.name),
|
||||||
}),
|
}),
|
||||||
o = $({
|
l = $({
|
||||||
url: "lms.lms.utils.get_reviews",
|
url: "lms.lms.utils.get_reviews",
|
||||||
cache: ["course_reviews", e.courseName],
|
cache: ["course_reviews", e.courseName],
|
||||||
params: { course: e.courseName },
|
params: { course: e.courseName },
|
||||||
auto: !0,
|
auto: !0,
|
||||||
}),
|
}),
|
||||||
f = q(!1);
|
p = q(!1);
|
||||||
function n() {
|
function g() {
|
||||||
f.value = !0;
|
p.value = !0;
|
||||||
}
|
}
|
||||||
return (c, b) => (
|
return (c, y) => (
|
||||||
l(),
|
o(),
|
||||||
u(
|
d(
|
||||||
x,
|
x,
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
t(o).data
|
t(l).data
|
||||||
? (l(),
|
? (o(),
|
||||||
u("div", we, [
|
d("div", we, [
|
||||||
a.membership && !t(_).data
|
a.membership && !t(_).data
|
||||||
? (l(),
|
? (o(),
|
||||||
y(
|
b(
|
||||||
t(k),
|
t(k),
|
||||||
{
|
{
|
||||||
key: 0,
|
key: 0,
|
||||||
onClick:
|
onClick:
|
||||||
b[0] ||
|
y[0] ||
|
||||||
(b[0] = (p) => n()),
|
(y[0] = (h) => g()),
|
||||||
class: "float-right",
|
class: "float-right",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -600,27 +623,27 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
" " +
|
" " +
|
||||||
r(c.__("ratings and ")) +
|
r(c.__("ratings and ")) +
|
||||||
" " +
|
" " +
|
||||||
r(t(o).data.length) +
|
r(t(l).data.length) +
|
||||||
" " +
|
" " +
|
||||||
r(c.__("reviews")),
|
r(c.__("reviews")),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
s("div", be, [
|
s("div", be, [
|
||||||
(l(!0),
|
(o(!0),
|
||||||
u(
|
d(
|
||||||
x,
|
x,
|
||||||
null,
|
null,
|
||||||
R(
|
R(
|
||||||
t(o).data,
|
t(l).data,
|
||||||
(p, Je) => (
|
(h, Je) => (
|
||||||
l(),
|
o(),
|
||||||
u("div", null, [
|
d("div", null, [
|
||||||
s("div", xe, [
|
s("div", xe, [
|
||||||
m(
|
m(
|
||||||
O,
|
O,
|
||||||
{
|
{
|
||||||
user: p.owner_details,
|
user: h.owner_details,
|
||||||
size: "2xl",
|
size: "2xl",
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
@@ -632,7 +655,7 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
"span",
|
"span",
|
||||||
$e,
|
$e,
|
||||||
r(
|
r(
|
||||||
p
|
h
|
||||||
.owner_details
|
.owner_details
|
||||||
.full_name
|
.full_name
|
||||||
),
|
),
|
||||||
@@ -642,13 +665,13 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
"span",
|
"span",
|
||||||
null,
|
null,
|
||||||
r(
|
r(
|
||||||
p.creation
|
h.creation
|
||||||
),
|
),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
s("div", Re, [
|
s("div", Re, [
|
||||||
(l(),
|
(o(),
|
||||||
u(
|
d(
|
||||||
x,
|
x,
|
||||||
null,
|
null,
|
||||||
R(
|
R(
|
||||||
@@ -666,7 +689,7 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
"h-5 w-5 text-gray-100 bg-gray-200 rounded-sm mr-2",
|
"h-5 w-5 text-gray-100 bg-gray-200 rounded-sm mr-2",
|
||||||
H <=
|
H <=
|
||||||
Math.ceil(
|
Math.ceil(
|
||||||
p.rating
|
h.rating
|
||||||
)
|
)
|
||||||
? "fill-orange-500"
|
? "fill-orange-500"
|
||||||
: "fill-gray-600",
|
: "fill-gray-600",
|
||||||
@@ -685,12 +708,12 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
]),
|
]),
|
||||||
]),
|
]),
|
||||||
]),
|
]),
|
||||||
p.review
|
h.review
|
||||||
? (l(),
|
? (o(),
|
||||||
u(
|
d(
|
||||||
"div",
|
"div",
|
||||||
Ne,
|
Ne,
|
||||||
r(p.review),
|
r(h.review),
|
||||||
1
|
1
|
||||||
))
|
))
|
||||||
: v("", !0),
|
: v("", !0),
|
||||||
@@ -705,19 +728,19 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
m(
|
m(
|
||||||
pe,
|
pe,
|
||||||
{
|
{
|
||||||
modelValue: f.value,
|
modelValue: p.value,
|
||||||
"onUpdate:modelValue":
|
"onUpdate:modelValue":
|
||||||
b[1] || (b[1] = (p) => (f.value = p)),
|
y[1] || (y[1] = (h) => (p.value = h)),
|
||||||
reloadReviews: t(o),
|
reloadReviews: t(l),
|
||||||
"onUpdate:reloadReviews":
|
"onUpdate:reloadReviews":
|
||||||
b[2] ||
|
y[2] ||
|
||||||
(b[2] = (p) =>
|
(y[2] = (h) =>
|
||||||
T(o) ? (o.value = p) : null),
|
U(l) ? (l.value = h) : null),
|
||||||
hasReviewed: t(_),
|
hasReviewed: t(_),
|
||||||
"onUpdate:hasReviewed":
|
"onUpdate:hasReviewed":
|
||||||
b[3] ||
|
y[3] ||
|
||||||
(b[3] = (p) =>
|
(y[3] = (h) =>
|
||||||
T(_) ? (_.value = p) : null),
|
U(_) ? (_.value = h) : null),
|
||||||
courseName: a.courseName,
|
courseName: a.courseName,
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
@@ -742,64 +765,64 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
Me = { class: "m-5" },
|
Me = { class: "m-5" },
|
||||||
Le = { class: "flex justify-between w-full" },
|
Le = { class: "flex justify-between w-full" },
|
||||||
ze = { class: "w-2/3" },
|
ze = { class: "w-2/3" },
|
||||||
Be = { class: "text-3xl font-semibold" },
|
Te = { class: "text-3xl font-semibold" },
|
||||||
Te = { class: "my-3 leading-6" },
|
Ue = { class: "my-3 leading-6" },
|
||||||
Ue = { class: "flex items-center" },
|
Be = { class: "flex items-center" },
|
||||||
je = { class: "ml-1" },
|
je = { class: "ml-1" },
|
||||||
Ee = { key: 1, class: "mx-3" },
|
Ee = { key: 1, class: "mx-3" },
|
||||||
qe = { class: "ml-1" },
|
qe = { class: "ml-1" },
|
||||||
De = { key: 3, class: "mx-3" },
|
De = { key: 3, class: "mx-3" },
|
||||||
Oe = { class: "flex items-center" },
|
Oe = { class: "flex items-center" },
|
||||||
He = { key: 0 },
|
He = { key: 0 },
|
||||||
Ae = { key: 1 },
|
Pe = { key: 1 },
|
||||||
Pe = { key: 2 },
|
Ae = { key: 2 },
|
||||||
Fe = { class: "flex mt-3 mb-4 w-fit" },
|
Fe = { class: "flex mt-3 mb-4 w-fit" },
|
||||||
We = ["innerHTML"],
|
We = ["innerHTML"],
|
||||||
Ge = { class: "mt-10" },
|
Ge = { class: "mt-10" },
|
||||||
Ie = { class: "" },
|
Ie = { class: "" },
|
||||||
tt = {
|
st = {
|
||||||
__name: "CourseDetail",
|
__name: "CourseDetail",
|
||||||
props: { courseName: { type: String, required: !0 } },
|
props: { courseName: { type: String, required: !0 } },
|
||||||
setup(a) {
|
setup(a) {
|
||||||
const i = a,
|
const n = a,
|
||||||
e = $({
|
e = $({
|
||||||
url: "lms.lms.utils.get_course_details",
|
url: "lms.lms.utils.get_course_details",
|
||||||
cache: ["course", i.courseName],
|
cache: ["course", n.courseName],
|
||||||
params: { course: i.courseName },
|
params: { course: n.courseName },
|
||||||
auto: !0,
|
auto: !0,
|
||||||
}),
|
}),
|
||||||
_ = E(() => {
|
_ = E(() => {
|
||||||
var f, n;
|
var p, g;
|
||||||
let o = [
|
let l = [
|
||||||
{ label: "All Courses", route: { name: "Courses" } },
|
{ label: "All Courses", route: { name: "Courses" } },
|
||||||
];
|
];
|
||||||
return (
|
return (
|
||||||
o.push({
|
l.push({
|
||||||
label:
|
label:
|
||||||
(f = e == null ? void 0 : e.data) == null
|
(p = e == null ? void 0 : e.data) == null
|
||||||
? void 0
|
? void 0
|
||||||
: f.title,
|
: p.title,
|
||||||
route: {
|
route: {
|
||||||
name: "CourseDetail",
|
name: "CourseDetail",
|
||||||
params: {
|
params: {
|
||||||
course:
|
course:
|
||||||
(n = e == null ? void 0 : e.data) ==
|
(g = e == null ? void 0 : e.data) ==
|
||||||
null
|
null
|
||||||
? void 0
|
? void 0
|
||||||
: n.name,
|
: g.name,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
o
|
l
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
return (o, f) =>
|
return (l, p) =>
|
||||||
t(e).data
|
t(e).data
|
||||||
? (l(),
|
? (o(),
|
||||||
u("div", Ve, [
|
d("div", Ve, [
|
||||||
s("header", Se, [
|
s("header", Se, [
|
||||||
m(
|
m(
|
||||||
t(K),
|
t(X),
|
||||||
{ class: "h-7", items: _.value },
|
{ class: "h-7", items: _.value },
|
||||||
null,
|
null,
|
||||||
8,
|
8,
|
||||||
@@ -809,21 +832,21 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
s("div", Me, [
|
s("div", Me, [
|
||||||
s("div", Le, [
|
s("div", Le, [
|
||||||
s("div", ze, [
|
s("div", ze, [
|
||||||
s("div", Be, r(t(e).data.title), 1),
|
s("div", Te, r(t(e).data.title), 1),
|
||||||
s(
|
s(
|
||||||
"div",
|
"div",
|
||||||
Te,
|
Ue,
|
||||||
r(t(e).data.short_introduction),
|
r(t(e).data.short_introduction),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
s("div", Ue, [
|
s("div", Be, [
|
||||||
t(e).data.avg_rating
|
t(e).data.avg_rating
|
||||||
? (l(),
|
? (o(),
|
||||||
y(
|
b(
|
||||||
t(U),
|
t(B),
|
||||||
{
|
{
|
||||||
key: 0,
|
key: 0,
|
||||||
text: o.__(
|
text: l.__(
|
||||||
"Average Rating"
|
"Average Rating"
|
||||||
),
|
),
|
||||||
class: "flex items-center",
|
class: "flex items-center",
|
||||||
@@ -851,15 +874,15 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
))
|
))
|
||||||
: v("", !0),
|
: v("", !0),
|
||||||
t(e).data.avg_rating
|
t(e).data.avg_rating
|
||||||
? (l(), u("span", Ee, "·"))
|
? (o(), d("span", Ee, "·"))
|
||||||
: v("", !0),
|
: v("", !0),
|
||||||
t(e).data.enrollment_count
|
t(e).data.enrollment_count
|
||||||
? (l(),
|
? (o(),
|
||||||
y(
|
b(
|
||||||
t(U),
|
t(B),
|
||||||
{
|
{
|
||||||
key: 2,
|
key: 2,
|
||||||
text: o.__(
|
text: l.__(
|
||||||
"Enrolled Students"
|
"Enrolled Students"
|
||||||
),
|
),
|
||||||
class: "flex items-center",
|
class: "flex items-center",
|
||||||
@@ -887,7 +910,7 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
))
|
))
|
||||||
: v("", !0),
|
: v("", !0),
|
||||||
t(e).data.enrollment_count
|
t(e).data.enrollment_count
|
||||||
? (l(), u("span", De, "·"))
|
? (o(), d("span", De, "·"))
|
||||||
: v("", !0),
|
: v("", !0),
|
||||||
s("div", Oe, [
|
s("div", Oe, [
|
||||||
s(
|
s(
|
||||||
@@ -905,19 +928,19 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
]),
|
]),
|
||||||
},
|
},
|
||||||
[
|
[
|
||||||
(l(!0),
|
(o(!0),
|
||||||
u(
|
d(
|
||||||
x,
|
x,
|
||||||
null,
|
null,
|
||||||
R(
|
R(
|
||||||
t(e).data
|
t(e).data
|
||||||
.instructors,
|
.instructors,
|
||||||
(n) => (
|
(g) => (
|
||||||
l(),
|
o(),
|
||||||
y(
|
b(
|
||||||
O,
|
O,
|
||||||
{
|
{
|
||||||
user: n,
|
user: g,
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
8,
|
8,
|
||||||
@@ -932,8 +955,8 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
),
|
),
|
||||||
t(e).data.instructors.length ==
|
t(e).data.instructors.length ==
|
||||||
1
|
1
|
||||||
? (l(),
|
? (o(),
|
||||||
u(
|
d(
|
||||||
"span",
|
"span",
|
||||||
He,
|
He,
|
||||||
r(
|
r(
|
||||||
@@ -946,10 +969,10 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
: v("", !0),
|
: v("", !0),
|
||||||
t(e).data.instructors.length ==
|
t(e).data.instructors.length ==
|
||||||
2
|
2
|
||||||
? (l(),
|
? (o(),
|
||||||
u(
|
d(
|
||||||
"span",
|
"span",
|
||||||
Ae,
|
Pe,
|
||||||
r(
|
r(
|
||||||
t(e).data
|
t(e).data
|
||||||
.instructors[0]
|
.instructors[0]
|
||||||
@@ -965,10 +988,10 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
))
|
))
|
||||||
: v("", !0),
|
: v("", !0),
|
||||||
t(e).data.instructors.length > 2
|
t(e).data.instructors.length > 2
|
||||||
? (l(),
|
? (o(),
|
||||||
u(
|
d(
|
||||||
"span",
|
"span",
|
||||||
Pe,
|
Ae,
|
||||||
r(
|
r(
|
||||||
t(e).data
|
t(e).data
|
||||||
.instructors[0]
|
.instructors[0]
|
||||||
@@ -988,15 +1011,15 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
]),
|
]),
|
||||||
]),
|
]),
|
||||||
s("div", Fe, [
|
s("div", Fe, [
|
||||||
(l(!0),
|
(o(!0),
|
||||||
u(
|
d(
|
||||||
x,
|
x,
|
||||||
null,
|
null,
|
||||||
R(
|
R(
|
||||||
t(e).data.tags,
|
t(e).data.tags,
|
||||||
(n) => (
|
(g) => (
|
||||||
l(),
|
o(),
|
||||||
y(
|
b(
|
||||||
t(Y),
|
t(Y),
|
||||||
{
|
{
|
||||||
theme: "gray",
|
theme: "gray",
|
||||||
@@ -1008,7 +1031,7 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
() => [
|
() => [
|
||||||
V(
|
V(
|
||||||
r(
|
r(
|
||||||
n
|
g
|
||||||
),
|
),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
@@ -1048,8 +1071,8 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
t(e).data.avg_rating
|
t(e).data.avg_rating
|
||||||
? (l(),
|
? (o(),
|
||||||
y(
|
b(
|
||||||
Ce,
|
Ce,
|
||||||
{
|
{
|
||||||
key: 0,
|
key: 0,
|
||||||
@@ -1083,5 +1106,5 @@ const te = { class: "shadow rounded-md min-w-80" },
|
|||||||
: v("", !0);
|
: v("", !0);
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { tt as default };
|
export { st as default };
|
||||||
//# sourceMappingURL=CourseDetail-MceVHLH3.js.map
|
//# sourceMappingURL=CourseDetail-01NBXo60.js.map
|
||||||
1
lms/public/frontend/assets/CourseDetail-01NBXo60.js.map
Normal file
1
lms/public/frontend/assets/CourseDetail-01NBXo60.js.map
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,32 +1,33 @@
|
|||||||
import {
|
import {
|
||||||
af as N,
|
af as M,
|
||||||
r as b,
|
r as B,
|
||||||
k as B,
|
k as H,
|
||||||
x as e,
|
x as t,
|
||||||
y as n,
|
y as n,
|
||||||
C as r,
|
K as e,
|
||||||
I as l,
|
H as r,
|
||||||
J as p,
|
L as l,
|
||||||
Q as k,
|
M as k,
|
||||||
R as f,
|
Q as x,
|
||||||
A as i,
|
R as g,
|
||||||
B as u,
|
F as u,
|
||||||
G as m,
|
G as i,
|
||||||
H as t,
|
J as d,
|
||||||
F as x,
|
I as v,
|
||||||
ah as M,
|
ag as I,
|
||||||
U as H,
|
U as O,
|
||||||
ai as I,
|
ah as R,
|
||||||
aj as V,
|
ai as V,
|
||||||
X as j,
|
X as F,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
import { a as d } from "./index-Vx7mSx23.js";
|
import { a as h } from "./index-6k1S_EjG.js";
|
||||||
|
import { F as L } from "./file-text-w2g11TfY.js";
|
||||||
/**
|
/**
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
*
|
*
|
||||||
* This source code is licensed under the ISC license.
|
* This source code is licensed under the ISC license.
|
||||||
* See the LICENSE file in the root directory of this source tree.
|
* See the LICENSE file in the root directory of this source tree.
|
||||||
*/ const O = d("ChevronRightIcon", [
|
*/ const q = h("ChevronRightIcon", [
|
||||||
["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }],
|
["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }],
|
||||||
]);
|
]);
|
||||||
/**
|
/**
|
||||||
@@ -34,25 +35,7 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
*
|
*
|
||||||
* This source code is licensed under the ISC license.
|
* This source code is licensed under the ISC license.
|
||||||
* See the LICENSE file in the root directory of this source tree.
|
* See the LICENSE file in the root directory of this source tree.
|
||||||
*/ const R = d("FileTextIcon", [
|
*/ const j = h("HelpCircleIcon", [
|
||||||
[
|
|
||||||
"path",
|
|
||||||
{
|
|
||||||
d: "M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z",
|
|
||||||
key: "1nnpy2",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
["polyline", { points: "14 2 14 8 20 8", key: "1ew0cm" }],
|
|
||||||
["line", { x1: "16", x2: "8", y1: "13", y2: "13", key: "14keom" }],
|
|
||||||
["line", { x1: "16", x2: "8", y1: "17", y2: "17", key: "17nazh" }],
|
|
||||||
["line", { x1: "10", x2: "8", y1: "9", y2: "9", key: "1a5vjj" }],
|
|
||||||
]);
|
|
||||||
/**
|
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
|
||||||
*
|
|
||||||
* This source code is licensed under the ISC license.
|
|
||||||
* See the LICENSE file in the root directory of this source tree.
|
|
||||||
*/ const z = d("HelpCircleIcon", [
|
|
||||||
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
||||||
["path", { d: "M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3", key: "1u773s" }],
|
["path", { d: "M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3", key: "1u773s" }],
|
||||||
["path", { d: "M12 17h.01", key: "p32p05" }],
|
["path", { d: "M12 17h.01", key: "p32p05" }],
|
||||||
@@ -62,7 +45,7 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
*
|
*
|
||||||
* This source code is licensed under the ISC license.
|
* This source code is licensed under the ISC license.
|
||||||
* See the LICENSE file in the root directory of this source tree.
|
* See the LICENSE file in the root directory of this source tree.
|
||||||
*/ const F = d("MonitorPlayIcon", [
|
*/ const z = h("MonitorPlayIcon", [
|
||||||
["path", { d: "m10 7 5 3-5 3Z", key: "29ljg6" }],
|
["path", { d: "m10 7 5 3-5 3Z", key: "29ljg6" }],
|
||||||
[
|
[
|
||||||
"rect",
|
"rect",
|
||||||
@@ -78,14 +61,14 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
["path", { d: "M12 17v4", key: "1riwvh" }],
|
["path", { d: "M12 17v4", key: "1riwvh" }],
|
||||||
["path", { d: "M8 21h8", key: "1ev6f3" }],
|
["path", { d: "M8 21h8", key: "1ev6f3" }],
|
||||||
]),
|
]),
|
||||||
L = { class: "text-base" },
|
P = { class: "text-base" },
|
||||||
q = { key: 0, class: "flex justify-between mb-4" },
|
Q = { key: 0, class: "flex justify-between mb-4" },
|
||||||
T = { class: "text-2xl font-semibold" },
|
S = { class: "text-2xl font-semibold" },
|
||||||
P = { class: "text-base text-left font-medium" },
|
T = { class: "text-base text-left font-medium" },
|
||||||
Q = { class: "ml-auto text-sm" },
|
D = { class: "ml-auto text-sm" },
|
||||||
S = { class: "outline-lesson py-2 pl-8" },
|
E = { class: "outline-lesson py-2 pl-8" },
|
||||||
A = { class: "flex items-center text-sm" },
|
G = { class: "flex items-center text-sm" },
|
||||||
J = {
|
Z = {
|
||||||
__name: "CourseOutline",
|
__name: "CourseOutline",
|
||||||
props: {
|
props: {
|
||||||
courseName: { type: String, required: !0 },
|
courseName: { type: String, required: !0 },
|
||||||
@@ -93,77 +76,81 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
showHeader: { type: Boolean, default: !1 },
|
showHeader: { type: Boolean, default: !1 },
|
||||||
},
|
},
|
||||||
setup(c) {
|
setup(c) {
|
||||||
const _ = N();
|
const w = M();
|
||||||
b(!0);
|
B(!0);
|
||||||
const y = c,
|
const p = c,
|
||||||
v = B({
|
m = H({
|
||||||
url: "lms.lms.utils.get_course_outline",
|
url: "lms.lms.utils.get_course_outline",
|
||||||
cache: ["course_outline", y.courseName],
|
cache: ["course_outline", p.courseName],
|
||||||
params: { course: y.courseName },
|
params: { course: p.courseName },
|
||||||
auto: !0,
|
auto: !0,
|
||||||
}),
|
}),
|
||||||
w = (a) => a == _.params.chapterNumber || a == 1;
|
C = (a) => a == w.params.chapterNumber || a == 1;
|
||||||
return (a, D) => {
|
return (a, J) => {
|
||||||
const g = j("router-link");
|
var y, f;
|
||||||
|
const N = F("router-link");
|
||||||
return (
|
return (
|
||||||
e(),
|
t(),
|
||||||
n("div", L, [
|
n("div", P, [
|
||||||
c.showHeader
|
c.showHeader && (y = e(m).data) != null && y.length
|
||||||
? (e(),
|
? (t(),
|
||||||
n("div", q, [
|
n("div", Q, [
|
||||||
r("div", T, l(a.__("Course Content")), 1),
|
r("div", S, l(a.__("Course Content")), 1),
|
||||||
]))
|
]))
|
||||||
: p("", !0),
|
: k("", !0),
|
||||||
r(
|
r(
|
||||||
"div",
|
"div",
|
||||||
{
|
{
|
||||||
class: x({
|
class: v({
|
||||||
"shadow rounded-md pt-2 px-2":
|
"shadow rounded-md pt-2 px-2":
|
||||||
c.showOutline,
|
c.showOutline &&
|
||||||
|
((f = e(m).data) == null
|
||||||
|
? void 0
|
||||||
|
: f.length),
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
[
|
[
|
||||||
(e(!0),
|
(t(!0),
|
||||||
n(
|
n(
|
||||||
k,
|
x,
|
||||||
null,
|
null,
|
||||||
f(
|
g(
|
||||||
t(v).data,
|
e(m).data,
|
||||||
(o, C) => (
|
(o, b) => (
|
||||||
e(),
|
t(),
|
||||||
i(
|
u(
|
||||||
t(V),
|
e(V),
|
||||||
{
|
{
|
||||||
key: o.name,
|
key: o.name,
|
||||||
defaultOpen: w(o.idx),
|
defaultOpen: C(o.idx),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
default: u(
|
default: i(
|
||||||
({ open: h }) => [
|
({ open: _ }) => [
|
||||||
m(
|
d(
|
||||||
t(M),
|
e(I),
|
||||||
{
|
{
|
||||||
ref_for: !0,
|
ref_for: !0,
|
||||||
ref: "",
|
ref: "",
|
||||||
class: "flex w-full px-2 py-4",
|
class: "flex w-full px-2 py-4",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
default: u(
|
default: i(
|
||||||
() => [
|
() => [
|
||||||
m(
|
d(
|
||||||
t(
|
e(
|
||||||
O
|
q
|
||||||
),
|
),
|
||||||
{
|
{
|
||||||
class: x(
|
class: v(
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
"rotate-90 transform duration-200":
|
"rotate-90 transform duration-200":
|
||||||
h,
|
_,
|
||||||
"duration-200":
|
"duration-200":
|
||||||
!h,
|
!_,
|
||||||
open:
|
open:
|
||||||
C ==
|
b ==
|
||||||
1,
|
1,
|
||||||
},
|
},
|
||||||
"h-4 w-4 text-gray-900 stroke-1 mr-2",
|
"h-4 w-4 text-gray-900 stroke-1 mr-2",
|
||||||
@@ -178,7 +165,7 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
),
|
),
|
||||||
r(
|
r(
|
||||||
"div",
|
"div",
|
||||||
P,
|
T,
|
||||||
l(
|
l(
|
||||||
o.title
|
o.title
|
||||||
),
|
),
|
||||||
@@ -186,7 +173,7 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
),
|
),
|
||||||
r(
|
r(
|
||||||
"div",
|
"div",
|
||||||
Q,
|
D,
|
||||||
l(
|
l(
|
||||||
o
|
o
|
||||||
.lessons
|
.lessons
|
||||||
@@ -213,26 +200,26 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
},
|
},
|
||||||
1536
|
1536
|
||||||
),
|
),
|
||||||
m(
|
d(
|
||||||
t(I),
|
e(R),
|
||||||
{
|
{
|
||||||
class: "pb-2",
|
class: "pb-2",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
default: u(
|
default: i(
|
||||||
() => [
|
() => [
|
||||||
(e(
|
(t(
|
||||||
!0
|
!0
|
||||||
),
|
),
|
||||||
n(
|
n(
|
||||||
k,
|
x,
|
||||||
null,
|
null,
|
||||||
f(
|
g(
|
||||||
o.lessons,
|
o.lessons,
|
||||||
(
|
(
|
||||||
s
|
s
|
||||||
) => (
|
) => (
|
||||||
e(),
|
t(),
|
||||||
n(
|
n(
|
||||||
"div",
|
"div",
|
||||||
{
|
{
|
||||||
@@ -241,10 +228,10 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
[
|
[
|
||||||
r(
|
r(
|
||||||
"div",
|
"div",
|
||||||
S,
|
E,
|
||||||
[
|
[
|
||||||
m(
|
d(
|
||||||
g,
|
N,
|
||||||
{
|
{
|
||||||
to: {
|
to: {
|
||||||
name: "Lesson",
|
name: "Lesson",
|
||||||
@@ -264,18 +251,18 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
default:
|
default:
|
||||||
u(
|
i(
|
||||||
() => [
|
() => [
|
||||||
r(
|
r(
|
||||||
"div",
|
"div",
|
||||||
A,
|
G,
|
||||||
[
|
[
|
||||||
s.icon ===
|
s.icon ===
|
||||||
"icon-youtube"
|
"icon-youtube"
|
||||||
? (e(),
|
? (t(),
|
||||||
i(
|
u(
|
||||||
t(
|
e(
|
||||||
F
|
z
|
||||||
),
|
),
|
||||||
{
|
{
|
||||||
key: 0,
|
key: 0,
|
||||||
@@ -284,10 +271,10 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
))
|
))
|
||||||
: s.icon ===
|
: s.icon ===
|
||||||
"icon-quiz"
|
"icon-quiz"
|
||||||
? (e(),
|
? (t(),
|
||||||
i(
|
u(
|
||||||
t(
|
e(
|
||||||
z
|
j
|
||||||
),
|
),
|
||||||
{
|
{
|
||||||
key: 1,
|
key: 1,
|
||||||
@@ -296,21 +283,21 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
))
|
))
|
||||||
: s.icon ===
|
: s.icon ===
|
||||||
"icon-list"
|
"icon-list"
|
||||||
? (e(),
|
? (t(),
|
||||||
i(
|
u(
|
||||||
t(
|
e(
|
||||||
R
|
L
|
||||||
),
|
),
|
||||||
{
|
{
|
||||||
key: 2,
|
key: 2,
|
||||||
class: "h-4 w-4 text-gray-900 stroke-1 mr-2",
|
class: "h-4 w-4 text-gray-900 stroke-1 mr-2",
|
||||||
}
|
}
|
||||||
))
|
))
|
||||||
: p(
|
: k(
|
||||||
"",
|
"",
|
||||||
!0
|
!0
|
||||||
),
|
),
|
||||||
H(
|
O(
|
||||||
" " +
|
" " +
|
||||||
l(
|
l(
|
||||||
s.title
|
s.title
|
||||||
@@ -361,5 +348,5 @@ import { a as d } from "./index-Vx7mSx23.js";
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { O as C, J as _ };
|
export { q as C, Z as _ };
|
||||||
//# sourceMappingURL=CourseOutline-M5G5Rx7O.js.map
|
//# sourceMappingURL=CourseOutline-AirCiy-C.js.map
|
||||||
1
lms/public/frontend/assets/CourseOutline-AirCiy-C.js.map
Normal file
1
lms/public/frontend/assets/CourseOutline-AirCiy-C.js.map
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,56 +1,56 @@
|
|||||||
import {
|
import {
|
||||||
d as k,
|
d as N,
|
||||||
a5 as w,
|
a5 as k,
|
||||||
r as L,
|
r as w,
|
||||||
j as r,
|
j as r,
|
||||||
y as c,
|
y as u,
|
||||||
H as n,
|
K as n,
|
||||||
C as d,
|
H as d,
|
||||||
G as _,
|
J as m,
|
||||||
A as p,
|
G as c,
|
||||||
B as u,
|
F as p,
|
||||||
J as f,
|
M as f,
|
||||||
|
X as L,
|
||||||
x as l,
|
x as l,
|
||||||
a6 as V,
|
a6 as V,
|
||||||
U as g,
|
U as g,
|
||||||
I as h,
|
L as h,
|
||||||
a7 as $,
|
a7 as $,
|
||||||
F as B,
|
I as j,
|
||||||
N as j,
|
P as B,
|
||||||
a8 as U,
|
a8 as U,
|
||||||
Q as D,
|
Q as D,
|
||||||
R,
|
R as P,
|
||||||
a9 as z,
|
a9 as R,
|
||||||
X as A,
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
import { _ as z } from "./CourseCard-RMpjQ-rq.js";
|
||||||
import { _ as E } from "./CourseCard--twQpeIf.js";
|
import { P as E } from "./plus-0JOmes86.js";
|
||||||
import { P as F } from "./plus-pxSjkL_w.js";
|
import "./UserAvatar-A3tEMZXD.js";
|
||||||
import "./UserAvatar-yrWInUTi.js";
|
import "./index-6k1S_EjG.js";
|
||||||
import "./index-Vx7mSx23.js";
|
import "./star--IkSKstT.js";
|
||||||
import "./star-ypmGZNF0.js";
|
const F = { class: "h-screen" },
|
||||||
const I = { class: "h-screen" },
|
I = { key: 0 },
|
||||||
P = { key: 0 },
|
M = {
|
||||||
S = {
|
|
||||||
class: "sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5",
|
class: "sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5",
|
||||||
},
|
},
|
||||||
G = { class: "flex" },
|
S = { class: "flex" },
|
||||||
H = { class: "" },
|
A = { class: "" },
|
||||||
J = { key: 0, class: "p-5 text-base text-gray-700" },
|
G = { key: 0, class: "p-5 text-base text-gray-700" },
|
||||||
M = {
|
H = {
|
||||||
key: 0,
|
key: 0,
|
||||||
class: "grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-5 my-5 mx-5",
|
class: "grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-5 my-5 mx-5",
|
||||||
},
|
},
|
||||||
Q = {
|
J = {
|
||||||
key: 1,
|
key: 1,
|
||||||
class: "grid flex-1 place-items-center text-xl font-medium text-gray-500",
|
class: "grid flex-1 place-items-center text-xl font-medium text-gray-500",
|
||||||
},
|
},
|
||||||
T = { class: "flex flex-col items-center justify-center mt-4" },
|
K = { class: "flex flex-col items-center justify-center mt-4" },
|
||||||
ee = {
|
Z = {
|
||||||
__name: "Courses",
|
__name: "Courses",
|
||||||
setup(X) {
|
setup(Q) {
|
||||||
var b, y, x;
|
var b, y, x;
|
||||||
const i = k("$user"),
|
const i = N("$user"),
|
||||||
a = w({
|
a = k({
|
||||||
type: "list",
|
type: "list",
|
||||||
doctype: "LMS Course",
|
doctype: "LMS Course",
|
||||||
cache: [
|
cache: [
|
||||||
@@ -62,8 +62,8 @@ const I = { class: "h-screen" },
|
|||||||
url: "lms.lms.utils.get_courses",
|
url: "lms.lms.utils.get_courses",
|
||||||
auto: !0,
|
auto: !0,
|
||||||
}),
|
}),
|
||||||
v = L(0),
|
v = w(0),
|
||||||
m = [
|
_ = [
|
||||||
{
|
{
|
||||||
label: "Live",
|
label: "Live",
|
||||||
courses: r(() => {
|
courses: r(() => {
|
||||||
@@ -98,7 +98,7 @@ const I = { class: "h-screen" },
|
|||||||
];
|
];
|
||||||
return (
|
return (
|
||||||
i.data &&
|
i.data &&
|
||||||
(m.push({
|
(_.push({
|
||||||
label: "Enrolled",
|
label: "Enrolled",
|
||||||
courses: r(() => {
|
courses: r(() => {
|
||||||
var e;
|
var e;
|
||||||
@@ -118,7 +118,7 @@ const I = { class: "h-screen" },
|
|||||||
((x = (y = a.data) == null ? void 0 : y.created) !=
|
((x = (y = a.data) == null ? void 0 : y.created) !=
|
||||||
null &&
|
null &&
|
||||||
x.length)) &&
|
x.length)) &&
|
||||||
m.push({
|
_.push({
|
||||||
label: "Created",
|
label: "Created",
|
||||||
courses: r(() => {
|
courses: r(() => {
|
||||||
var e;
|
var e;
|
||||||
@@ -137,7 +137,7 @@ const I = { class: "h-screen" },
|
|||||||
}),
|
}),
|
||||||
}),
|
}),
|
||||||
i.data.is_moderator &&
|
i.data.is_moderator &&
|
||||||
m.push({
|
_.push({
|
||||||
label: "Under Review",
|
label: "Under Review",
|
||||||
courses: r(() => {
|
courses: r(() => {
|
||||||
var e;
|
var e;
|
||||||
@@ -156,16 +156,15 @@ const I = { class: "h-screen" },
|
|||||||
}),
|
}),
|
||||||
})),
|
})),
|
||||||
(e, s) => {
|
(e, s) => {
|
||||||
var C;
|
const C = L("router-link");
|
||||||
const N = A("router-link");
|
|
||||||
return (
|
return (
|
||||||
l(),
|
l(),
|
||||||
c("div", I, [
|
u("div", F, [
|
||||||
n(a).data
|
n(a).data
|
||||||
? (l(),
|
? (l(),
|
||||||
c("div", P, [
|
u("div", I, [
|
||||||
d("header", S, [
|
d("header", M, [
|
||||||
_(
|
m(
|
||||||
n(V),
|
n(V),
|
||||||
{
|
{
|
||||||
class: "h-7",
|
class: "h-7",
|
||||||
@@ -184,61 +183,88 @@ const I = { class: "h-screen" },
|
|||||||
8,
|
8,
|
||||||
["items"]
|
["items"]
|
||||||
),
|
),
|
||||||
d("div", G, [
|
d("div", S, [
|
||||||
(C = n(i).data) != null &&
|
m(
|
||||||
C.is_moderator
|
C,
|
||||||
? (l(),
|
{
|
||||||
p(
|
to: {
|
||||||
n($),
|
name: "CreateCourse",
|
||||||
{
|
params: {
|
||||||
key: 0,
|
courseName:
|
||||||
variant:
|
"new",
|
||||||
"solid",
|
|
||||||
},
|
},
|
||||||
{
|
},
|
||||||
prefix: u(
|
},
|
||||||
() => [
|
{
|
||||||
_(
|
default: c(() => {
|
||||||
|
var t;
|
||||||
|
return [
|
||||||
|
(t =
|
||||||
|
n(
|
||||||
|
i
|
||||||
|
).data) !=
|
||||||
|
null &&
|
||||||
|
t.is_moderator
|
||||||
|
? (l(),
|
||||||
|
p(
|
||||||
n(
|
n(
|
||||||
F
|
$
|
||||||
),
|
),
|
||||||
{
|
{
|
||||||
class: "h-4 w-4",
|
key: 0,
|
||||||
}
|
variant:
|
||||||
),
|
"solid",
|
||||||
]
|
},
|
||||||
),
|
{
|
||||||
default: u(
|
prefix: c(
|
||||||
() => [
|
() => [
|
||||||
g(
|
m(
|
||||||
" " +
|
n(
|
||||||
h(
|
E
|
||||||
e.__(
|
),
|
||||||
"New Course"
|
{
|
||||||
)
|
class: "h-4 w-4",
|
||||||
|
}
|
||||||
|
),
|
||||||
|
]
|
||||||
),
|
),
|
||||||
1
|
default:
|
||||||
),
|
c(
|
||||||
]
|
() => [
|
||||||
),
|
g(
|
||||||
_: 1,
|
" " +
|
||||||
}
|
h(
|
||||||
))
|
e.__(
|
||||||
: f("", !0),
|
"New Course"
|
||||||
|
)
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]
|
||||||
|
),
|
||||||
|
_: 1,
|
||||||
|
}
|
||||||
|
))
|
||||||
|
: f("", !0),
|
||||||
|
];
|
||||||
|
}),
|
||||||
|
_: 1,
|
||||||
|
}
|
||||||
|
),
|
||||||
]),
|
]),
|
||||||
]),
|
]),
|
||||||
d("div", H, [
|
d("div", A, [
|
||||||
n(a).data.length == 0 &&
|
n(a).data.length == 0 &&
|
||||||
n(a).list.loading
|
n(a).list.loading
|
||||||
? (l(),
|
? (l(),
|
||||||
c(
|
u(
|
||||||
"div",
|
"div",
|
||||||
J,
|
G,
|
||||||
" Loading Courses... "
|
" Loading Courses... "
|
||||||
))
|
))
|
||||||
: (l(),
|
: (l(),
|
||||||
p(
|
p(
|
||||||
n(z),
|
n(R),
|
||||||
{
|
{
|
||||||
key: 1,
|
key: 1,
|
||||||
modelValue: v.value,
|
modelValue: v.value,
|
||||||
@@ -247,12 +273,12 @@ const I = { class: "h-screen" },
|
|||||||
(s[0] = (t) =>
|
(s[0] = (t) =>
|
||||||
(v.value =
|
(v.value =
|
||||||
t)),
|
t)),
|
||||||
tabs: m,
|
tabs: _,
|
||||||
tablistClass:
|
tablistClass:
|
||||||
"overflow-x-visible",
|
"overflow-x-visible",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
tab: u(
|
tab: c(
|
||||||
({
|
({
|
||||||
tab: t,
|
tab: t,
|
||||||
selected: o,
|
selected: o,
|
||||||
@@ -264,7 +290,7 @@ const I = { class: "h-screen" },
|
|||||||
d(
|
d(
|
||||||
"button",
|
"button",
|
||||||
{
|
{
|
||||||
class: B(
|
class: j(
|
||||||
[
|
[
|
||||||
"group -mb-px flex items-center gap-2 overflow-hidden border-b border-transparent py-2.5 text-base text-gray-600 duration-300 ease-in-out hover:border-gray-400 hover:text-gray-900",
|
"group -mb-px flex items-center gap-2 overflow-hidden border-b border-transparent py-2.5 text-base text-gray-600 duration-300 ease-in-out hover:border-gray-400 hover:text-gray-900",
|
||||||
{
|
{
|
||||||
@@ -278,7 +304,7 @@ const I = { class: "h-screen" },
|
|||||||
t.icon
|
t.icon
|
||||||
? (l(),
|
? (l(),
|
||||||
p(
|
p(
|
||||||
j(
|
B(
|
||||||
t.icon
|
t.icon
|
||||||
),
|
),
|
||||||
{
|
{
|
||||||
@@ -300,7 +326,7 @@ const I = { class: "h-screen" },
|
|||||||
" ",
|
" ",
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
_(
|
m(
|
||||||
n(
|
n(
|
||||||
U
|
U
|
||||||
),
|
),
|
||||||
@@ -309,7 +335,7 @@ const I = { class: "h-screen" },
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
default:
|
default:
|
||||||
u(
|
c(
|
||||||
() => [
|
() => [
|
||||||
g(
|
g(
|
||||||
h(
|
h(
|
||||||
@@ -330,7 +356,7 @@ const I = { class: "h-screen" },
|
|||||||
),
|
),
|
||||||
]
|
]
|
||||||
),
|
),
|
||||||
default: u(
|
default: c(
|
||||||
({
|
({
|
||||||
tab: t,
|
tab: t,
|
||||||
}) => [
|
}) => [
|
||||||
@@ -339,17 +365,17 @@ const I = { class: "h-screen" },
|
|||||||
.value
|
.value
|
||||||
.length
|
.length
|
||||||
? (l(),
|
? (l(),
|
||||||
c(
|
u(
|
||||||
"div",
|
"div",
|
||||||
M,
|
H,
|
||||||
[
|
[
|
||||||
(l(
|
(l(
|
||||||
!0
|
!0
|
||||||
),
|
),
|
||||||
c(
|
u(
|
||||||
D,
|
D,
|
||||||
null,
|
null,
|
||||||
R(
|
P(
|
||||||
t
|
t
|
||||||
.courses
|
.courses
|
||||||
.value,
|
.value,
|
||||||
@@ -358,7 +384,7 @@ const I = { class: "h-screen" },
|
|||||||
) => (
|
) => (
|
||||||
l(),
|
l(),
|
||||||
p(
|
p(
|
||||||
N,
|
C,
|
||||||
{
|
{
|
||||||
to:
|
to:
|
||||||
o.membership &&
|
o.membership &&
|
||||||
@@ -398,10 +424,10 @@ const I = { class: "h-screen" },
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
default:
|
default:
|
||||||
u(
|
c(
|
||||||
() => [
|
() => [
|
||||||
_(
|
m(
|
||||||
E,
|
z,
|
||||||
{
|
{
|
||||||
course: o,
|
course: o,
|
||||||
},
|
},
|
||||||
@@ -427,13 +453,13 @@ const I = { class: "h-screen" },
|
|||||||
]
|
]
|
||||||
))
|
))
|
||||||
: (l(),
|
: (l(),
|
||||||
c(
|
u(
|
||||||
"div",
|
"div",
|
||||||
Q,
|
J,
|
||||||
[
|
[
|
||||||
d(
|
d(
|
||||||
"div",
|
"div",
|
||||||
T,
|
K,
|
||||||
[
|
[
|
||||||
d(
|
d(
|
||||||
"div",
|
"div",
|
||||||
@@ -469,5 +495,5 @@ const I = { class: "h-screen" },
|
|||||||
);
|
);
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { ee as default };
|
export { Z as default };
|
||||||
//# sourceMappingURL=Courses-twOd7MxD.js.map
|
//# sourceMappingURL=Courses-lYNeP5iT.js.map
|
||||||
1
lms/public/frontend/assets/Courses-lYNeP5iT.js.map
Normal file
1
lms/public/frontend/assets/Courses-lYNeP5iT.js.map
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
798
lms/public/frontend/assets/CreateCourse-0E2-P7Ge.js
Normal file
798
lms/public/frontend/assets/CreateCourse-0E2-P7Ge.js
Normal file
@@ -0,0 +1,798 @@
|
|||||||
|
var O = Object.defineProperty;
|
||||||
|
var E = Object.getOwnPropertySymbols;
|
||||||
|
var Q = Object.prototype.hasOwnProperty,
|
||||||
|
q = Object.prototype.propertyIsEnumerable;
|
||||||
|
var L = (c, d, i) =>
|
||||||
|
d in c
|
||||||
|
? O(c, d, {
|
||||||
|
enumerable: !0,
|
||||||
|
configurable: !0,
|
||||||
|
writable: !0,
|
||||||
|
value: i,
|
||||||
|
})
|
||||||
|
: (c[d] = i),
|
||||||
|
w = (c, d) => {
|
||||||
|
for (var i in d || (d = {})) Q.call(d, i) && L(c, i, d[i]);
|
||||||
|
if (E) for (var i of E(d)) q.call(d, i) && L(c, i, d[i]);
|
||||||
|
return c;
|
||||||
|
};
|
||||||
|
import {
|
||||||
|
d as W,
|
||||||
|
r as U,
|
||||||
|
j as P,
|
||||||
|
ad as Y,
|
||||||
|
k as M,
|
||||||
|
s as Z,
|
||||||
|
y as f,
|
||||||
|
H as o,
|
||||||
|
J as n,
|
||||||
|
K as a,
|
||||||
|
F as R,
|
||||||
|
G as g,
|
||||||
|
M as N,
|
||||||
|
L as u,
|
||||||
|
Q as ee,
|
||||||
|
R as le,
|
||||||
|
aB as se,
|
||||||
|
X as oe,
|
||||||
|
x as _,
|
||||||
|
a6 as te,
|
||||||
|
a7 as x,
|
||||||
|
aC as p,
|
||||||
|
at as ae,
|
||||||
|
U as T,
|
||||||
|
aA as re,
|
||||||
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
|
import { e as ie, c as ne, d as ue } from "./index-6k1S_EjG.js";
|
||||||
|
import { _ as de, X as B } from "./Link-rwTAUhIL.js";
|
||||||
|
import { F as ce } from "./file-text-w2g11TfY.js";
|
||||||
|
import "./plus-0JOmes86.js";
|
||||||
|
const me = { class: "h-screen text-base" },
|
||||||
|
_e = { class: "grid grid-cols-[70%,30%] h-full" },
|
||||||
|
pe = {
|
||||||
|
class: "sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5",
|
||||||
|
},
|
||||||
|
ve = { class: "flex items-center" },
|
||||||
|
be = { class: "mt-5 mb-10" },
|
||||||
|
fe = { class: "container mb-5" },
|
||||||
|
ge = { class: "text-lg font-semibold mb-4" },
|
||||||
|
ye = { class: "mb-4" },
|
||||||
|
he = { class: "mb-1.5 text-sm text-gray-700" },
|
||||||
|
Ce = { class: "mb-4" },
|
||||||
|
Ve = { key: 1, class: "mb-4" },
|
||||||
|
ke = { class: "text-xs text-gray-600 mb-1" },
|
||||||
|
xe = { class: "flex items-center" },
|
||||||
|
we = { class: "border rounded-md p-2 mr-2" },
|
||||||
|
Ue = { class: "flex flex-col" },
|
||||||
|
Ne = { class: "text-sm text-gray-500 mt-1" },
|
||||||
|
Te = { class: "mb-1.5 text-sm text-gray-700" },
|
||||||
|
$e = { class: "flex items-center" },
|
||||||
|
Se = { class: "flex items-center bg-gray-100 p-2 rounded-md mr-2" },
|
||||||
|
Fe = { class: "container border-t" },
|
||||||
|
je = { class: "text-lg font-semibold mt-5 mb-4" },
|
||||||
|
De = { class: "flex items-center justify-between mb-5" },
|
||||||
|
Ee = { class: "container border-t" },
|
||||||
|
Le = { class: "text-lg font-semibold mt-5 mb-4" },
|
||||||
|
Pe = { class: "mb-4" },
|
||||||
|
Me = { class: "bg-gray-50 px-5 pt-5" },
|
||||||
|
Re = { key: 0 },
|
||||||
|
Be = { class: "text-xl font-semibold" },
|
||||||
|
ze = { key: 0 },
|
||||||
|
Ie = { key: 1, class: "border bg-white rounded-md p-5 text-center mt-4" },
|
||||||
|
Oe = {
|
||||||
|
__name: "CreateCourse",
|
||||||
|
props: { courseName: { type: String } },
|
||||||
|
setup(c) {
|
||||||
|
const d = W("$user"),
|
||||||
|
i = U(""),
|
||||||
|
v = U(""),
|
||||||
|
m = U(null),
|
||||||
|
y = c,
|
||||||
|
z = P(() => {
|
||||||
|
var e;
|
||||||
|
let l = [{ label: "Courses", route: { name: "Courses" } }];
|
||||||
|
return (
|
||||||
|
r.doc &&
|
||||||
|
l.push({
|
||||||
|
label: (e = r.doc) == null ? void 0 : e.title,
|
||||||
|
route: {
|
||||||
|
name: "CourseDetail",
|
||||||
|
params: { courseName: y.courseName },
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
l.push({
|
||||||
|
label:
|
||||||
|
y.courseName == "new"
|
||||||
|
? "New Course"
|
||||||
|
: "Edit Course",
|
||||||
|
route: {
|
||||||
|
name: "CreateCourse",
|
||||||
|
params: { courseName: y.courseName },
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
l
|
||||||
|
);
|
||||||
|
}),
|
||||||
|
r = Y({
|
||||||
|
doctype: "LMS Course",
|
||||||
|
name: y.courseName,
|
||||||
|
auto: !1,
|
||||||
|
onSuccess(l) {
|
||||||
|
I.reload({ image: l.image }), (i.value = l.tags);
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
I = M({
|
||||||
|
url: "lms.lms.api.get_file_info",
|
||||||
|
makeParams(l) {
|
||||||
|
return { file_url: l.image };
|
||||||
|
},
|
||||||
|
auto: !1,
|
||||||
|
onSuccess(l) {
|
||||||
|
m.value = l;
|
||||||
|
},
|
||||||
|
});
|
||||||
|
Z(() => {
|
||||||
|
var l, e;
|
||||||
|
(!((l = d.data) != null && l.is_moderator) ||
|
||||||
|
!((e = d.data) != null && e.is_instructor)) &&
|
||||||
|
(window.location.href = "/login"),
|
||||||
|
y.courseName !== "new" && r.reload();
|
||||||
|
});
|
||||||
|
const t = P(() => {
|
||||||
|
var l, e, b, h, s, C, V, k, F, j, D;
|
||||||
|
return {
|
||||||
|
title: ((l = r.doc) == null ? void 0 : l.title) || "",
|
||||||
|
short_introduction:
|
||||||
|
((e = r.doc) == null
|
||||||
|
? void 0
|
||||||
|
: e.short_introduction) || "",
|
||||||
|
description:
|
||||||
|
((b = r.doc) == null ? void 0 : b.description) ||
|
||||||
|
"",
|
||||||
|
video_link:
|
||||||
|
((h = r.doc) == null ? void 0 : h.video_link) || "",
|
||||||
|
course_image:
|
||||||
|
((s = r.doc) == null ? void 0 : s.image) || null,
|
||||||
|
tags: i.value,
|
||||||
|
published: !!((C = r.doc) != null && C.published),
|
||||||
|
upcoming: !!((V = r.doc) != null && V.upcoming),
|
||||||
|
disable_self_learning: !!(
|
||||||
|
(k = r.doc) != null && k.disable_self_learning
|
||||||
|
),
|
||||||
|
course_image: m.value,
|
||||||
|
paid_course: !!((F = r.doc) != null && F.paid_course),
|
||||||
|
course_price:
|
||||||
|
((j = r.doc) == null ? void 0 : j.course_price) ||
|
||||||
|
"",
|
||||||
|
currency:
|
||||||
|
((D = r.doc) == null ? void 0 : D.currency) || "",
|
||||||
|
};
|
||||||
|
}),
|
||||||
|
K = M({
|
||||||
|
url: "frappe.client.insert",
|
||||||
|
makeParams(l) {
|
||||||
|
return {
|
||||||
|
doc: w(
|
||||||
|
{
|
||||||
|
doctype: "LMS Course",
|
||||||
|
image: m.value.file_url,
|
||||||
|
},
|
||||||
|
l
|
||||||
|
),
|
||||||
|
};
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
A = () => {
|
||||||
|
var l;
|
||||||
|
r.doc
|
||||||
|
? r.setValue.submit(
|
||||||
|
w(
|
||||||
|
{
|
||||||
|
image:
|
||||||
|
((l = m.value) == null
|
||||||
|
? void 0
|
||||||
|
: l.file_url) || null,
|
||||||
|
},
|
||||||
|
t.value
|
||||||
|
),
|
||||||
|
{
|
||||||
|
validate() {
|
||||||
|
return $();
|
||||||
|
},
|
||||||
|
onError(e) {
|
||||||
|
S(e);
|
||||||
|
},
|
||||||
|
}
|
||||||
|
)
|
||||||
|
: K.submit(t.value, {
|
||||||
|
validate() {
|
||||||
|
return $();
|
||||||
|
},
|
||||||
|
onError(e) {
|
||||||
|
S(e);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
$ = () => {
|
||||||
|
const l = [
|
||||||
|
"title",
|
||||||
|
"short_introduction",
|
||||||
|
"description",
|
||||||
|
"video_link",
|
||||||
|
"course_image",
|
||||||
|
];
|
||||||
|
for (const e of l)
|
||||||
|
if (!t.value[e])
|
||||||
|
return `${ie(e.split("_").join(" "))} is mandatory`;
|
||||||
|
if (
|
||||||
|
t.value.paid_course &&
|
||||||
|
(!t.value.course_price || !t.value.currency)
|
||||||
|
)
|
||||||
|
return "Course price and currency are mandatory for paid courses";
|
||||||
|
},
|
||||||
|
X = (l) => {
|
||||||
|
let e = l.name.split(".").pop().toLowerCase();
|
||||||
|
if (!["jpg", "jpeg", "png"].includes(e))
|
||||||
|
return "Only image file is allowed.";
|
||||||
|
},
|
||||||
|
G = () => {
|
||||||
|
v.value &&
|
||||||
|
((i.value = i.value
|
||||||
|
? `${i.value}, ${v.value}`
|
||||||
|
: v.value),
|
||||||
|
(v.value = ""));
|
||||||
|
},
|
||||||
|
H = (l) => {
|
||||||
|
var e;
|
||||||
|
(i.value =
|
||||||
|
(e = i.value) == null
|
||||||
|
? void 0
|
||||||
|
: e
|
||||||
|
.split(", ")
|
||||||
|
.filter((b) => b !== l)
|
||||||
|
.join(", ")),
|
||||||
|
(v.value = "");
|
||||||
|
},
|
||||||
|
S = (l) => {
|
||||||
|
var e;
|
||||||
|
ne({
|
||||||
|
title: "Error",
|
||||||
|
text: ((e = l.messages) == null ? void 0 : e[0]) || l,
|
||||||
|
icon: "x",
|
||||||
|
iconClasses: "bg-red-600 text-white rounded-md p-px",
|
||||||
|
position: "top-center",
|
||||||
|
timeout: 10,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
J = () => {
|
||||||
|
(m.value = null), (t.value.course_image = null);
|
||||||
|
};
|
||||||
|
return (l, e) => {
|
||||||
|
var h;
|
||||||
|
const b = oe("router-link");
|
||||||
|
return (
|
||||||
|
_(),
|
||||||
|
f("div", me, [
|
||||||
|
o("div", _e, [
|
||||||
|
o("div", null, [
|
||||||
|
o("header", pe, [
|
||||||
|
n(
|
||||||
|
a(te),
|
||||||
|
{ class: "h-7", items: z.value },
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["items"]
|
||||||
|
),
|
||||||
|
o("div", ve, [
|
||||||
|
a(r).doc
|
||||||
|
? (_(),
|
||||||
|
R(
|
||||||
|
b,
|
||||||
|
{
|
||||||
|
key: 0,
|
||||||
|
to: {
|
||||||
|
name: "CourseDetail",
|
||||||
|
params: {
|
||||||
|
courseName:
|
||||||
|
a(r).doc
|
||||||
|
.name,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
default: g(() => [
|
||||||
|
n(a(x), null, {
|
||||||
|
default: g(
|
||||||
|
() => [
|
||||||
|
o(
|
||||||
|
"span",
|
||||||
|
null,
|
||||||
|
u(
|
||||||
|
l.__(
|
||||||
|
"View Course"
|
||||||
|
)
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]
|
||||||
|
),
|
||||||
|
_: 1,
|
||||||
|
}),
|
||||||
|
]),
|
||||||
|
_: 1,
|
||||||
|
},
|
||||||
|
8,
|
||||||
|
["to"]
|
||||||
|
))
|
||||||
|
: N("", !0),
|
||||||
|
n(
|
||||||
|
a(x),
|
||||||
|
{
|
||||||
|
variant: "solid",
|
||||||
|
onClick:
|
||||||
|
e[0] || (e[0] = (s) => A()),
|
||||||
|
class: "ml-2",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
default: g(() => [
|
||||||
|
o(
|
||||||
|
"span",
|
||||||
|
null,
|
||||||
|
u(l.__("Save")),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
_: 1,
|
||||||
|
}
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
o("div", be, [
|
||||||
|
o("div", fe, [
|
||||||
|
o(
|
||||||
|
"div",
|
||||||
|
ge,
|
||||||
|
u(l.__("Course Details")),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
n(
|
||||||
|
a(p),
|
||||||
|
{
|
||||||
|
modelValue: t.value.title,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
e[1] ||
|
||||||
|
(e[1] = (s) =>
|
||||||
|
(t.value.title = s)),
|
||||||
|
label: l.__("Title"),
|
||||||
|
class: "mb-4",
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["modelValue", "label"]
|
||||||
|
),
|
||||||
|
n(
|
||||||
|
a(p),
|
||||||
|
{
|
||||||
|
modelValue:
|
||||||
|
t.value.short_introduction,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
e[2] ||
|
||||||
|
(e[2] = (s) =>
|
||||||
|
(t.value.short_introduction =
|
||||||
|
s)),
|
||||||
|
label: l.__(
|
||||||
|
"Short Introduction"
|
||||||
|
),
|
||||||
|
class: "mb-4",
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["modelValue", "label"]
|
||||||
|
),
|
||||||
|
o("div", ye, [
|
||||||
|
o(
|
||||||
|
"div",
|
||||||
|
he,
|
||||||
|
u(l.__("Course Description")),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
n(
|
||||||
|
a(ae),
|
||||||
|
{
|
||||||
|
content:
|
||||||
|
t.value.description,
|
||||||
|
onChange:
|
||||||
|
e[3] ||
|
||||||
|
(e[3] = (s) =>
|
||||||
|
(t.value.description =
|
||||||
|
s)),
|
||||||
|
editable: !0,
|
||||||
|
fixedMenu: !0,
|
||||||
|
editorClass:
|
||||||
|
"prose-sm max-w-none border-b border-x bg-gray-100 rounded-b-md py-1 px-2 min-h-[7rem]",
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["content"]
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
m.value
|
||||||
|
? (_(),
|
||||||
|
f("div", Ve, [
|
||||||
|
o(
|
||||||
|
"div",
|
||||||
|
ke,
|
||||||
|
u(l.__("Course Image")),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
o("div", xe, [
|
||||||
|
o("div", we, [
|
||||||
|
n(a(ce), {
|
||||||
|
class: "h-5 w-5 stroke-1.5 text-gray-700",
|
||||||
|
}),
|
||||||
|
]),
|
||||||
|
o("div", Ue, [
|
||||||
|
o(
|
||||||
|
"span",
|
||||||
|
null,
|
||||||
|
u(
|
||||||
|
m.value
|
||||||
|
.file_name
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
o(
|
||||||
|
"span",
|
||||||
|
Ne,
|
||||||
|
u(
|
||||||
|
a(ue)(
|
||||||
|
m.value
|
||||||
|
.file_size
|
||||||
|
)
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
n(a(B), {
|
||||||
|
onClick:
|
||||||
|
e[5] ||
|
||||||
|
(e[5] = (s) =>
|
||||||
|
J()),
|
||||||
|
class: "bg-gray-200 rounded-md cursor-pointer stroke-1.5 w-5 h-5 p-1 ml-4",
|
||||||
|
}),
|
||||||
|
]),
|
||||||
|
]))
|
||||||
|
: (_(),
|
||||||
|
R(
|
||||||
|
a(re),
|
||||||
|
{
|
||||||
|
key: 0,
|
||||||
|
fileTypes: ["image/*"],
|
||||||
|
validateFile: X,
|
||||||
|
onSuccess:
|
||||||
|
e[4] ||
|
||||||
|
(e[4] = (s) => {
|
||||||
|
m.value = s;
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
default: g(
|
||||||
|
({
|
||||||
|
file: s,
|
||||||
|
progress: C,
|
||||||
|
uploading: V,
|
||||||
|
openFileSelector:
|
||||||
|
k,
|
||||||
|
}) => [
|
||||||
|
o("div", Ce, [
|
||||||
|
n(
|
||||||
|
a(x),
|
||||||
|
{
|
||||||
|
onClick:
|
||||||
|
k,
|
||||||
|
loading:
|
||||||
|
V,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
default:
|
||||||
|
g(
|
||||||
|
() => [
|
||||||
|
T(
|
||||||
|
u(
|
||||||
|
V
|
||||||
|
? `Uploading ${C}%`
|
||||||
|
: "Upload an image"
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]
|
||||||
|
),
|
||||||
|
_: 2,
|
||||||
|
},
|
||||||
|
1032,
|
||||||
|
[
|
||||||
|
"onClick",
|
||||||
|
"loading",
|
||||||
|
]
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
]
|
||||||
|
),
|
||||||
|
_: 1,
|
||||||
|
}
|
||||||
|
)),
|
||||||
|
n(
|
||||||
|
a(p),
|
||||||
|
{
|
||||||
|
modelValue: t.value.video_link,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
e[6] ||
|
||||||
|
(e[6] = (s) =>
|
||||||
|
(t.value.video_link =
|
||||||
|
s)),
|
||||||
|
label: l.__("Preview Video"),
|
||||||
|
class: "mb-4",
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["modelValue", "label"]
|
||||||
|
),
|
||||||
|
o("div", null, [
|
||||||
|
o("div", Te, u(l.__("Tags")), 1),
|
||||||
|
o("div", $e, [
|
||||||
|
i.value
|
||||||
|
? (_(!0),
|
||||||
|
f(
|
||||||
|
ee,
|
||||||
|
{ key: 0 },
|
||||||
|
le(
|
||||||
|
(h = i.value) ==
|
||||||
|
null
|
||||||
|
? void 0
|
||||||
|
: h.split(
|
||||||
|
", "
|
||||||
|
),
|
||||||
|
(s) => (
|
||||||
|
_(),
|
||||||
|
f(
|
||||||
|
"div",
|
||||||
|
Se,
|
||||||
|
[
|
||||||
|
T(
|
||||||
|
u(
|
||||||
|
s
|
||||||
|
) +
|
||||||
|
" ",
|
||||||
|
1
|
||||||
|
),
|
||||||
|
n(
|
||||||
|
a(
|
||||||
|
B
|
||||||
|
),
|
||||||
|
{
|
||||||
|
class: "stroke-1.5 w-3 h-3 ml-2 cursor-pointer",
|
||||||
|
onClick:
|
||||||
|
(
|
||||||
|
C
|
||||||
|
) =>
|
||||||
|
H(
|
||||||
|
s
|
||||||
|
),
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
[
|
||||||
|
"onClick",
|
||||||
|
]
|
||||||
|
),
|
||||||
|
]
|
||||||
|
)
|
||||||
|
)
|
||||||
|
),
|
||||||
|
256
|
||||||
|
))
|
||||||
|
: N("", !0),
|
||||||
|
n(
|
||||||
|
a(p),
|
||||||
|
{
|
||||||
|
modelValue: v.value,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
e[7] ||
|
||||||
|
(e[7] = (s) =>
|
||||||
|
(v.value = s)),
|
||||||
|
onKeyup:
|
||||||
|
e[8] ||
|
||||||
|
(e[8] = se(
|
||||||
|
(s) => G(),
|
||||||
|
["enter"]
|
||||||
|
)),
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["modelValue"]
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
o("div", Fe, [
|
||||||
|
o(
|
||||||
|
"div",
|
||||||
|
je,
|
||||||
|
u(l.__("Course Settings")),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
o("div", De, [
|
||||||
|
n(
|
||||||
|
a(p),
|
||||||
|
{
|
||||||
|
type: "checkbox",
|
||||||
|
modelValue:
|
||||||
|
t.value.published,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
e[9] ||
|
||||||
|
(e[9] = (s) =>
|
||||||
|
(t.value.published =
|
||||||
|
s)),
|
||||||
|
label: l.__("Published"),
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["modelValue", "label"]
|
||||||
|
),
|
||||||
|
n(
|
||||||
|
a(p),
|
||||||
|
{
|
||||||
|
type: "checkbox",
|
||||||
|
modelValue:
|
||||||
|
t.value.upcoming,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
e[10] ||
|
||||||
|
(e[10] = (s) =>
|
||||||
|
(t.value.upcoming =
|
||||||
|
s)),
|
||||||
|
label: l.__("Upcoming"),
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["modelValue", "label"]
|
||||||
|
),
|
||||||
|
n(
|
||||||
|
a(p),
|
||||||
|
{
|
||||||
|
type: "checkbox",
|
||||||
|
modelValue:
|
||||||
|
t.value
|
||||||
|
.disable_self_learning,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
e[11] ||
|
||||||
|
(e[11] = (s) =>
|
||||||
|
(t.value.disable_self_learning =
|
||||||
|
s)),
|
||||||
|
label: l.__(
|
||||||
|
"Disable Self Enrollment"
|
||||||
|
),
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["modelValue", "label"]
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
o("div", Ee, [
|
||||||
|
o(
|
||||||
|
"div",
|
||||||
|
Le,
|
||||||
|
u(l.__("Course Pricing")),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
o("div", Pe, [
|
||||||
|
n(
|
||||||
|
a(p),
|
||||||
|
{
|
||||||
|
type: "checkbox",
|
||||||
|
modelValue:
|
||||||
|
t.value.paid_course,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
e[12] ||
|
||||||
|
(e[12] = (s) =>
|
||||||
|
(t.value.paid_course =
|
||||||
|
s)),
|
||||||
|
label: l.__("Paid Course"),
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["modelValue", "label"]
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
n(
|
||||||
|
a(p),
|
||||||
|
{
|
||||||
|
modelValue:
|
||||||
|
t.value.course_price,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
e[13] ||
|
||||||
|
(e[13] = (s) =>
|
||||||
|
(t.value.course_price =
|
||||||
|
s)),
|
||||||
|
label: l.__("Course Price"),
|
||||||
|
class: "mb-4",
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["modelValue", "label"]
|
||||||
|
),
|
||||||
|
n(
|
||||||
|
de,
|
||||||
|
{
|
||||||
|
doctype: "Currency",
|
||||||
|
modelValue: t.value.currency,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
e[14] ||
|
||||||
|
(e[14] = (s) =>
|
||||||
|
(t.value.currency = s)),
|
||||||
|
filters: { enabled: 1 },
|
||||||
|
label: l.__("Currency"),
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["modelValue", "label"]
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
o("div", Me, [
|
||||||
|
a(r).doc
|
||||||
|
? (_(),
|
||||||
|
f("div", Re, [
|
||||||
|
o("div", Be, u(t.value.title), 1),
|
||||||
|
a(r).doc.chapters.length
|
||||||
|
? (_(),
|
||||||
|
f(
|
||||||
|
"div",
|
||||||
|
ze,
|
||||||
|
u(a(r).chapters),
|
||||||
|
1
|
||||||
|
))
|
||||||
|
: (_(),
|
||||||
|
f("div", Ie, [
|
||||||
|
o(
|
||||||
|
"div",
|
||||||
|
null,
|
||||||
|
u(
|
||||||
|
l.__(
|
||||||
|
"There are no chapters in this course. Create and manage chapters from here."
|
||||||
|
)
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
n(
|
||||||
|
a(x),
|
||||||
|
{ class: "mt-4" },
|
||||||
|
{
|
||||||
|
default: g(
|
||||||
|
() => [
|
||||||
|
T(
|
||||||
|
u(
|
||||||
|
l.__(
|
||||||
|
"Add Chapter"
|
||||||
|
)
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]
|
||||||
|
),
|
||||||
|
_: 1,
|
||||||
|
}
|
||||||
|
),
|
||||||
|
])),
|
||||||
|
]))
|
||||||
|
: N("", !0),
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
])
|
||||||
|
);
|
||||||
|
};
|
||||||
|
},
|
||||||
|
};
|
||||||
|
export { Oe as default };
|
||||||
|
//# sourceMappingURL=CreateCourse-0E2-P7Ge.js.map
|
||||||
1
lms/public/frontend/assets/CreateCourse-0E2-P7Ge.js.map
Normal file
1
lms/public/frontend/assets/CreateCourse-0E2-P7Ge.js.map
Normal file
File diff suppressed because one or more lines are too long
8
lms/public/frontend/assets/CreateOutline-3tnu6Qkz.js
Normal file
8
lms/public/frontend/assets/CreateOutline-3tnu6Qkz.js
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
import { v as e } from "./frappe-ui-LT4YqXtx.js";
|
||||||
|
const r = {};
|
||||||
|
function t(n, c) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
const o = e(r, [["render", t]]);
|
||||||
|
export { o as default };
|
||||||
|
//# sourceMappingURL=CreateOutline-3tnu6Qkz.js.map
|
||||||
1
lms/public/frontend/assets/CreateOutline-3tnu6Qkz.js.map
Normal file
1
lms/public/frontend/assets/CreateOutline-3tnu6Qkz.js.map
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"version":3,"file":"CreateOutline-3tnu6Qkz.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||||
@@ -1,33 +1,33 @@
|
|||||||
import {
|
import {
|
||||||
aa as B,
|
aa as N,
|
||||||
ab as N,
|
ab as B,
|
||||||
r as $,
|
r as $,
|
||||||
d as S,
|
d as S,
|
||||||
s as j,
|
s as j,
|
||||||
k,
|
k,
|
||||||
x as i,
|
x as i,
|
||||||
y,
|
y,
|
||||||
G as n,
|
J as n,
|
||||||
B as x,
|
G as x,
|
||||||
H as t,
|
K as t,
|
||||||
a7 as T,
|
a7 as T,
|
||||||
C as s,
|
H as s,
|
||||||
I as d,
|
L as d,
|
||||||
J as R,
|
M as R,
|
||||||
Q as M,
|
Q as M,
|
||||||
R as E,
|
R as E,
|
||||||
A as V,
|
F as V,
|
||||||
K as A,
|
N as F,
|
||||||
U as D,
|
U as D,
|
||||||
au as P,
|
at as P,
|
||||||
F as I,
|
I,
|
||||||
a as F,
|
a as A,
|
||||||
am as G,
|
al as G,
|
||||||
D as J,
|
D as J,
|
||||||
b as K,
|
b as K,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
import { _ as U } from "./UserAvatar-yrWInUTi.js";
|
import { _ as L } from "./UserAvatar-A3tEMZXD.js";
|
||||||
import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
import { a as q, t as U, c as O } from "./index-6k1S_EjG.js";
|
||||||
/**
|
/**
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
*
|
*
|
||||||
@@ -71,7 +71,7 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
re = s("span", null, null, -1),
|
re = s("span", null, null, -1),
|
||||||
z = {
|
z = {
|
||||||
__name: "DiscussionReplies",
|
__name: "DiscussionReplies",
|
||||||
props: B(
|
props: N(
|
||||||
{
|
{
|
||||||
topic: { type: Object, required: !0 },
|
topic: { type: Object, required: !0 },
|
||||||
singleThread: { type: Boolean, default: !1 },
|
singleThread: { type: Boolean, default: !1 },
|
||||||
@@ -80,7 +80,7 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
),
|
),
|
||||||
emits: ["update:showTopics"],
|
emits: ["update:showTopics"],
|
||||||
setup(l) {
|
setup(l) {
|
||||||
const g = N(l, "showTopics"),
|
const g = B(l, "showTopics"),
|
||||||
m = $(""),
|
m = $(""),
|
||||||
c = S("$socket"),
|
c = S("$socket"),
|
||||||
_ = S("$user"),
|
_ = S("$user"),
|
||||||
@@ -216,7 +216,7 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
null,
|
null,
|
||||||
E(
|
E(
|
||||||
t(o).data,
|
t(o).data,
|
||||||
(a, L) => (
|
(a, H) => (
|
||||||
i(),
|
i(),
|
||||||
y("div", null, [
|
y("div", null, [
|
||||||
s(
|
s(
|
||||||
@@ -226,7 +226,7 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
"py-3",
|
"py-3",
|
||||||
{
|
{
|
||||||
"border-b":
|
"border-b":
|
||||||
L + 1 !=
|
H + 1 !=
|
||||||
t(o).data.length,
|
t(o).data.length,
|
||||||
},
|
},
|
||||||
]),
|
]),
|
||||||
@@ -235,7 +235,7 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
s("div", te, [
|
s("div", te, [
|
||||||
s("div", se, [
|
s("div", se, [
|
||||||
n(
|
n(
|
||||||
U,
|
L,
|
||||||
{
|
{
|
||||||
user: a.user,
|
user: a.user,
|
||||||
class: "mr-2",
|
class: "mr-2",
|
||||||
@@ -253,7 +253,7 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
s(
|
s(
|
||||||
"span",
|
"span",
|
||||||
oe,
|
oe,
|
||||||
d(t(H)(a.creation)),
|
d(t(U)(a.creation)),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
@@ -261,7 +261,7 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
!a.editable
|
!a.editable
|
||||||
? (i(),
|
? (i(),
|
||||||
V(
|
V(
|
||||||
t(A),
|
t(F),
|
||||||
{
|
{
|
||||||
key: 0,
|
key: 0,
|
||||||
options: [
|
options: [
|
||||||
@@ -432,7 +432,7 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
de = { class: "mb-1.5 text-sm text-gray-600" },
|
de = { class: "mb-1.5 text-sm text-gray-600" },
|
||||||
ce = {
|
ce = {
|
||||||
__name: "DiscussionModal",
|
__name: "DiscussionModal",
|
||||||
props: B(
|
props: N(
|
||||||
{
|
{
|
||||||
title: { type: String, required: !0 },
|
title: { type: String, required: !0 },
|
||||||
doctype: { type: String, required: !0 },
|
doctype: { type: String, required: !0 },
|
||||||
@@ -442,9 +442,9 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
),
|
),
|
||||||
emits: ["update:reloadTopics"],
|
emits: ["update:reloadTopics"],
|
||||||
setup(l) {
|
setup(l) {
|
||||||
const g = N(l, "reloadTopics"),
|
const g = B(l, "reloadTopics"),
|
||||||
m = l,
|
m = l,
|
||||||
c = F({ title: "", reply: "" }),
|
c = A({ title: "", reply: "" }),
|
||||||
_ = k({
|
_ = k({
|
||||||
url: "frappe.client.insert",
|
url: "frappe.client.insert",
|
||||||
makeParams(f) {
|
makeParams(f) {
|
||||||
@@ -686,7 +686,7 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
},
|
},
|
||||||
[
|
[
|
||||||
n(
|
n(
|
||||||
U,
|
L,
|
||||||
{
|
{
|
||||||
user: u.user,
|
user: u.user,
|
||||||
size: "2xl",
|
size: "2xl",
|
||||||
@@ -729,7 +729,7 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
he,
|
he,
|
||||||
d(
|
d(
|
||||||
t(
|
t(
|
||||||
H
|
U
|
||||||
)(
|
)(
|
||||||
u.creation
|
u.creation
|
||||||
)
|
)
|
||||||
@@ -835,4 +835,4 @@ import { a as q, t as H, c as O } from "./index-Vx7mSx23.js";
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { Q as C, we as _ };
|
export { Q as C, we as _ };
|
||||||
//# sourceMappingURL=Discussions-C9dFHLpJ.js.map
|
//# sourceMappingURL=Discussions-3EqlwpPS.js.map
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,21 +1,21 @@
|
|||||||
import {
|
import {
|
||||||
v as f,
|
v as f,
|
||||||
ay as g,
|
aF as g,
|
||||||
T as _,
|
T as _,
|
||||||
X as c,
|
X as c,
|
||||||
x as o,
|
x as o,
|
||||||
A as l,
|
F as l,
|
||||||
B as r,
|
G as r,
|
||||||
M as p,
|
O as p,
|
||||||
az as C,
|
aG as C,
|
||||||
aA as k,
|
aH as k,
|
||||||
C as a,
|
H as a,
|
||||||
y as d,
|
y as d,
|
||||||
Q as u,
|
Q as u,
|
||||||
R as m,
|
R as m,
|
||||||
V as h,
|
V as h,
|
||||||
F as b,
|
I as b,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
const v = {
|
const v = {
|
||||||
name: "FontColor",
|
name: "FontColor",
|
||||||
props: ["editor"],
|
props: ["editor"],
|
||||||
@@ -65,8 +65,8 @@ const v = {
|
|||||||
},
|
},
|
||||||
y = { class: "p-2" },
|
y = { class: "p-2" },
|
||||||
B = a("div", { class: "text-sm text-gray-700" }, "Text Color", -1),
|
B = a("div", { class: "text-sm text-gray-700" }, "Text Color", -1),
|
||||||
P = { class: "mt-1 grid grid-cols-8 gap-1" },
|
F = { class: "mt-1 grid grid-cols-8 gap-1" },
|
||||||
F = ["aria-label", "onClick"],
|
P = ["aria-label", "onClick"],
|
||||||
D = a(
|
D = a(
|
||||||
"div",
|
"div",
|
||||||
{ class: "mt-2 text-sm text-gray-700" },
|
{ class: "mt-2 text-sm text-gray-700" },
|
||||||
@@ -74,8 +74,8 @@ const v = {
|
|||||||
-1
|
-1
|
||||||
),
|
),
|
||||||
w = { class: "mt-1 grid grid-cols-8 gap-1" },
|
w = { class: "mt-1 grid grid-cols-8 gap-1" },
|
||||||
A = ["aria-label", "onClick"];
|
T = ["aria-label", "onClick"];
|
||||||
function T(t, z, R, E, $, n) {
|
function G(t, H, R, z, A, n) {
|
||||||
const i = c("Tooltip"),
|
const i = c("Tooltip"),
|
||||||
x = c("Popover");
|
x = c("Popover");
|
||||||
return (
|
return (
|
||||||
@@ -94,7 +94,7 @@ function T(t, z, R, E, $, n) {
|
|||||||
"body-main": r(() => [
|
"body-main": r(() => [
|
||||||
a("div", y, [
|
a("div", y, [
|
||||||
B,
|
B,
|
||||||
a("div", P, [
|
a("div", F, [
|
||||||
(o(!0),
|
(o(!0),
|
||||||
d(
|
d(
|
||||||
u,
|
u,
|
||||||
@@ -128,7 +128,7 @@ function T(t, z, R, E, $, n) {
|
|||||||
},
|
},
|
||||||
" A ",
|
" A ",
|
||||||
12,
|
12,
|
||||||
F
|
P
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
_: 2,
|
_: 2,
|
||||||
@@ -182,7 +182,7 @@ function T(t, z, R, E, $, n) {
|
|||||||
},
|
},
|
||||||
" A ",
|
" A ",
|
||||||
14,
|
14,
|
||||||
A
|
T
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
_: 2,
|
_: 2,
|
||||||
@@ -202,6 +202,6 @@ function T(t, z, R, E, $, n) {
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
const G = f(v, [["render", T]]);
|
const O = f(v, [["render", G]]);
|
||||||
export { G as default };
|
export { O as default };
|
||||||
//# sourceMappingURL=FontColor-buIvkL_m.js.map
|
//# sourceMappingURL=FontColor-VDDMEf4D.js.map
|
||||||
File diff suppressed because one or more lines are too long
@@ -2,14 +2,14 @@ import {
|
|||||||
v as d,
|
v as d,
|
||||||
D as g,
|
D as g,
|
||||||
y as m,
|
y as m,
|
||||||
G as s,
|
J as s,
|
||||||
B as t,
|
G as t,
|
||||||
C as r,
|
H as r,
|
||||||
I as p,
|
L as p,
|
||||||
X as u,
|
X as u,
|
||||||
x as f,
|
x as f,
|
||||||
U as l,
|
U as l,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
const D = {
|
const D = {
|
||||||
name: "Home",
|
name: "Home",
|
||||||
data() {
|
data() {
|
||||||
@@ -19,7 +19,7 @@ const D = {
|
|||||||
components: { Dialog: g },
|
components: { Dialog: g },
|
||||||
},
|
},
|
||||||
_ = { class: "max-w-3xl py-12 mx-auto" };
|
_ = { class: "max-w-3xl py-12 mx-auto" };
|
||||||
function C(e, o, k, w, n, B) {
|
function k(e, o, w, C, n, V) {
|
||||||
const a = u("Button"),
|
const a = u("Button"),
|
||||||
c = u("Dialog");
|
c = u("Dialog");
|
||||||
return (
|
return (
|
||||||
@@ -61,6 +61,6 @@ function C(e, o, k, w, n, B) {
|
|||||||
])
|
])
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
const $ = d(D, [["render", C]]);
|
const v = d(D, [["render", k]]);
|
||||||
export { $ as default };
|
export { v as default };
|
||||||
//# sourceMappingURL=Home-iNWB3jqR.js.map
|
//# sourceMappingURL=Home-gvvenAgK.js.map
|
||||||
@@ -1 +1 @@
|
|||||||
{"version":3,"file":"Home-iNWB3jqR.js","sources":["../../../../frontend/src/pages/Home.vue"],"sourcesContent":["<template>\n <div class=\"max-w-3xl py-12 mx-auto\">\n <Button\n icon-left=\"code\"\n @click=\"$resources.ping.fetch\"\n :loading=\"$resources.ping.loading\"\n >\n Click to send 'ping' request\n </Button>\n <div>\n {{ $resources.ping.data }}\n </div>\n <pre>{{ $resources.ping }}</pre>\n\n <Button @click=\"showDialog = true\">Open Dialog</Button>\n <Dialog title=\"Title\" v-model=\"showDialog\"> Dialog content </Dialog>\n </div>\n</template>\n\n<script>\nimport { Dialog } from 'frappe-ui'\n\nexport default {\n name: 'Home',\n data() {\n return {\n showDialog: false,\n }\n },\n resources: {\n ping: {\n url: 'ping',\n },\n },\n components: {\n Dialog,\n },\n}\n</script>\n"],"names":["_sfc_main","Dialog","_hoisted_1","_openBlock","_createElementBlock","_createVNode","_component_Button","_ctx","_withCtx","_createTextVNode","_createElementVNode","_toDisplayString","$data","_component_Dialog","_cache","$event"],"mappings":"2GAsBA,MAAKA,EAAU,CACb,KAAM,OACN,MAAO,CACL,MAAO,CACL,WAAY,EACd,CACD,EACD,UAAW,CACT,KAAM,CACJ,IAAK,MACN,CACF,EACD,WAAY,CACV,OAAAC,CACD,CACH,EApCOC,EAAA,CAAA,MAAM,yBAAyB,4DAApC,OAAAC,EAAA,EAAAC,EAeM,MAfNF,EAeM,CAdJG,EAMSC,EAAA,CALP,YAAU,OACT,QAAOC,EAAA,WAAW,KAAK,MACvB,QAASA,EAAA,WAAW,KAAK,UALhC,QAAAC,EAMK,IAED,CARJC,EAMK,gCAED,IARJ,EAAA,4BASIC,EAEM,MADD,KAAAC,EAAAJ,EAAA,WAAW,KAAK,IAAI,EAAA,CAAA,EAEzBG,EAAgC,MAAA,KAAAC,EAAxBJ,EAAU,WAAC,IAAI,EAAA,CAAA,EAEvBF,EAAuDC,EAAA,CAA9C,uBAAOM,EAAU,WAAA,MAd9B,QAAAJ,EAcuC,IAAW,CAdlDC,EAcuC,aAAW,IAdlD,EAAA,IAeIJ,EAAoEQ,EAAA,CAA5D,MAAM,QAflB,WAemCD,EAAU,WAf7C,sBAAAE,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAemCH,EAAU,WAAAG,KAf7C,QAAAP,EAe+C,IAAgB,CAf/DC,EAe+C,kBAAgB,IAf/D,EAAA"}
|
{"version":3,"file":"Home-gvvenAgK.js","sources":["../../../../frontend/src/pages/Home.vue"],"sourcesContent":["<template>\n <div class=\"max-w-3xl py-12 mx-auto\">\n <Button\n icon-left=\"code\"\n @click=\"$resources.ping.fetch\"\n :loading=\"$resources.ping.loading\"\n >\n Click to send 'ping' request\n </Button>\n <div>\n {{ $resources.ping.data }}\n </div>\n <pre>{{ $resources.ping }}</pre>\n\n <Button @click=\"showDialog = true\">Open Dialog</Button>\n <Dialog title=\"Title\" v-model=\"showDialog\"> Dialog content </Dialog>\n </div>\n</template>\n\n<script>\nimport { Dialog } from 'frappe-ui'\n\nexport default {\n name: 'Home',\n data() {\n return {\n showDialog: false,\n }\n },\n resources: {\n ping: {\n url: 'ping',\n },\n },\n components: {\n Dialog,\n },\n}\n</script>\n"],"names":["_sfc_main","Dialog","_hoisted_1","_openBlock","_createElementBlock","_createVNode","_component_Button","_ctx","_withCtx","_createTextVNode","_createElementVNode","_toDisplayString","$data","_component_Dialog","_cache","$event"],"mappings":"2GAsBA,MAAKA,EAAU,CACb,KAAM,OACN,MAAO,CACL,MAAO,CACL,WAAY,EACd,CACD,EACD,UAAW,CACT,KAAM,CACJ,IAAK,MACN,CACF,EACD,WAAY,CACV,OAAAC,CACD,CACH,EApCOC,EAAA,CAAA,MAAM,yBAAyB,4DAApC,OAAAC,EAAA,EAAAC,EAeM,MAfNF,EAeM,CAdJG,EAMSC,EAAA,CALP,YAAU,OACT,QAAOC,EAAA,WAAW,KAAK,MACvB,QAASA,EAAA,WAAW,KAAK,UALhC,QAAAC,EAMK,IAED,CARJC,EAMK,gCAED,IARJ,EAAA,4BASIC,EAEM,MADD,KAAAC,EAAAJ,EAAA,WAAW,KAAK,IAAI,EAAA,CAAA,EAEzBG,EAAgC,MAAA,KAAAC,EAAxBJ,EAAU,WAAC,IAAI,EAAA,CAAA,EAEvBF,EAAuDC,EAAA,CAA9C,uBAAOM,EAAU,WAAA,MAd9B,QAAAJ,EAcuC,IAAW,CAdlDC,EAcuC,aAAW,IAdlD,EAAA,IAeIJ,EAAoEQ,EAAA,CAA5D,MAAM,QAflB,WAemCD,EAAU,WAf7C,sBAAAE,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAemCH,EAAU,WAAAG,KAf7C,QAAAP,EAe+C,IAAgB,CAf/DC,EAe+C,kBAAgB,IAf/D,EAAA"}
|
||||||
@@ -1,30 +1,30 @@
|
|||||||
import {
|
import {
|
||||||
v as I,
|
v as f,
|
||||||
a7 as f,
|
a7 as I,
|
||||||
D,
|
D,
|
||||||
aK as h,
|
aQ as h,
|
||||||
X as d,
|
X as d,
|
||||||
x as m,
|
x as m,
|
||||||
y as c,
|
y as c,
|
||||||
M as _,
|
O as _,
|
||||||
az as y,
|
aG as y,
|
||||||
aA as C,
|
aH as v,
|
||||||
G as n,
|
J as n,
|
||||||
B as s,
|
G as s,
|
||||||
C as i,
|
H as i,
|
||||||
I as v,
|
L as C,
|
||||||
J as w,
|
M as w,
|
||||||
U as u,
|
U as u,
|
||||||
Q as x,
|
Q as x,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
const B = {
|
const b = {
|
||||||
name: "InsertImage",
|
name: "InsertImage",
|
||||||
props: ["editor"],
|
props: ["editor"],
|
||||||
expose: ["openDialog"],
|
expose: ["openDialog"],
|
||||||
data() {
|
data() {
|
||||||
return { addImageDialog: { url: "", file: null, show: !1 } };
|
return { addImageDialog: { url: "", file: null, show: !1 } };
|
||||||
},
|
},
|
||||||
components: { Button: f, Dialog: D },
|
components: { Button: I, Dialog: D },
|
||||||
methods: {
|
methods: {
|
||||||
openDialog() {
|
openDialog() {
|
||||||
this.addImageDialog.show = !0;
|
this.addImageDialog.show = !0;
|
||||||
@@ -46,12 +46,12 @@ const B = {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
b = {
|
k = {
|
||||||
class: "relative cursor-pointer rounded-lg bg-gray-100 py-1 focus-within:bg-gray-200 hover:bg-gray-200",
|
class: "relative cursor-pointer rounded-lg bg-gray-100 py-1 focus-within:bg-gray-200 hover:bg-gray-200",
|
||||||
},
|
},
|
||||||
k = { class: "absolute inset-0 select-none px-2 py-1 text-base" },
|
B = { class: "absolute inset-0 select-none px-2 py-1 text-base" },
|
||||||
S = ["src"];
|
S = ["src"];
|
||||||
function V(t, e, r, A, a, o) {
|
function V(t, e, r, N, a, o) {
|
||||||
const g = d("Button"),
|
const g = d("Button"),
|
||||||
p = d("Dialog");
|
p = d("Dialog");
|
||||||
return (
|
return (
|
||||||
@@ -60,7 +60,7 @@ function V(t, e, r, A, a, o) {
|
|||||||
x,
|
x,
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
_(t.$slots, "default", y(C({ onClick: o.openDialog }))),
|
_(t.$slots, "default", y(v({ onClick: o.openDialog }))),
|
||||||
n(
|
n(
|
||||||
p,
|
p,
|
||||||
{
|
{
|
||||||
@@ -72,7 +72,7 @@ function V(t, e, r, A, a, o) {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"body-content": s(() => [
|
"body-content": s(() => [
|
||||||
i("label", b, [
|
i("label", k, [
|
||||||
i(
|
i(
|
||||||
"input",
|
"input",
|
||||||
{
|
{
|
||||||
@@ -90,8 +90,8 @@ function V(t, e, r, A, a, o) {
|
|||||||
),
|
),
|
||||||
i(
|
i(
|
||||||
"span",
|
"span",
|
||||||
k,
|
B,
|
||||||
v(
|
C(
|
||||||
a.addImageDialog.file
|
a.addImageDialog.file
|
||||||
? "Select another image"
|
? "Select another image"
|
||||||
: "Select an image"
|
: "Select an image"
|
||||||
@@ -147,6 +147,6 @@ function V(t, e, r, A, a, o) {
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
const z = I(B, [["render", V]]);
|
const L = f(b, [["render", V]]);
|
||||||
export { z as default };
|
export { L as default };
|
||||||
//# sourceMappingURL=InsertImage-MQQczXkr.js.map
|
//# sourceMappingURL=InsertImage-XkfiXG_Q.js.map
|
||||||
@@ -1 +1 @@
|
|||||||
{"version":3,"file":"InsertImage-MQQczXkr.js","sources":["../../../../frappe-ui/src/components/TextEditor/InsertImage.vue"],"sourcesContent":["<template>\n <slot v-bind=\"{ onClick: openDialog }\"></slot>\n <Dialog\n :options=\"{ title: 'Add Image' }\"\n v-model=\"addImageDialog.show\"\n @after-leave=\"reset\"\n >\n <template #body-content>\n <label\n class=\"relative cursor-pointer rounded-lg bg-gray-100 py-1 focus-within:bg-gray-200 hover:bg-gray-200\"\n >\n <input\n type=\"file\"\n class=\"w-full opacity-0\"\n @change=\"onImageSelect\"\n accept=\"image/*\"\n />\n <span class=\"absolute inset-0 select-none px-2 py-1 text-base\">\n {{ addImageDialog.file ? 'Select another image' : 'Select an image' }}\n </span>\n </label>\n <img\n v-if=\"addImageDialog.url\"\n :src=\"addImageDialog.url\"\n class=\"mt-2 w-full rounded-lg\"\n />\n </template>\n <template #actions>\n <Button variant=\"solid\" @click=\"addImage(addImageDialog.url)\">\n Insert Image\n </Button>\n <Button @click=\"reset\"> Cancel </Button>\n </template>\n </Dialog>\n</template>\n<script>\nimport fileToBase64 from '../../utils/file-to-base64'\nimport Dialog from '../Dialog.vue'\nimport Button from '../Button.vue'\n\nexport default {\n name: 'InsertImage',\n props: ['editor'],\n expose: ['openDialog'],\n data() {\n return {\n addImageDialog: { url: '', file: null, show: false },\n }\n },\n components: { Button, Dialog },\n methods: {\n openDialog() {\n this.addImageDialog.show = true\n },\n onImageSelect(e) {\n let file = e.target.files[0]\n if (!file) {\n return\n }\n this.addImageDialog.file = file\n fileToBase64(file).then((base64) => {\n this.addImageDialog.url = base64\n })\n },\n addImage(src) {\n this.editor.chain().focus().setImage({ src }).run()\n this.reset()\n },\n reset() {\n this.addImageDialog = this.$options.data().addImageDialog\n },\n },\n}\n</script>\n"],"names":["_sfc_main","Button","Dialog","e","file","fileToBase64","base64","src","_hoisted_1","_hoisted_2","_hoisted_3","_openBlock","_createElementBlock","_Fragment","_renderSlot","_ctx","_normalizeProps","_guardReactiveProps","$options","_createVNode","_component_Dialog","$data","_cache","$event","_createElementVNode","args","_toDisplayString","_createCommentVNode","_component_Button","_withCtx","_createTextVNode"],"mappings":"2JAwCA,MAAKA,EAAU,CACb,KAAM,cACN,MAAO,CAAC,QAAQ,EAChB,OAAQ,CAAC,YAAY,EACrB,MAAO,CACL,MAAO,CACL,eAAgB,CAAE,IAAK,GAAI,KAAM,KAAM,KAAM,EAAO,CACtD,CACD,EACD,WAAY,CAAA,OAAEC,EAAQ,OAAAC,CAAQ,EAC9B,QAAS,CACP,YAAa,CACX,KAAK,eAAe,KAAO,EAC5B,EACD,cAAcC,EAAG,CACf,IAAIC,EAAOD,EAAE,OAAO,MAAM,CAAC,EACtBC,IAGL,KAAK,eAAe,KAAOA,EAC3BC,EAAaD,CAAI,EAAE,KAAME,GAAW,CAClC,KAAK,eAAe,IAAMA,EAC3B,EACF,EACD,SAASC,EAAK,CACZ,KAAK,OAAO,MAAK,EAAG,MAAK,EAAG,SAAS,CAAE,IAAAA,EAAK,EAAE,IAAI,EAClD,KAAK,MAAM,CACZ,EACD,OAAQ,CACN,KAAK,eAAiB,KAAK,SAAS,KAAM,EAAC,cAC5C,CACF,CACH,EA/DQC,EAAA,CAAA,MAAM,gGAAgG,EAQhGC,EAAA,CAAA,MAAM,kDAAkD,EAjBtEC,EAAA,CAAA,KAAA,4DAAA,OAAAC,EAAA,EAAAC,EAAAC,EAAA,KAAA,CACEC,EAA8CC,EAAA,OAAA,UADhDC,EAAAC,EAAA,CAAA,QAC2BC,EAAU,UAAA,CAAA,CAAA,CAAA,EACnCC,EA+BSC,EAAA,CA9BN,QAAS,CAAsB,MAAA,WAAA,EAHpC,WAIaC,EAAA,eAAe,KAJ5B,sBAIaC,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAF,EAAA,eAAe,KAAIE,GAC3B,aAAaL,EAAK,QAER,iBACT,IAYQ,CAZRM,EAYQ,QAZRhB,EAYQ,CATNgB,EAKE,QAAA,CAJA,KAAK,OACL,MAAM,mBACL,6BAAQN,EAAa,eAAAA,EAAA,cAAA,GAAAO,CAAA,GACtB,OAAO,oBAETD,EAEO,OAFPf,EACKiB,EAAAL,EAAA,eAAe,KAAI,uBAAA,iBAAA,EAAA,CAAA,IAIlBA,EAAA,eAAe,SADvBT,EAIE,MAAA,CAzBR,IAAA,EAuBS,IAAKS,EAAc,eAAC,IACrB,MAAM,wBAxBd,EAAA,KAAA,EAAAX,CAAA,GAAAiB,EAAA,GAAA,EAAA,IA2Be,UACT,IAES,CAFTR,EAESS,EAAA,CAFD,QAAQ,QAAS,QAAON,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAL,EAAA,SAASG,EAAA,eAAe,GAAG,KA5BjE,QAAAQ,EA4BoE,IAE9D,CA9BNC,EA4BoE,gBAE9D,IA9BN,EAAA,IA+BMX,EAAwCS,EAAA,CAA/B,QAAOV,EAAK,KAAA,EAAA,CA/B3B,QAAAW,EA+B6B,IAAQ,CA/BrCC,EA+B6B,UAAQ,IA/BrC,EAAA,oBAAA,EAAA"}
|
{"version":3,"file":"InsertImage-XkfiXG_Q.js","sources":["../../../../frappe-ui/src/components/TextEditor/InsertImage.vue"],"sourcesContent":["<template>\n <slot v-bind=\"{ onClick: openDialog }\"></slot>\n <Dialog\n :options=\"{ title: 'Add Image' }\"\n v-model=\"addImageDialog.show\"\n @after-leave=\"reset\"\n >\n <template #body-content>\n <label\n class=\"relative cursor-pointer rounded-lg bg-gray-100 py-1 focus-within:bg-gray-200 hover:bg-gray-200\"\n >\n <input\n type=\"file\"\n class=\"w-full opacity-0\"\n @change=\"onImageSelect\"\n accept=\"image/*\"\n />\n <span class=\"absolute inset-0 select-none px-2 py-1 text-base\">\n {{ addImageDialog.file ? 'Select another image' : 'Select an image' }}\n </span>\n </label>\n <img\n v-if=\"addImageDialog.url\"\n :src=\"addImageDialog.url\"\n class=\"mt-2 w-full rounded-lg\"\n />\n </template>\n <template #actions>\n <Button variant=\"solid\" @click=\"addImage(addImageDialog.url)\">\n Insert Image\n </Button>\n <Button @click=\"reset\"> Cancel </Button>\n </template>\n </Dialog>\n</template>\n<script>\nimport fileToBase64 from '../../utils/file-to-base64'\nimport Dialog from '../Dialog.vue'\nimport Button from '../Button.vue'\n\nexport default {\n name: 'InsertImage',\n props: ['editor'],\n expose: ['openDialog'],\n data() {\n return {\n addImageDialog: { url: '', file: null, show: false },\n }\n },\n components: { Button, Dialog },\n methods: {\n openDialog() {\n this.addImageDialog.show = true\n },\n onImageSelect(e) {\n let file = e.target.files[0]\n if (!file) {\n return\n }\n this.addImageDialog.file = file\n fileToBase64(file).then((base64) => {\n this.addImageDialog.url = base64\n })\n },\n addImage(src) {\n this.editor.chain().focus().setImage({ src }).run()\n this.reset()\n },\n reset() {\n this.addImageDialog = this.$options.data().addImageDialog\n },\n },\n}\n</script>\n"],"names":["_sfc_main","Button","Dialog","e","file","fileToBase64","base64","src","_hoisted_1","_hoisted_2","_hoisted_3","_openBlock","_createElementBlock","_Fragment","_renderSlot","_ctx","_normalizeProps","_guardReactiveProps","$options","_createVNode","_component_Dialog","$data","_cache","$event","_createElementVNode","args","_toDisplayString","_createCommentVNode","_component_Button","_withCtx","_createTextVNode"],"mappings":"2JAwCA,MAAKA,EAAU,CACb,KAAM,cACN,MAAO,CAAC,QAAQ,EAChB,OAAQ,CAAC,YAAY,EACrB,MAAO,CACL,MAAO,CACL,eAAgB,CAAE,IAAK,GAAI,KAAM,KAAM,KAAM,EAAO,CACtD,CACD,EACD,WAAY,CAAA,OAAEC,EAAQ,OAAAC,CAAQ,EAC9B,QAAS,CACP,YAAa,CACX,KAAK,eAAe,KAAO,EAC5B,EACD,cAAcC,EAAG,CACf,IAAIC,EAAOD,EAAE,OAAO,MAAM,CAAC,EACtBC,IAGL,KAAK,eAAe,KAAOA,EAC3BC,EAAaD,CAAI,EAAE,KAAME,GAAW,CAClC,KAAK,eAAe,IAAMA,EAC3B,EACF,EACD,SAASC,EAAK,CACZ,KAAK,OAAO,MAAK,EAAG,MAAK,EAAG,SAAS,CAAE,IAAAA,EAAK,EAAE,IAAI,EAClD,KAAK,MAAM,CACZ,EACD,OAAQ,CACN,KAAK,eAAiB,KAAK,SAAS,KAAM,EAAC,cAC5C,CACF,CACH,EA/DQC,EAAA,CAAA,MAAM,gGAAgG,EAQhGC,EAAA,CAAA,MAAM,kDAAkD,EAjBtEC,EAAA,CAAA,KAAA,4DAAA,OAAAC,EAAA,EAAAC,EAAAC,EAAA,KAAA,CACEC,EAA8CC,EAAA,OAAA,UADhDC,EAAAC,EAAA,CAAA,QAC2BC,EAAU,UAAA,CAAA,CAAA,CAAA,EACnCC,EA+BSC,EAAA,CA9BN,QAAS,CAAsB,MAAA,WAAA,EAHpC,WAIaC,EAAA,eAAe,KAJ5B,sBAIaC,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAF,EAAA,eAAe,KAAIE,GAC3B,aAAaL,EAAK,QAER,iBACT,IAYQ,CAZRM,EAYQ,QAZRhB,EAYQ,CATNgB,EAKE,QAAA,CAJA,KAAK,OACL,MAAM,mBACL,6BAAQN,EAAa,eAAAA,EAAA,cAAA,GAAAO,CAAA,GACtB,OAAO,oBAETD,EAEO,OAFPf,EACKiB,EAAAL,EAAA,eAAe,KAAI,uBAAA,iBAAA,EAAA,CAAA,IAIlBA,EAAA,eAAe,SADvBT,EAIE,MAAA,CAzBR,IAAA,EAuBS,IAAKS,EAAc,eAAC,IACrB,MAAM,wBAxBd,EAAA,KAAA,EAAAX,CAAA,GAAAiB,EAAA,GAAA,EAAA,IA2Be,UACT,IAES,CAFTR,EAESS,EAAA,CAFD,QAAQ,QAAS,QAAON,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAL,EAAA,SAASG,EAAA,eAAe,GAAG,KA5BjE,QAAAQ,EA4BoE,IAE9D,CA9BNC,EA4BoE,gBAE9D,IA9BN,EAAA,IA+BMX,EAAwCS,EAAA,CAA/B,QAAOV,EAAK,KAAA,EAAA,CA/B3B,QAAAW,EA+B6B,IAAQ,CA/BrCC,EA+B6B,UAAQ,IA/BrC,EAAA,oBAAA,EAAA"}
|
||||||
@@ -1,20 +1,20 @@
|
|||||||
import {
|
import {
|
||||||
v as d,
|
v as d,
|
||||||
a7 as g,
|
a7 as g,
|
||||||
am as L,
|
al as L,
|
||||||
D as m,
|
D as m,
|
||||||
X as i,
|
X as i,
|
||||||
x as p,
|
x as p,
|
||||||
y as f,
|
y as f,
|
||||||
M as D,
|
O as D,
|
||||||
az as c,
|
aG as c,
|
||||||
aA as h,
|
aH as h,
|
||||||
G as a,
|
J as a,
|
||||||
B as l,
|
G as l,
|
||||||
aJ as v,
|
aB as v,
|
||||||
U as x,
|
U as x,
|
||||||
Q as _,
|
Q as _,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
const w = {
|
const w = {
|
||||||
name: "InsertLink",
|
name: "InsertLink",
|
||||||
props: ["editor"],
|
props: ["editor"],
|
||||||
@@ -118,4 +118,4 @@ function V(t, e, B, C, n, s) {
|
|||||||
}
|
}
|
||||||
const R = d(w, [["render", V]]);
|
const R = d(w, [["render", V]]);
|
||||||
export { R as default };
|
export { R as default };
|
||||||
//# sourceMappingURL=InsertLink-9nQ40Mze.js.map
|
//# sourceMappingURL=InsertLink-b9-oqqq0.js.map
|
||||||
@@ -1 +1 @@
|
|||||||
{"version":3,"file":"InsertLink-9nQ40Mze.js","sources":["../../../../frappe-ui/src/components/TextEditor/InsertLink.vue"],"sourcesContent":["<template>\n <slot v-bind=\"{ onClick: openDialog }\"></slot>\n <Dialog\n :options=\"{ title: 'Set Link' }\"\n v-model=\"setLinkDialog.show\"\n @after-leave=\"reset\"\n >\n <template #body-content>\n <FormControl\n type=\"text\"\n label=\"URL\"\n v-model=\"setLinkDialog.url\"\n @keydown.enter=\"(e) => setLink(e.target.value)\"\n />\n </template>\n <template #actions>\n <Button variant=\"solid\" @click=\"setLink(setLinkDialog.url)\">\n Save\n </Button>\n </template>\n </Dialog>\n</template>\n<script>\nimport Dialog from '../Dialog.vue'\nimport Button from '../Button.vue'\nimport Input from '../Input.vue'\n\nexport default {\n name: 'InsertLink',\n props: ['editor'],\n components: { Button, Input, Dialog },\n data() {\n return {\n setLinkDialog: { url: '', show: false },\n }\n },\n methods: {\n openDialog() {\n let existingURL = this.editor.getAttributes('link').href\n if (existingURL) {\n this.setLinkDialog.url = existingURL\n }\n this.setLinkDialog.show = true\n },\n setLink(url) {\n // empty\n if (url === '') {\n this.editor.chain().focus().extendMarkRange('link').unsetLink().run()\n } else {\n // update link\n this.editor\n .chain()\n .focus()\n .extendMarkRange('link')\n .setLink({ href: url })\n .run()\n }\n\n this.setLinkDialog.show = false\n this.setLinkDialog.url = ''\n },\n reset() {\n this.setLinkDialog = this.$options.data().setLinkDialog\n },\n },\n}\n</script>\n"],"names":["_sfc_main","Button","Input","Dialog","existingURL","url","_openBlock","_createElementBlock","_Fragment","_renderSlot","_ctx","_normalizeProps","_guardReactiveProps","$options","_createVNode","_component_Dialog","$data","_cache","$event","_component_FormControl","_withKeys","e","_component_Button","_withCtx","_createTextVNode"],"mappings":"mJA2BA,MAAKA,EAAU,CACb,KAAM,aACN,MAAO,CAAC,QAAQ,EAChB,WAAY,CAAEC,OAAAA,EAAQ,MAAAC,EAAO,OAAAC,CAAQ,EACrC,MAAO,CACL,MAAO,CACL,cAAe,CAAE,IAAK,GAAI,KAAM,EAAO,CACzC,CACD,EACD,QAAS,CACP,YAAa,CACX,IAAIC,EAAc,KAAK,OAAO,cAAc,MAAM,EAAE,KAChDA,IACF,KAAK,cAAc,IAAMA,GAE3B,KAAK,cAAc,KAAO,EAC3B,EACD,QAAQC,EAAK,CAEPA,IAAQ,GACV,KAAK,OAAO,MAAK,EAAG,MAAK,EAAG,gBAAgB,MAAM,EAAE,UAAW,EAAC,IAAI,EAGpE,KAAK,OACF,MAAM,EACN,MAAM,EACN,gBAAgB,MAAM,EACtB,QAAQ,CAAE,KAAMA,EAAK,EACrB,IAAI,EAGT,KAAK,cAAc,KAAO,GAC1B,KAAK,cAAc,IAAM,EAC1B,EACD,OAAQ,CACN,KAAK,cAAgB,KAAK,SAAS,KAAM,EAAC,aAC3C,CACF,CACH,+EAjEA,OAAAC,EAAA,EAAAC,EAAAC,EAAA,KAAA,CACEC,EAA8CC,EAAA,OAAA,UADhDC,EAAAC,EAAA,CAAA,QAC2BC,EAAU,UAAA,CAAA,CAAA,CAAA,EACnCC,EAkBSC,EAAA,CAjBN,QAAS,CAAqB,MAAA,UAAA,EAHnC,WAIaC,EAAA,cAAc,KAJ3B,sBAIaC,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAF,EAAA,cAAc,KAAIE,GAC1B,aAAaL,EAAK,QAER,iBACT,IAKE,CALFC,EAKEK,EAAA,CAJA,KAAK,OACL,MAAM,MAVd,WAWiBH,EAAA,cAAc,IAX/B,sBAWiBC,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAF,EAAA,cAAc,IAAGE,GACzB,UAAOD,EAAA,CAAA,IAAAA,EAAA,CAAA,EAZhBG,EAYyBC,GAAMR,EAAA,QAAQQ,EAAE,OAAO,KAAK,EAAA,CAAA,OAAA,CAAA,6BAGtC,UACT,IAES,CAFTP,EAESQ,EAAA,CAFD,QAAQ,QAAS,QAAOL,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAL,EAAA,QAAQG,EAAA,cAAc,GAAG,KAhB/D,QAAAO,EAgBkE,IAE5D,CAlBNC,EAgBkE,QAE5D,IAlBN,EAAA,MAAA,EAAA"}
|
{"version":3,"file":"InsertLink-b9-oqqq0.js","sources":["../../../../frappe-ui/src/components/TextEditor/InsertLink.vue"],"sourcesContent":["<template>\n <slot v-bind=\"{ onClick: openDialog }\"></slot>\n <Dialog\n :options=\"{ title: 'Set Link' }\"\n v-model=\"setLinkDialog.show\"\n @after-leave=\"reset\"\n >\n <template #body-content>\n <FormControl\n type=\"text\"\n label=\"URL\"\n v-model=\"setLinkDialog.url\"\n @keydown.enter=\"(e) => setLink(e.target.value)\"\n />\n </template>\n <template #actions>\n <Button variant=\"solid\" @click=\"setLink(setLinkDialog.url)\">\n Save\n </Button>\n </template>\n </Dialog>\n</template>\n<script>\nimport Dialog from '../Dialog.vue'\nimport Button from '../Button.vue'\nimport Input from '../Input.vue'\n\nexport default {\n name: 'InsertLink',\n props: ['editor'],\n components: { Button, Input, Dialog },\n data() {\n return {\n setLinkDialog: { url: '', show: false },\n }\n },\n methods: {\n openDialog() {\n let existingURL = this.editor.getAttributes('link').href\n if (existingURL) {\n this.setLinkDialog.url = existingURL\n }\n this.setLinkDialog.show = true\n },\n setLink(url) {\n // empty\n if (url === '') {\n this.editor.chain().focus().extendMarkRange('link').unsetLink().run()\n } else {\n // update link\n this.editor\n .chain()\n .focus()\n .extendMarkRange('link')\n .setLink({ href: url })\n .run()\n }\n\n this.setLinkDialog.show = false\n this.setLinkDialog.url = ''\n },\n reset() {\n this.setLinkDialog = this.$options.data().setLinkDialog\n },\n },\n}\n</script>\n"],"names":["_sfc_main","Button","Input","Dialog","existingURL","url","_openBlock","_createElementBlock","_Fragment","_renderSlot","_ctx","_normalizeProps","_guardReactiveProps","$options","_createVNode","_component_Dialog","$data","_cache","$event","_component_FormControl","_withKeys","e","_component_Button","_withCtx","_createTextVNode"],"mappings":"mJA2BA,MAAKA,EAAU,CACb,KAAM,aACN,MAAO,CAAC,QAAQ,EAChB,WAAY,CAAEC,OAAAA,EAAQ,MAAAC,EAAO,OAAAC,CAAQ,EACrC,MAAO,CACL,MAAO,CACL,cAAe,CAAE,IAAK,GAAI,KAAM,EAAO,CACzC,CACD,EACD,QAAS,CACP,YAAa,CACX,IAAIC,EAAc,KAAK,OAAO,cAAc,MAAM,EAAE,KAChDA,IACF,KAAK,cAAc,IAAMA,GAE3B,KAAK,cAAc,KAAO,EAC3B,EACD,QAAQC,EAAK,CAEPA,IAAQ,GACV,KAAK,OAAO,MAAK,EAAG,MAAK,EAAG,gBAAgB,MAAM,EAAE,UAAW,EAAC,IAAI,EAGpE,KAAK,OACF,MAAM,EACN,MAAM,EACN,gBAAgB,MAAM,EACtB,QAAQ,CAAE,KAAMA,EAAK,EACrB,IAAI,EAGT,KAAK,cAAc,KAAO,GAC1B,KAAK,cAAc,IAAM,EAC1B,EACD,OAAQ,CACN,KAAK,cAAgB,KAAK,SAAS,KAAM,EAAC,aAC3C,CACF,CACH,+EAjEA,OAAAC,EAAA,EAAAC,EAAAC,EAAA,KAAA,CACEC,EAA8CC,EAAA,OAAA,UADhDC,EAAAC,EAAA,CAAA,QAC2BC,EAAU,UAAA,CAAA,CAAA,CAAA,EACnCC,EAkBSC,EAAA,CAjBN,QAAS,CAAqB,MAAA,UAAA,EAHnC,WAIaC,EAAA,cAAc,KAJ3B,sBAIaC,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAF,EAAA,cAAc,KAAIE,GAC1B,aAAaL,EAAK,QAER,iBACT,IAKE,CALFC,EAKEK,EAAA,CAJA,KAAK,OACL,MAAM,MAVd,WAWiBH,EAAA,cAAc,IAX/B,sBAWiBC,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAF,EAAA,cAAc,IAAGE,GACzB,UAAOD,EAAA,CAAA,IAAAA,EAAA,CAAA,EAZhBG,EAYyBC,GAAMR,EAAA,QAAQQ,EAAE,OAAO,KAAK,EAAA,CAAA,OAAA,CAAA,6BAGtC,UACT,IAES,CAFTP,EAESQ,EAAA,CAFD,QAAQ,QAAS,QAAOL,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAL,EAAA,QAAQG,EAAA,cAAc,GAAG,KAhB/D,QAAAO,EAgBkE,IAE5D,CAlBNC,EAgBkE,QAE5D,IAlBN,EAAA,MAAA,EAAA"}
|
||||||
@@ -1,31 +1,31 @@
|
|||||||
import {
|
import {
|
||||||
v as _,
|
v as _,
|
||||||
a7 as C,
|
a7 as v,
|
||||||
D as v,
|
D as C,
|
||||||
aL as k,
|
aA as k,
|
||||||
X as r,
|
X as r,
|
||||||
x as u,
|
x as u,
|
||||||
y as c,
|
y as c,
|
||||||
M as h,
|
O as h,
|
||||||
az as x,
|
aG as x,
|
||||||
aA as B,
|
aH as y,
|
||||||
G as a,
|
J as a,
|
||||||
B as l,
|
G as l,
|
||||||
C as y,
|
H as B,
|
||||||
U as n,
|
U as n,
|
||||||
I as U,
|
L as U,
|
||||||
A as w,
|
F as w,
|
||||||
J as p,
|
M as p,
|
||||||
Q as A,
|
Q as F,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
const I = {
|
const A = {
|
||||||
name: "InsertImage",
|
name: "InsertImage",
|
||||||
props: ["editor"],
|
props: ["editor"],
|
||||||
expose: ["openDialog"],
|
expose: ["openDialog"],
|
||||||
data() {
|
data() {
|
||||||
return { addVideoDialog: { url: "", file: null, show: !1 } };
|
return { addVideoDialog: { url: "", file: null, show: !1 } };
|
||||||
},
|
},
|
||||||
components: { Button: C, Dialog: v, FileUploader: k },
|
components: { Button: v, Dialog: C, FileUploader: k },
|
||||||
methods: {
|
methods: {
|
||||||
openDialog() {
|
openDialog() {
|
||||||
this.addVideoDialog.show = !0;
|
this.addVideoDialog.show = !0;
|
||||||
@@ -47,19 +47,19 @@ const I = {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
F = { class: "flex items-center space-x-2" },
|
I = { class: "flex items-center space-x-2" },
|
||||||
N = ["src"];
|
N = ["src"];
|
||||||
function S(i, o, L, z, e, t) {
|
function S(i, o, L, G, e, t) {
|
||||||
const s = r("Button"),
|
const s = r("Button"),
|
||||||
V = r("FileUploader"),
|
V = r("FileUploader"),
|
||||||
g = r("Dialog");
|
g = r("Dialog");
|
||||||
return (
|
return (
|
||||||
u(),
|
u(),
|
||||||
c(
|
c(
|
||||||
A,
|
F,
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
h(i.$slots, "default", x(B({ onClick: t.openDialog }))),
|
h(i.$slots, "default", x(y({ onClick: t.openDialog }))),
|
||||||
a(
|
a(
|
||||||
g,
|
g,
|
||||||
{
|
{
|
||||||
@@ -89,7 +89,7 @@ function S(i, o, L, z, e, t) {
|
|||||||
uploading: m,
|
uploading: m,
|
||||||
openFileSelector: D,
|
openFileSelector: D,
|
||||||
}) => [
|
}) => [
|
||||||
y("div", F, [
|
B("div", I, [
|
||||||
a(
|
a(
|
||||||
s,
|
s,
|
||||||
{ onClick: D },
|
{ onClick: D },
|
||||||
@@ -196,6 +196,6 @@ function S(i, o, L, z, e, t) {
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
const R = _(I, [["render", S]]);
|
const P = _(A, [["render", S]]);
|
||||||
export { R as default };
|
export { P as default };
|
||||||
//# sourceMappingURL=InsertVideo-nOXySFw5.js.map
|
//# sourceMappingURL=InsertVideo-rrce2h6I.js.map
|
||||||
@@ -1 +1 @@
|
|||||||
{"version":3,"file":"InsertVideo-nOXySFw5.js","sources":["../../../../frappe-ui/src/components/TextEditor/InsertVideo.vue"],"sourcesContent":["<template>\n <slot v-bind=\"{ onClick: openDialog }\"></slot>\n <Dialog\n :options=\"{ title: 'Add Video' }\"\n v-model=\"addVideoDialog.show\"\n @after-leave=\"reset\"\n >\n <template #body-content>\n <FileUploader\n file-types=\"video/*\"\n @success=\"(file) => (addVideoDialog.url = file.file_url)\"\n >\n <template v-slot=\"{ file, progress, uploading, openFileSelector }\">\n <div class=\"flex items-center space-x-2\">\n <Button @click=\"openFileSelector\">\n {{\n uploading\n ? `Uploading ${progress}%`\n : addVideoDialog.url\n ? 'Change Video'\n : 'Upload Video'\n }}\n </Button>\n <Button\n v-if=\"addVideoDialog.url\"\n @click=\"\n () => {\n addVideoDialog.url = null\n addVideoDialog.file = null\n }\n \"\n >\n Remove\n </Button>\n </div>\n </template>\n </FileUploader>\n <video\n v-if=\"addVideoDialog.url\"\n :src=\"addVideoDialog.url\"\n class=\"mt-2 w-full rounded-lg\"\n type=\"video/mp4\"\n controls\n />\n </template>\n <template #actions>\n <Button variant=\"solid\" @click=\"addVideo(addVideoDialog.url)\">\n Insert Video\n </Button>\n <Button @click=\"reset\">Cancel</Button>\n </template>\n </Dialog>\n</template>\n<script>\nimport Button from '../Button.vue'\nimport Dialog from '../Dialog.vue'\nimport FileUploader from '../FileUploader.vue'\n\nexport default {\n name: 'InsertImage',\n props: ['editor'],\n expose: ['openDialog'],\n data() {\n return {\n addVideoDialog: { url: '', file: null, show: false },\n }\n },\n components: { Button, Dialog, FileUploader },\n methods: {\n openDialog() {\n this.addVideoDialog.show = true\n },\n onVideoSelect(e) {\n let file = e.target.files[0]\n if (!file) {\n return\n }\n this.addVideoDialog.file = file\n },\n\n addVideo(src) {\n this.editor\n .chain()\n .focus()\n .insertContent(`<video src=\"${src}\"></video>`)\n .run()\n this.reset()\n },\n reset() {\n this.addVideoDialog = this.$options.data().addVideoDialog\n },\n },\n}\n</script>\n"],"names":["_sfc_main","Button","Dialog","FileUploader","e","file","src","_hoisted_1","_hoisted_2","_openBlock","_createElementBlock","_Fragment","_renderSlot","_ctx","_normalizeProps","_guardReactiveProps","$options","_createVNode","_component_Dialog","$data","_cache","$event","_component_FileUploader","_withCtx","progress","uploading","openFileSelector","_createElementVNode","_component_Button","_createTextVNode","_toDisplayString","_createBlock","_createCommentVNode"],"mappings":"uKA0DA,MAAKA,EAAU,CACb,KAAM,cACN,MAAO,CAAC,QAAQ,EAChB,OAAQ,CAAC,YAAY,EACrB,MAAO,CACL,MAAO,CACL,eAAgB,CAAE,IAAK,GAAI,KAAM,KAAM,KAAM,EAAO,CACtD,CACD,EACD,WAAY,CAAEC,OAAAA,EAAQ,OAAAC,EAAQ,aAAAC,CAAc,EAC5C,QAAS,CACP,YAAa,CACX,KAAK,eAAe,KAAO,EAC5B,EACD,cAAcC,EAAG,CACf,IAAIC,EAAOD,EAAE,OAAO,MAAM,CAAC,EACtBC,IAGL,KAAK,eAAe,KAAOA,EAC5B,EAED,SAASC,EAAK,CACZ,KAAK,OACF,MAAM,EACN,MAAM,EACN,cAAc,eAAeA,CAAG,YAAY,EAC5C,IAAI,EACP,KAAK,MAAM,CACZ,EACD,OAAQ,CACN,KAAK,eAAiB,KAAK,SAAS,KAAM,EAAC,cAC5C,CACF,CACH,EA/EeC,EAAA,CAAA,MAAM,6BAA6B,EAblDC,EAAA,CAAA,KAAA,gFAAA,OAAAC,EAAA,EAAAC,EAAAC,EAAA,KAAA,CACEC,EAA8CC,EAAA,OAAA,UADhDC,EAAAC,EAAA,CAAA,QAC2BC,EAAU,UAAA,CAAA,CAAA,CAAA,EACnCC,EAiDSC,EAAA,CAhDN,QAAS,CAAsB,MAAA,WAAA,EAHpC,WAIaC,EAAA,eAAe,KAJ5B,sBAIaC,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAF,EAAA,eAAe,KAAIE,GAC3B,aAAaL,EAAK,QAER,iBACT,IA4Be,CA5BfC,EA4BeK,EAAA,CA3Bb,aAAW,UACV,UAAOF,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAGf,GAAUc,EAAA,eAAe,IAAMd,EAAK,YAVvD,QAaUkB,EAAA,CAqBM,CAtBY,KAAAlB,EAAM,SAAAmB,EAAU,UAAAC,EAAW,iBAAAC,KAAgB,CAC7DC,EAqBM,MArBNpB,EAqBM,CApBJU,EAQSW,EAAA,CARA,QAAOF,CAAgB,EAAA,CAd5C,QAAAH,EAec,IAME,CArBhBM,EAAAC,EAgBgBL,eAA2CD,CAAQ,IAAwBL,EAAA,eAAe,wCAhB1G,EAAA,qBAwBoBA,EAAA,eAAe,SADvBY,EAUSH,EAAA,CAjCrB,IAAA,EAyBe,aAAkDT,EAAA,eAAe,IAAG,KAA0BA,EAAA,eAAe,KAAI,QAzBhI,QAAAI,EA+Ba,IAED,CAjCZM,EA+Ba,UAED,IAjCZ,EAAA,sBAAAG,EAAA,GAAA,EAAA,MAAA,EAAA,IAsCcb,EAAA,eAAe,SADvBT,EAME,QAAA,CA3CR,IAAA,EAuCS,IAAKS,EAAc,eAAC,IACrB,MAAM,yBACN,KAAK,YACL,SAAA,EA1CR,EAAA,KAAA,EAAAX,CAAA,GAAAwB,EAAA,GAAA,EAAA,IA6Ce,UACT,IAES,CAFTf,EAESW,EAAA,CAFD,QAAQ,QAAS,QAAOR,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAL,EAAA,SAASG,EAAA,eAAe,GAAG,KA9CjE,QAAAI,EA8CoE,IAE9D,CAhDNM,EA8CoE,gBAE9D,IAhDN,EAAA,IAiDMZ,EAAsCW,EAAA,CAA7B,QAAOZ,EAAK,KAAA,EAAA,CAjD3B,QAAAO,EAiD6B,IAAM,CAjDnCM,EAiD6B,QAAM,IAjDnC,EAAA,oBAAA,EAAA"}
|
{"version":3,"file":"InsertVideo-rrce2h6I.js","sources":["../../../../frappe-ui/src/components/TextEditor/InsertVideo.vue"],"sourcesContent":["<template>\n <slot v-bind=\"{ onClick: openDialog }\"></slot>\n <Dialog\n :options=\"{ title: 'Add Video' }\"\n v-model=\"addVideoDialog.show\"\n @after-leave=\"reset\"\n >\n <template #body-content>\n <FileUploader\n file-types=\"video/*\"\n @success=\"(file) => (addVideoDialog.url = file.file_url)\"\n >\n <template v-slot=\"{ file, progress, uploading, openFileSelector }\">\n <div class=\"flex items-center space-x-2\">\n <Button @click=\"openFileSelector\">\n {{\n uploading\n ? `Uploading ${progress}%`\n : addVideoDialog.url\n ? 'Change Video'\n : 'Upload Video'\n }}\n </Button>\n <Button\n v-if=\"addVideoDialog.url\"\n @click=\"\n () => {\n addVideoDialog.url = null\n addVideoDialog.file = null\n }\n \"\n >\n Remove\n </Button>\n </div>\n </template>\n </FileUploader>\n <video\n v-if=\"addVideoDialog.url\"\n :src=\"addVideoDialog.url\"\n class=\"mt-2 w-full rounded-lg\"\n type=\"video/mp4\"\n controls\n />\n </template>\n <template #actions>\n <Button variant=\"solid\" @click=\"addVideo(addVideoDialog.url)\">\n Insert Video\n </Button>\n <Button @click=\"reset\">Cancel</Button>\n </template>\n </Dialog>\n</template>\n<script>\nimport Button from '../Button.vue'\nimport Dialog from '../Dialog.vue'\nimport FileUploader from '../FileUploader.vue'\n\nexport default {\n name: 'InsertImage',\n props: ['editor'],\n expose: ['openDialog'],\n data() {\n return {\n addVideoDialog: { url: '', file: null, show: false },\n }\n },\n components: { Button, Dialog, FileUploader },\n methods: {\n openDialog() {\n this.addVideoDialog.show = true\n },\n onVideoSelect(e) {\n let file = e.target.files[0]\n if (!file) {\n return\n }\n this.addVideoDialog.file = file\n },\n\n addVideo(src) {\n this.editor\n .chain()\n .focus()\n .insertContent(`<video src=\"${src}\"></video>`)\n .run()\n this.reset()\n },\n reset() {\n this.addVideoDialog = this.$options.data().addVideoDialog\n },\n },\n}\n</script>\n"],"names":["_sfc_main","Button","Dialog","FileUploader","e","file","src","_hoisted_1","_hoisted_2","_openBlock","_createElementBlock","_Fragment","_renderSlot","_ctx","_normalizeProps","_guardReactiveProps","$options","_createVNode","_component_Dialog","$data","_cache","$event","_component_FileUploader","_withCtx","progress","uploading","openFileSelector","_createElementVNode","_component_Button","_createTextVNode","_toDisplayString","_createBlock","_createCommentVNode"],"mappings":"uKA0DA,MAAKA,EAAU,CACb,KAAM,cACN,MAAO,CAAC,QAAQ,EAChB,OAAQ,CAAC,YAAY,EACrB,MAAO,CACL,MAAO,CACL,eAAgB,CAAE,IAAK,GAAI,KAAM,KAAM,KAAM,EAAO,CACtD,CACD,EACD,WAAY,CAAEC,OAAAA,EAAQ,OAAAC,EAAQ,aAAAC,CAAc,EAC5C,QAAS,CACP,YAAa,CACX,KAAK,eAAe,KAAO,EAC5B,EACD,cAAcC,EAAG,CACf,IAAIC,EAAOD,EAAE,OAAO,MAAM,CAAC,EACtBC,IAGL,KAAK,eAAe,KAAOA,EAC5B,EAED,SAASC,EAAK,CACZ,KAAK,OACF,MAAM,EACN,MAAM,EACN,cAAc,eAAeA,CAAG,YAAY,EAC5C,IAAI,EACP,KAAK,MAAM,CACZ,EACD,OAAQ,CACN,KAAK,eAAiB,KAAK,SAAS,KAAM,EAAC,cAC5C,CACF,CACH,EA/EeC,EAAA,CAAA,MAAM,6BAA6B,EAblDC,EAAA,CAAA,KAAA,gFAAA,OAAAC,EAAA,EAAAC,EAAAC,EAAA,KAAA,CACEC,EAA8CC,EAAA,OAAA,UADhDC,EAAAC,EAAA,CAAA,QAC2BC,EAAU,UAAA,CAAA,CAAA,CAAA,EACnCC,EAiDSC,EAAA,CAhDN,QAAS,CAAsB,MAAA,WAAA,EAHpC,WAIaC,EAAA,eAAe,KAJ5B,sBAIaC,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAF,EAAA,eAAe,KAAIE,GAC3B,aAAaL,EAAK,QAER,iBACT,IA4Be,CA5BfC,EA4BeK,EAAA,CA3Bb,aAAW,UACV,UAAOF,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAGf,GAAUc,EAAA,eAAe,IAAMd,EAAK,YAVvD,QAaUkB,EAAA,CAqBM,CAtBY,KAAAlB,EAAM,SAAAmB,EAAU,UAAAC,EAAW,iBAAAC,KAAgB,CAC7DC,EAqBM,MArBNpB,EAqBM,CApBJU,EAQSW,EAAA,CARA,QAAOF,CAAgB,EAAA,CAd5C,QAAAH,EAec,IAME,CArBhBM,EAAAC,EAgBgBL,eAA2CD,CAAQ,IAAwBL,EAAA,eAAe,wCAhB1G,EAAA,qBAwBoBA,EAAA,eAAe,SADvBY,EAUSH,EAAA,CAjCrB,IAAA,EAyBe,aAAkDT,EAAA,eAAe,IAAG,KAA0BA,EAAA,eAAe,KAAI,QAzBhI,QAAAI,EA+Ba,IAED,CAjCZM,EA+Ba,UAED,IAjCZ,EAAA,sBAAAG,EAAA,GAAA,EAAA,MAAA,EAAA,IAsCcb,EAAA,eAAe,SADvBT,EAME,QAAA,CA3CR,IAAA,EAuCS,IAAKS,EAAc,eAAC,IACrB,MAAM,yBACN,KAAK,YACL,SAAA,EA1CR,EAAA,KAAA,EAAAX,CAAA,GAAAwB,EAAA,GAAA,EAAA,IA6Ce,UACT,IAES,CAFTf,EAESW,EAAA,CAFD,QAAQ,QAAS,QAAOR,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAAL,EAAA,SAASG,EAAA,eAAe,GAAG,KA9CjE,QAAAI,EA8CoE,IAE9D,CAhDNM,EA8CoE,gBAE9D,IAhDN,EAAA,IAiDMZ,EAAsCW,EAAA,CAA7B,QAAOZ,EAAK,KAAA,EAAA,CAjD3B,QAAAO,EAiD6B,IAAM,CAjDnCM,EAiD6B,QAAM,IAjDnC,EAAA,oBAAA,EAAA"}
|
||||||
@@ -1,95 +0,0 @@
|
|||||||
import {
|
|
||||||
d as n,
|
|
||||||
k as _,
|
|
||||||
y as m,
|
|
||||||
C as s,
|
|
||||||
G as o,
|
|
||||||
H as e,
|
|
||||||
A as p,
|
|
||||||
B as r,
|
|
||||||
J as u,
|
|
||||||
x as c,
|
|
||||||
a6 as d,
|
|
||||||
U as b,
|
|
||||||
I as f,
|
|
||||||
a7 as h,
|
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
|
||||||
import { P as x } from "./plus-pxSjkL_w.js";
|
|
||||||
import "./index-Vx7mSx23.js";
|
|
||||||
const j = { class: "text-base h-screen" },
|
|
||||||
y = {
|
|
||||||
class: "sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5",
|
|
||||||
},
|
|
||||||
k = { class: "flex" },
|
|
||||||
w = s("div", null, null, -1),
|
|
||||||
V = {
|
|
||||||
__name: "JobDetail",
|
|
||||||
props: { job: { type: String, required: !0 } },
|
|
||||||
setup(i) {
|
|
||||||
const l = n("$user");
|
|
||||||
return (
|
|
||||||
_({
|
|
||||||
url: "lms.lms.api.get_job_details",
|
|
||||||
params: { job: i.job },
|
|
||||||
cache: ["job"],
|
|
||||||
auto: !0,
|
|
||||||
}),
|
|
||||||
(t, J) => {
|
|
||||||
var a;
|
|
||||||
return (
|
|
||||||
c(),
|
|
||||||
m("div", j, [
|
|
||||||
s("header", y, [
|
|
||||||
o(
|
|
||||||
e(d),
|
|
||||||
{
|
|
||||||
class: "h-7",
|
|
||||||
items: [
|
|
||||||
{
|
|
||||||
label: t.__("Jobs"),
|
|
||||||
route: { name: "Jobs" },
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
null,
|
|
||||||
8,
|
|
||||||
["items"]
|
|
||||||
),
|
|
||||||
s("div", k, [
|
|
||||||
(a = e(l).data) != null && a.name
|
|
||||||
? (c(),
|
|
||||||
p(
|
|
||||||
e(h),
|
|
||||||
{ key: 0, variant: "solid" },
|
|
||||||
{
|
|
||||||
prefix: r(() => [
|
|
||||||
o(e(x), {
|
|
||||||
class: "h-4 w-4",
|
|
||||||
}),
|
|
||||||
]),
|
|
||||||
default: r(() => [
|
|
||||||
b(
|
|
||||||
" " +
|
|
||||||
f(
|
|
||||||
t.__(
|
|
||||||
"New Job"
|
|
||||||
)
|
|
||||||
),
|
|
||||||
1
|
|
||||||
),
|
|
||||||
]),
|
|
||||||
_: 1,
|
|
||||||
}
|
|
||||||
))
|
|
||||||
: u("", !0),
|
|
||||||
]),
|
|
||||||
]),
|
|
||||||
w,
|
|
||||||
])
|
|
||||||
);
|
|
||||||
}
|
|
||||||
);
|
|
||||||
},
|
|
||||||
};
|
|
||||||
export { V as default };
|
|
||||||
//# sourceMappingURL=JobDetail-NAXvVry4.js.map
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
{"version":3,"file":"JobDetail-NAXvVry4.js","sources":["../../../../frontend/src/pages/JobDetail.vue"],"sourcesContent":["<template>\n\t<div class=\"text-base h-screen\">\n\t\t<header\n\t\t\tclass=\"sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5\"\n\t\t>\n\t\t\t<Breadcrumbs\n\t\t\t\tclass=\"h-7\"\n\t\t\t\t:items=\"[{ label: __('Jobs'), route: { name: 'Jobs' } }]\"\n\t\t\t/>\n\t\t\t<div class=\"flex\">\n\t\t\t\t<Button v-if=\"user.data?.name\" variant=\"solid\">\n\t\t\t\t\t<template #prefix>\n\t\t\t\t\t\t<Plus class=\"h-4 w-4\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ __('New Job') }}\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t</header>\n\t\t<div>\n\t\t\t\n\t\t</div>\n\t</div>\n</template>\n<script setup>\nimport { createDocumentResource, Button, Breadcrumbs, createResource } from 'frappe-ui';\nimport { inject } from 'vue';\nimport { Plus } from 'lucide-vue-next';\n\nconst user = inject('$user')\n\nconst props = defineProps({\n\tjob: {\n\t\ttype: String,\n\t\trequired: true,\n\t},\n})\nconst job = createResource({\n\turl: \"lms.lms.api.get_job_details\",\n\tparams: {\n\t\tjob: props.job,\n\t},\n\tcache: [\"job\"],\n\tauto: true,\n})\n</script>\n"],"names":["user","inject","createResource","__props"],"mappings":"qcA4BA,MAAMA,EAAOC,EAAO,OAAO,EAQf,OAAAC,EAAe,CAC1B,IAAK,8BACL,OAAQ,CACP,IATYC,EASD,GACX,EACD,MAAO,CAAC,KAAK,EACb,KAAM,EACP,CAAC"}
|
|
||||||
557
lms/public/frontend/assets/JobDetail-c-bT6KGV.js
Normal file
557
lms/public/frontend/assets/JobDetail-c-bT6KGV.js
Normal file
@@ -0,0 +1,557 @@
|
|||||||
|
import {
|
||||||
|
aa as T,
|
||||||
|
r as L,
|
||||||
|
ab as U,
|
||||||
|
d as w,
|
||||||
|
k as M,
|
||||||
|
x as u,
|
||||||
|
F as D,
|
||||||
|
G as c,
|
||||||
|
H as s,
|
||||||
|
L as n,
|
||||||
|
y as m,
|
||||||
|
J as i,
|
||||||
|
K as e,
|
||||||
|
a7 as x,
|
||||||
|
U as b,
|
||||||
|
aA as H,
|
||||||
|
D as P,
|
||||||
|
s as Y,
|
||||||
|
M as C,
|
||||||
|
a6 as B,
|
||||||
|
a8 as F,
|
||||||
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
|
import { a as J, d as N, c as z } from "./index-6k1S_EjG.js";
|
||||||
|
import { F as q } from "./file-text-w2g11TfY.js";
|
||||||
|
import { M as E } from "./map-pin-yIki2ElO.js";
|
||||||
|
/**
|
||||||
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
|
*
|
||||||
|
* This source code is licensed under the ISC license.
|
||||||
|
* See the LICENSE file in the root directory of this source tree.
|
||||||
|
*/ const I = J("FlagIcon", [
|
||||||
|
[
|
||||||
|
"path",
|
||||||
|
{
|
||||||
|
d: "M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z",
|
||||||
|
key: "i9b6wo",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
["line", { x1: "4", x2: "4", y1: "22", y2: "15", key: "1cm3nv" }],
|
||||||
|
]);
|
||||||
|
/**
|
||||||
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
|
*
|
||||||
|
* This source code is licensed under the ISC license.
|
||||||
|
* See the LICENSE file in the root directory of this source tree.
|
||||||
|
*/ const R = J("SendHorizontalIcon", [
|
||||||
|
["path", { d: "m3 3 3 9-3 9 19-9Z", key: "1aobqy" }],
|
||||||
|
["path", { d: "M6 12h16", key: "s4cdu5" }],
|
||||||
|
]),
|
||||||
|
G = { class: "flex flex-col gap-4" },
|
||||||
|
K = { key: 0 },
|
||||||
|
O = { class: "" },
|
||||||
|
Z = { key: 1, class: "flex items-center" },
|
||||||
|
Q = { class: "border rounded-md p-2 mr-2" },
|
||||||
|
W = { class: "flex flex-col" },
|
||||||
|
X = { class: "text-sm text-gray-500 mt-1" },
|
||||||
|
ee = {
|
||||||
|
__name: "JobApplicationModal",
|
||||||
|
props: T(
|
||||||
|
{ job: { type: String, required: !0 } },
|
||||||
|
{ modelValue: {}, modelModifiers: {} }
|
||||||
|
),
|
||||||
|
emits: ["update:modelValue"],
|
||||||
|
setup(f) {
|
||||||
|
const r = L(null),
|
||||||
|
h = U(f, "modelValue"),
|
||||||
|
_ = w("$user"),
|
||||||
|
y = f,
|
||||||
|
t = (p) => {
|
||||||
|
if (p.name.split(".").pop().toLowerCase() != "pdf")
|
||||||
|
return "Only PDF file is allowed";
|
||||||
|
},
|
||||||
|
v = M({
|
||||||
|
url: "frappe.client.insert",
|
||||||
|
makeParams(p) {
|
||||||
|
var o, a;
|
||||||
|
return {
|
||||||
|
doc: {
|
||||||
|
doctype: "LMS Job Application",
|
||||||
|
user: (o = _.data) == null ? void 0 : o.name,
|
||||||
|
resume:
|
||||||
|
(a = r.value) == null
|
||||||
|
? void 0
|
||||||
|
: a.file_name,
|
||||||
|
job: y.job,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
j = (p) => {
|
||||||
|
v.submit(
|
||||||
|
{},
|
||||||
|
{
|
||||||
|
validate() {
|
||||||
|
if (!r.value)
|
||||||
|
return "Please upload your resume";
|
||||||
|
},
|
||||||
|
onSuccess() {
|
||||||
|
z({
|
||||||
|
title: "Success",
|
||||||
|
text: "Your application has been submitted",
|
||||||
|
icon: "check",
|
||||||
|
iconClasses:
|
||||||
|
"bg-green-600 text-white rounded-md p-px",
|
||||||
|
});
|
||||||
|
},
|
||||||
|
onError(o) {
|
||||||
|
var a;
|
||||||
|
z({
|
||||||
|
title: "Error",
|
||||||
|
text:
|
||||||
|
((a = o.messages) == null
|
||||||
|
? void 0
|
||||||
|
: a[0]) || o,
|
||||||
|
icon: "x",
|
||||||
|
iconClasses:
|
||||||
|
"bg-red-600 text-white rounded-md p-px",
|
||||||
|
position: "top-center",
|
||||||
|
timeout: 10,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
return (p, o) => (
|
||||||
|
u(),
|
||||||
|
D(
|
||||||
|
e(P),
|
||||||
|
{
|
||||||
|
modelValue: h.value,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
o[1] || (o[1] = (a) => (h.value = a)),
|
||||||
|
class: "text-base",
|
||||||
|
options: {
|
||||||
|
title: p.__("Apply for this job"),
|
||||||
|
size: "lg",
|
||||||
|
actions: [
|
||||||
|
{
|
||||||
|
label: "Submit",
|
||||||
|
variant: "solid",
|
||||||
|
onClick: (a) => {
|
||||||
|
j();
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"body-content": c(() => [
|
||||||
|
s("div", G, [
|
||||||
|
s(
|
||||||
|
"p",
|
||||||
|
null,
|
||||||
|
n(
|
||||||
|
p.__(
|
||||||
|
"Submit your resume to proceed with your application for this position. Upon submission, it will be shared with the job poster."
|
||||||
|
)
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
r.value
|
||||||
|
? (u(),
|
||||||
|
m("div", Z, [
|
||||||
|
s("div", Q, [
|
||||||
|
i(e(q), {
|
||||||
|
class: "h-5 w-5 stroke-1.5 text-gray-700",
|
||||||
|
}),
|
||||||
|
]),
|
||||||
|
s("div", W, [
|
||||||
|
s(
|
||||||
|
"span",
|
||||||
|
null,
|
||||||
|
n(r.value.file_name),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
s(
|
||||||
|
"span",
|
||||||
|
X,
|
||||||
|
n(e(N)(r.value.file_size)),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
]))
|
||||||
|
: (u(),
|
||||||
|
m("div", K, [
|
||||||
|
i(
|
||||||
|
e(H),
|
||||||
|
{
|
||||||
|
fileTypes: [".pdf"],
|
||||||
|
validateFile: t,
|
||||||
|
onSuccess:
|
||||||
|
o[0] ||
|
||||||
|
(o[0] = (a) => {
|
||||||
|
r.value = a;
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
default: c(
|
||||||
|
({
|
||||||
|
file: a,
|
||||||
|
progress: l,
|
||||||
|
uploading: d,
|
||||||
|
openFileSelector: g,
|
||||||
|
}) => [
|
||||||
|
s("div", O, [
|
||||||
|
i(
|
||||||
|
e(x),
|
||||||
|
{
|
||||||
|
onClick:
|
||||||
|
g,
|
||||||
|
loading:
|
||||||
|
d,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
default:
|
||||||
|
c(
|
||||||
|
() => [
|
||||||
|
b(
|
||||||
|
n(
|
||||||
|
d
|
||||||
|
? `Uploading ${l}%`
|
||||||
|
: "Upload your resume"
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]
|
||||||
|
),
|
||||||
|
_: 2,
|
||||||
|
},
|
||||||
|
1032,
|
||||||
|
[
|
||||||
|
"onClick",
|
||||||
|
"loading",
|
||||||
|
]
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
]
|
||||||
|
),
|
||||||
|
_: 1,
|
||||||
|
},
|
||||||
|
8,
|
||||||
|
["fileTypes"]
|
||||||
|
),
|
||||||
|
])),
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
_: 1,
|
||||||
|
},
|
||||||
|
8,
|
||||||
|
["modelValue", "options"]
|
||||||
|
)
|
||||||
|
);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
se = { class: "text-base h-screen" },
|
||||||
|
te = {
|
||||||
|
class: "sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5",
|
||||||
|
},
|
||||||
|
oe = { key: 0, class: "flex" },
|
||||||
|
ae = { key: 1 },
|
||||||
|
le = { key: 0 },
|
||||||
|
ie = { class: "p-5 sm:p-5" },
|
||||||
|
ne = { class: "flex mb-4" },
|
||||||
|
re = ["src"],
|
||||||
|
de = { class: "text-2xl font-semibold mb-2" },
|
||||||
|
ce = { class: "font-medium" },
|
||||||
|
pe = { class: "font-medium" },
|
||||||
|
ue = { class: "flex items-center mt-2" },
|
||||||
|
me = ["innerHTML"],
|
||||||
|
ye = {
|
||||||
|
__name: "JobDetail",
|
||||||
|
props: { job: { type: String, required: !0 } },
|
||||||
|
setup(f) {
|
||||||
|
var o, a;
|
||||||
|
const r = w("$user"),
|
||||||
|
h = w("$dayjs"),
|
||||||
|
_ = L(!1),
|
||||||
|
y = f,
|
||||||
|
t = M({
|
||||||
|
url: "lms.lms.api.get_job_details",
|
||||||
|
params: { job: y.job },
|
||||||
|
cache: ["job", y.job],
|
||||||
|
auto: !0,
|
||||||
|
}),
|
||||||
|
v = M({
|
||||||
|
url: "frappe.client.get_list",
|
||||||
|
params: {
|
||||||
|
doctype: "LMS Job Application",
|
||||||
|
filters: {
|
||||||
|
job: (o = t.data) == null ? void 0 : o.name,
|
||||||
|
user: (a = r.data) == null ? void 0 : a.name,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
Y(() => {
|
||||||
|
var l;
|
||||||
|
(l = r.data) != null && l.name && v.submit();
|
||||||
|
});
|
||||||
|
const j = () => {
|
||||||
|
_.value = !0;
|
||||||
|
},
|
||||||
|
p = (l) => {
|
||||||
|
window.location.href = `/login?redirect-to=/job-openings/${l}`;
|
||||||
|
};
|
||||||
|
return (l, d) => {
|
||||||
|
var g, $, V, S;
|
||||||
|
return (
|
||||||
|
u(),
|
||||||
|
m("div", se, [
|
||||||
|
s("header", te, [
|
||||||
|
i(
|
||||||
|
e(B),
|
||||||
|
{
|
||||||
|
class: "h-7",
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
label: l.__("Jobs"),
|
||||||
|
route: { name: "Jobs" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:
|
||||||
|
(g = e(t).data) == null
|
||||||
|
? void 0
|
||||||
|
: g.job_title,
|
||||||
|
route: {
|
||||||
|
name: "JobDetail",
|
||||||
|
params: {
|
||||||
|
job:
|
||||||
|
($ = e(t).data) == null
|
||||||
|
? void 0
|
||||||
|
: $.name,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["items"]
|
||||||
|
),
|
||||||
|
(V = e(r).data) != null && V.name
|
||||||
|
? (u(),
|
||||||
|
m("div", oe, [
|
||||||
|
i(
|
||||||
|
e(x),
|
||||||
|
{ class: "mr-2" },
|
||||||
|
{
|
||||||
|
prefix: c(() => [
|
||||||
|
i(e(I), {
|
||||||
|
class: "h-4 w-4",
|
||||||
|
}),
|
||||||
|
]),
|
||||||
|
default: c(() => [
|
||||||
|
b(
|
||||||
|
" " + n(l.__("Report")),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
_: 1,
|
||||||
|
}
|
||||||
|
),
|
||||||
|
(S = e(v).data) != null && S.length
|
||||||
|
? C("", !0)
|
||||||
|
: (u(),
|
||||||
|
D(
|
||||||
|
e(x),
|
||||||
|
{
|
||||||
|
key: 0,
|
||||||
|
variant: "solid",
|
||||||
|
onClick:
|
||||||
|
d[0] ||
|
||||||
|
(d[0] = (k) => j()),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
prefix: c(() => [
|
||||||
|
i(e(R), {
|
||||||
|
class: "h-4 w-4",
|
||||||
|
}),
|
||||||
|
]),
|
||||||
|
default: c(() => [
|
||||||
|
b(
|
||||||
|
" " +
|
||||||
|
n(
|
||||||
|
l.__(
|
||||||
|
"Apply"
|
||||||
|
)
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
_: 1,
|
||||||
|
}
|
||||||
|
)),
|
||||||
|
]))
|
||||||
|
: (u(),
|
||||||
|
m("div", ae, [
|
||||||
|
i(
|
||||||
|
e(x),
|
||||||
|
{
|
||||||
|
onClick:
|
||||||
|
d[1] ||
|
||||||
|
(d[1] = (k) => {
|
||||||
|
var A;
|
||||||
|
return p(
|
||||||
|
(A = e(t).data) ==
|
||||||
|
null
|
||||||
|
? void 0
|
||||||
|
: A.name
|
||||||
|
);
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
default: c(() => [
|
||||||
|
s(
|
||||||
|
"span",
|
||||||
|
null,
|
||||||
|
n(
|
||||||
|
l.__(
|
||||||
|
"Login to apply"
|
||||||
|
)
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
_: 1,
|
||||||
|
}
|
||||||
|
),
|
||||||
|
])),
|
||||||
|
]),
|
||||||
|
e(t).data
|
||||||
|
? (u(),
|
||||||
|
m("div", le, [
|
||||||
|
s("div", ie, [
|
||||||
|
s("div", ne, [
|
||||||
|
s(
|
||||||
|
"img",
|
||||||
|
{
|
||||||
|
src: e(t).data.company_logo,
|
||||||
|
class: "w-16 h-16 rounded-lg object-contain mr-4",
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
re
|
||||||
|
),
|
||||||
|
s("div", null, [
|
||||||
|
s(
|
||||||
|
"div",
|
||||||
|
de,
|
||||||
|
n(e(t).data.job_title),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
s("div", null, [
|
||||||
|
b(
|
||||||
|
n(l.__("posted by")) +
|
||||||
|
" ",
|
||||||
|
1
|
||||||
|
),
|
||||||
|
s(
|
||||||
|
"span",
|
||||||
|
ce,
|
||||||
|
n(
|
||||||
|
e(t).data
|
||||||
|
.company_name
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
b(
|
||||||
|
" " +
|
||||||
|
n(l.__("on")) +
|
||||||
|
" ",
|
||||||
|
1
|
||||||
|
),
|
||||||
|
s(
|
||||||
|
"span",
|
||||||
|
pe,
|
||||||
|
n(
|
||||||
|
e(h)(
|
||||||
|
e(t).data
|
||||||
|
.creation
|
||||||
|
).format(
|
||||||
|
"DD MMM YYYY"
|
||||||
|
)
|
||||||
|
),
|
||||||
|
1
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
s("div", ue, [
|
||||||
|
i(
|
||||||
|
e(F),
|
||||||
|
{
|
||||||
|
label: e(t).data
|
||||||
|
.type,
|
||||||
|
theme: "green",
|
||||||
|
size: "lg",
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["label"]
|
||||||
|
),
|
||||||
|
i(
|
||||||
|
e(F),
|
||||||
|
{
|
||||||
|
label: e(t).data
|
||||||
|
.location,
|
||||||
|
theme: "gray",
|
||||||
|
size: "lg",
|
||||||
|
class: "ml-4",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
prefix: c(() => [
|
||||||
|
i(e(E), {
|
||||||
|
class: "h-4 w-4 stroke-1.5",
|
||||||
|
}),
|
||||||
|
]),
|
||||||
|
_: 1,
|
||||||
|
},
|
||||||
|
8,
|
||||||
|
["label"]
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
s(
|
||||||
|
"p",
|
||||||
|
{
|
||||||
|
innerHTML:
|
||||||
|
e(t).data.description,
|
||||||
|
class: "ProseMirror prose prose-table:table-fixed prose-td:p-2 prose-th:p-2 prose-td:border prose-th:border prose-td:border-gray-300 prose-th:border-gray-300 prose-td:relative prose-th:relative prose-th:bg-gray-100 prose-sm max-w-none !whitespace-normal mt-6",
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
me
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
i(
|
||||||
|
ee,
|
||||||
|
{
|
||||||
|
modelValue: _.value,
|
||||||
|
"onUpdate:modelValue":
|
||||||
|
d[2] ||
|
||||||
|
(d[2] = (k) => (_.value = k)),
|
||||||
|
job: e(t).data.name,
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
8,
|
||||||
|
["modelValue", "job"]
|
||||||
|
),
|
||||||
|
]))
|
||||||
|
: C("", !0),
|
||||||
|
])
|
||||||
|
);
|
||||||
|
};
|
||||||
|
},
|
||||||
|
};
|
||||||
|
export { ye as default };
|
||||||
|
//# sourceMappingURL=JobDetail-c-bT6KGV.js.map
|
||||||
1
lms/public/frontend/assets/JobDetail-c-bT6KGV.js.map
Normal file
1
lms/public/frontend/assets/JobDetail-c-bT6KGV.js.map
Normal file
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
|||||||
{"version":3,"file":"Jobs-PZPyKz-0.js","sources":["../../../../node_modules/lucide-vue-next/dist/esm/icons/map-pin.js","../../../../frontend/src/components/JobCard.vue","../../../../frontend/src/pages/Jobs.vue"],"sourcesContent":["/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst MapPin = createLucideIcon(\"MapPinIcon\", [\n [\"path\", { d: \"M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z\", key: \"2oe9fu\" }],\n [\"circle\", { cx: \"12\", cy: \"10\", r: \"3\", key: \"ilqhr7\" }]\n]);\n\nexport { MapPin as default };\n//# sourceMappingURL=map-pin.js.map\n","<template>\n\t<div class=\"flex shadow rounded-md p-4 h-full\">\n\t\t<img\n\t\t\t:src=\"job.company_logo\"\n\t\t\tclass=\"w-12 h-12 rounded-lg object-contain mr-4\"\n\t\t/>\n\t\t<div>\n\t\t\t<div class=\"text-xl font-semibold mb-2\">\n\t\t\t\t{{ job.job_title }}\n\t\t\t</div>\n\t\t\t<div>\n\t\t\t\t{{ __(\"posted by\") }}\n\t\t\t\t<span class=\"font-medium\">\n\t\t\t\t\t{{ job.company_name }}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t\t<div class=\"flex items-center my-4\">\n\t\t\t\t<Badge :label=\"job.type\" theme=\"green\" size=\"lg\" class=\"mr-4\"/>\n\t\t\t\t<Badge :label=\"job.location\" theme=\"gray\" size=\"lg\">\n\t\t\t\t\t<template #prefix>\n\t\t\t\t\t\t<MapPin class=\"h-4 w-4 stroke-1.5\" />\n\t\t\t\t\t</template>\n\t\t\t\t</Badge>\n\t\t\t</div>\n\t\t\t<div>\n\t\t\t\t{{ __(\"posted on\") }}\n\t\t\t\t<span class=\"font-medium\">\n\t\t\t\t\t{{ dayjs(job.creation).format('DD MMM YYYY') }}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\t<!-- <div class=\"flex flex-col shadow rounded-md p-4 h-full\">\n\t\t<div class=\"flex justify-between\">\n\t\t\t<div>\n\t\t\t\t<div class=\"text-xl font-semibold mb-2\">\n\t\t\t\t\t{{ job.job_title }}\n\t\t\t\t</div>\n\t\t\t\t<div>\n\t\t\t\t\t{{ __(\"posted by\") }}\n\t\t\t\t\t<span class=\"font-medium\">\n\t\t\t\t\t\t{{ job.company_name }}\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<img\n\t\t\t\t:src=\"job.company_logo\"\n\t\t\t\tclass=\"w-12 h-12 rounded-lg object-contain\"\n\t\t\t/>\n\t\t</div>\n\t\t<div class=\"flex justify-between mt-8\">\n\t\t\t<div class=\"flex items-center\">\n\t\t\t\t<Badge :label=\"job.type\" theme=\"green\" size=\"lg\" class=\"mr-4\"/>\n\t\t\t\t<Badge :label=\"job.location\" theme=\"gray\" size=\"lg\">\n\t\t\t\t\t<template #prefix>\n\t\t\t\t\t\t<MapPin class=\"h-4 w-4 stroke-1.5\" />\n\t\t\t\t\t</template>\n\t\t\t\t</Badge>\n\t\t\t</div>\n\t\t\t<div>\n\t\t\t\t<span class=\"font-medium\">\n\t\t\t\t\t{{ dayjs(job.creation).format('DD MMM YYYY') }}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t</div>\n\t</div> -->\n</template>\n<script setup>\nimport { MapPin } from 'lucide-vue-next'\nimport { Badge } from 'frappe-ui'\nimport { inject } from 'vue'\n\nconst dayjs = inject('$dayjs')\nconst props = defineProps({\n\tjob: {\n\t\ttype: Object,\n\t\tdefault: null,\n\t},\n})\n</script>\n","<template>\n\t<div class=\"h-screen text-base\">\n\t\t<header\n\t\t\tclass=\"sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5\"\n\t\t>\n\t\t\t<Breadcrumbs\n\t\t\t\tclass=\"h-7\"\n\t\t\t\t:items=\"[{ label: __('Jobs'), route: { name: 'Jobs' } }]\"\n\t\t\t/>\n\t\t\t<div class=\"flex\">\n\t\t\t\t<Button v-if=\"user.data?.name\" variant=\"solid\">\n\t\t\t\t\t<template #prefix>\n\t\t\t\t\t\t<Plus class=\"h-4 w-4\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ __('New Job') }}\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t</header>\n\t\t<div v-if=\"jobs.data\">\n\t\t\t<div class=\"grid grid-cols-2 gap-5 p-5\">\n\t\t\t\t<div v-if=\"jobs.data.length\" v-for=\"job in jobs.data\">\n\t\t\t\t\t<router-link\n\t\t\t\t\t\t:to=\"{\n\t\t\t\t\t\t\tname: 'JobDetail',\n\t\t\t\t\t\t\tparams: { job: job.name },\n\t\t\t\t\t\t}\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<JobCard :job=\"job\" />\n\t\t\t\t\t</router-link>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n<script setup>\nimport { Button, Breadcrumbs, createResource } from 'frappe-ui'\nimport { Plus } from 'lucide-vue-next'\nimport { inject } from 'vue'\nimport JobCard from '@/components/JobCard.vue'\n\nconst user = inject('$user')\n\nconst jobs = createResource({\n\turl: 'lms.lms.api.get_job_opportunities',\n\tcache: ['jobs'],\n\tauto: true,\n})\n</script>\n"],"names":["MapPin","createLucideIcon","dayjs","inject","user","jobs","createResource"],"mappings":"qPAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASA,MAAMA,EAASC,EAAiB,aAAc,CAC5C,CAAC,OAAQ,CAAE,EAAG,iDAAkD,IAAK,QAAQ,CAAE,EAC/E,CAAC,SAAU,CAAE,GAAI,KAAM,GAAI,KAAM,EAAG,IAAK,IAAK,SAAU,CAC1D,CAAC,wPC4DD,MAAMC,EAAQC,EAAO,QAAQ,wyBChC7B,MAAMC,EAAOD,EAAO,OAAO,EAErBE,EAAOC,EAAe,CAC3B,IAAK,oCACL,MAAO,CAAC,MAAM,EACd,KAAM,EACP,CAAC","x_google_ignoreList":[0]}
|
|
||||||
@@ -1,54 +1,40 @@
|
|||||||
import {
|
import {
|
||||||
d as p,
|
d as f,
|
||||||
x as n,
|
x as a,
|
||||||
y as c,
|
y as c,
|
||||||
C as e,
|
H as e,
|
||||||
I as l,
|
L as n,
|
||||||
U as _,
|
U as u,
|
||||||
G as a,
|
J as l,
|
||||||
H as s,
|
K as s,
|
||||||
a8 as h,
|
a8 as h,
|
||||||
B as r,
|
G as r,
|
||||||
k as y,
|
k as y,
|
||||||
A as j,
|
F as p,
|
||||||
J as m,
|
M as _,
|
||||||
Q as g,
|
Q as g,
|
||||||
R as x,
|
R as v,
|
||||||
a6 as k,
|
a6 as x,
|
||||||
a7 as v,
|
a7 as k,
|
||||||
X as $,
|
X as $,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
import { a as w } from "./index-Vx7mSx23.js";
|
import { M as w } from "./map-pin-yIki2ElO.js";
|
||||||
import { P as J } from "./plus-pxSjkL_w.js";
|
import { P as J } from "./plus-0JOmes86.js";
|
||||||
/**
|
import "./index-6k1S_EjG.js";
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
const M = { class: "flex shadow rounded-md p-4 h-full" },
|
||||||
*
|
N = ["src"],
|
||||||
* This source code is licensed under the ISC license.
|
B = { class: "text-xl font-semibold mb-2" },
|
||||||
* See the LICENSE file in the root directory of this source tree.
|
C = { class: "font-medium" },
|
||||||
*/ const M = w("MapPinIcon", [
|
D = { class: "flex items-center my-4" },
|
||||||
[
|
|
||||||
"path",
|
|
||||||
{
|
|
||||||
d: "M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z",
|
|
||||||
key: "2oe9fu",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
["circle", { cx: "12", cy: "10", r: "3", key: "ilqhr7" }],
|
|
||||||
]),
|
|
||||||
B = { class: "flex shadow rounded-md p-4 h-full" },
|
|
||||||
C = ["src"],
|
|
||||||
N = { class: "text-xl font-semibold mb-2" },
|
|
||||||
D = { class: "font-medium" },
|
|
||||||
P = { class: "flex items-center my-4" },
|
|
||||||
V = { class: "font-medium" },
|
V = { class: "font-medium" },
|
||||||
Y = {
|
Y = {
|
||||||
__name: "JobCard",
|
__name: "JobCard",
|
||||||
props: { job: { type: Object, default: null } },
|
props: { job: { type: Object, default: null } },
|
||||||
setup(t) {
|
setup(t) {
|
||||||
const i = p("$dayjs");
|
const i = f("$dayjs");
|
||||||
return (o, d) => (
|
return (o, d) => (
|
||||||
n(),
|
a(),
|
||||||
c("div", B, [
|
c("div", M, [
|
||||||
e(
|
e(
|
||||||
"img",
|
"img",
|
||||||
{
|
{
|
||||||
@@ -57,16 +43,16 @@ import { P as J } from "./plus-pxSjkL_w.js";
|
|||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
8,
|
8,
|
||||||
C
|
N
|
||||||
),
|
),
|
||||||
e("div", null, [
|
e("div", null, [
|
||||||
e("div", N, l(t.job.job_title), 1),
|
e("div", B, n(t.job.job_title), 1),
|
||||||
e("div", null, [
|
e("div", null, [
|
||||||
_(l(o.__("posted by")) + " ", 1),
|
u(n(o.__("posted by")) + " ", 1),
|
||||||
e("span", D, l(t.job.company_name), 1),
|
e("span", C, n(t.job.company_name), 1),
|
||||||
]),
|
]),
|
||||||
e("div", P, [
|
e("div", D, [
|
||||||
a(
|
l(
|
||||||
s(h),
|
s(h),
|
||||||
{
|
{
|
||||||
label: t.job.type,
|
label: t.job.type,
|
||||||
@@ -78,7 +64,7 @@ import { P as J } from "./plus-pxSjkL_w.js";
|
|||||||
8,
|
8,
|
||||||
["label"]
|
["label"]
|
||||||
),
|
),
|
||||||
a(
|
l(
|
||||||
s(h),
|
s(h),
|
||||||
{
|
{
|
||||||
label: t.job.location,
|
label: t.job.location,
|
||||||
@@ -87,7 +73,7 @@ import { P as J } from "./plus-pxSjkL_w.js";
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
prefix: r(() => [
|
prefix: r(() => [
|
||||||
a(s(M), {
|
l(s(w), {
|
||||||
class: "h-4 w-4 stroke-1.5",
|
class: "h-4 w-4 stroke-1.5",
|
||||||
}),
|
}),
|
||||||
]),
|
]),
|
||||||
@@ -98,11 +84,11 @@ import { P as J } from "./plus-pxSjkL_w.js";
|
|||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
e("div", null, [
|
e("div", null, [
|
||||||
_(l(o.__("posted on")) + " ", 1),
|
u(n(o.__("posted on")) + " ", 1),
|
||||||
e(
|
e(
|
||||||
"span",
|
"span",
|
||||||
V,
|
V,
|
||||||
l(s(i)(t.job.creation).format("DD MMM YYYY")),
|
n(s(i)(t.job.creation).format("DD MMM YYYY")),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
@@ -112,30 +98,30 @@ import { P as J } from "./plus-pxSjkL_w.js";
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
z = { class: "h-screen text-base" },
|
z = { class: "h-screen text-base" },
|
||||||
I = {
|
P = {
|
||||||
class: "sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5",
|
class: "sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5",
|
||||||
},
|
},
|
||||||
L = { class: "flex" },
|
F = { class: "flex" },
|
||||||
R = { key: 0 },
|
L = { key: 0 },
|
||||||
q = { class: "grid grid-cols-2 gap-5 p-5" },
|
R = { class: "grid grid-cols-2 gap-5 p-5" },
|
||||||
H = {
|
Q = {
|
||||||
__name: "Jobs",
|
__name: "Jobs",
|
||||||
setup(t) {
|
setup(t) {
|
||||||
const i = p("$user"),
|
const i = f("$user"),
|
||||||
o = y({
|
o = y({
|
||||||
url: "lms.lms.api.get_job_opportunities",
|
url: "lms.lms.api.get_job_opportunities",
|
||||||
cache: ["jobs"],
|
cache: ["jobs"],
|
||||||
auto: !0,
|
auto: !0,
|
||||||
});
|
});
|
||||||
return (d, A) => {
|
return (d, E) => {
|
||||||
var u;
|
var b;
|
||||||
const f = $("router-link");
|
const j = $("router-link");
|
||||||
return (
|
return (
|
||||||
n(),
|
a(),
|
||||||
c("div", z, [
|
c("div", z, [
|
||||||
e("header", I, [
|
e("header", P, [
|
||||||
a(
|
l(
|
||||||
s(k),
|
s(x),
|
||||||
{
|
{
|
||||||
class: "h-7",
|
class: "h-7",
|
||||||
items: [
|
items: [
|
||||||
@@ -149,63 +135,65 @@ import { P as J } from "./plus-pxSjkL_w.js";
|
|||||||
8,
|
8,
|
||||||
["items"]
|
["items"]
|
||||||
),
|
),
|
||||||
e("div", L, [
|
e("div", F, [
|
||||||
(u = s(i).data) != null && u.name
|
(b = s(i).data) != null && b.name
|
||||||
? (n(),
|
? (a(),
|
||||||
j(
|
p(
|
||||||
s(v),
|
s(k),
|
||||||
{ key: 0, variant: "solid" },
|
{ key: 0, variant: "solid" },
|
||||||
{
|
{
|
||||||
prefix: r(() => [
|
prefix: r(() => [
|
||||||
a(s(J), {
|
l(s(J), {
|
||||||
class: "h-4 w-4",
|
class: "h-4 w-4",
|
||||||
}),
|
}),
|
||||||
]),
|
]),
|
||||||
default: r(() => [
|
default: r(() => [
|
||||||
_(
|
u(
|
||||||
" " +
|
" " +
|
||||||
l(d.__("New Job")),
|
n(d.__("New Job")),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
]),
|
]),
|
||||||
_: 1,
|
_: 1,
|
||||||
}
|
}
|
||||||
))
|
))
|
||||||
: m("", !0),
|
: _("", !0),
|
||||||
]),
|
]),
|
||||||
]),
|
]),
|
||||||
s(o).data
|
s(o).data
|
||||||
? (n(),
|
? (a(),
|
||||||
c("div", R, [
|
c("div", L, [
|
||||||
e("div", q, [
|
e("div", R, [
|
||||||
s(o).data.length
|
s(o).data.length
|
||||||
? (n(!0),
|
? (a(!0),
|
||||||
c(
|
c(
|
||||||
g,
|
g,
|
||||||
{ key: 0 },
|
{ key: 0 },
|
||||||
x(
|
v(
|
||||||
s(o).data,
|
s(o).data,
|
||||||
(b) => (
|
(m) => (
|
||||||
n(),
|
a(),
|
||||||
c("div", null, [
|
c("div", null, [
|
||||||
a(
|
(a(),
|
||||||
f,
|
p(
|
||||||
|
j,
|
||||||
{
|
{
|
||||||
to: {
|
to: {
|
||||||
name: "JobDetail",
|
name: "JobDetail",
|
||||||
params: {
|
params: {
|
||||||
job: b.name,
|
job: m.name,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
key: m.name,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
default:
|
default:
|
||||||
r(
|
r(
|
||||||
() => [
|
() => [
|
||||||
a(
|
l(
|
||||||
Y,
|
Y,
|
||||||
{
|
{
|
||||||
job: b,
|
job: m,
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
8,
|
8,
|
||||||
@@ -219,20 +207,20 @@ import { P as J } from "./plus-pxSjkL_w.js";
|
|||||||
},
|
},
|
||||||
1032,
|
1032,
|
||||||
["to"]
|
["to"]
|
||||||
),
|
)),
|
||||||
])
|
])
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
256
|
256
|
||||||
))
|
))
|
||||||
: m("", !0),
|
: _("", !0),
|
||||||
]),
|
]),
|
||||||
]))
|
]))
|
||||||
: m("", !0),
|
: _("", !0),
|
||||||
])
|
])
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { H as default };
|
export { Q as default };
|
||||||
//# sourceMappingURL=Jobs-PZPyKz-0.js.map
|
//# sourceMappingURL=Jobs-SThJmQa_.js.map
|
||||||
1
lms/public/frontend/assets/Jobs-SThJmQa_.js.map
Normal file
1
lms/public/frontend/assets/Jobs-SThJmQa_.js.map
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"version":3,"file":"Jobs-SThJmQa_.js","sources":["../../../../frontend/src/components/JobCard.vue","../../../../frontend/src/pages/Jobs.vue"],"sourcesContent":["<template>\n\t<div class=\"flex shadow rounded-md p-4 h-full\">\n\t\t<img\n\t\t\t:src=\"job.company_logo\"\n\t\t\tclass=\"w-12 h-12 rounded-lg object-contain mr-4\"\n\t\t/>\n\t\t<div>\n\t\t\t<div class=\"text-xl font-semibold mb-2\">\n\t\t\t\t{{ job.job_title }}\n\t\t\t</div>\n\t\t\t<div>\n\t\t\t\t{{ __('posted by') }}\n\t\t\t\t<span class=\"font-medium\">\n\t\t\t\t\t{{ job.company_name }}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t\t<div class=\"flex items-center my-4\">\n\t\t\t\t<Badge :label=\"job.type\" theme=\"green\" size=\"lg\" class=\"mr-4\" />\n\t\t\t\t<Badge :label=\"job.location\" theme=\"gray\" size=\"lg\">\n\t\t\t\t\t<template #prefix>\n\t\t\t\t\t\t<MapPin class=\"h-4 w-4 stroke-1.5\" />\n\t\t\t\t\t</template>\n\t\t\t\t</Badge>\n\t\t\t</div>\n\t\t\t<div>\n\t\t\t\t{{ __('posted on') }}\n\t\t\t\t<span class=\"font-medium\">\n\t\t\t\t\t{{ dayjs(job.creation).format('DD MMM YYYY') }}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\t<!-- <div class=\"flex flex-col shadow rounded-md p-4 h-full\">\n\t\t<div class=\"flex justify-between\">\n\t\t\t<div>\n\t\t\t\t<div class=\"text-xl font-semibold mb-2\">\n\t\t\t\t\t{{ job.job_title }}\n\t\t\t\t</div>\n\t\t\t\t<div>\n\t\t\t\t\t{{ __(\"posted by\") }}\n\t\t\t\t\t<span class=\"font-medium\">\n\t\t\t\t\t\t{{ job.company_name }}\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<img\n\t\t\t\t:src=\"job.company_logo\"\n\t\t\t\tclass=\"w-12 h-12 rounded-lg object-contain\"\n\t\t\t/>\n\t\t</div>\n\t\t<div class=\"flex justify-between mt-8\">\n\t\t\t<div class=\"flex items-center\">\n\t\t\t\t<Badge :label=\"job.type\" theme=\"green\" size=\"lg\" class=\"mr-4\"/>\n\t\t\t\t<Badge :label=\"job.location\" theme=\"gray\" size=\"lg\">\n\t\t\t\t\t<template #prefix>\n\t\t\t\t\t\t<MapPin class=\"h-4 w-4 stroke-1.5\" />\n\t\t\t\t\t</template>\n\t\t\t\t</Badge>\n\t\t\t</div>\n\t\t\t<div>\n\t\t\t\t<span class=\"font-medium\">\n\t\t\t\t\t{{ dayjs(job.creation).format('DD MMM YYYY') }}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t</div>\n\t</div> -->\n</template>\n<script setup>\nimport { MapPin } from 'lucide-vue-next'\nimport { Badge } from 'frappe-ui'\nimport { inject } from 'vue'\n\nconst dayjs = inject('$dayjs')\nconst props = defineProps({\n\tjob: {\n\t\ttype: Object,\n\t\tdefault: null,\n\t},\n})\n</script>\n","<template>\n\t<div class=\"h-screen text-base\">\n\t\t<header\n\t\t\tclass=\"sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5\"\n\t\t>\n\t\t\t<Breadcrumbs\n\t\t\t\tclass=\"h-7\"\n\t\t\t\t:items=\"[{ label: __('Jobs'), route: { name: 'Jobs' } }]\"\n\t\t\t/>\n\t\t\t<div class=\"flex\">\n\t\t\t\t<Button v-if=\"user.data?.name\" variant=\"solid\">\n\t\t\t\t\t<template #prefix>\n\t\t\t\t\t\t<Plus class=\"h-4 w-4\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ __('New Job') }}\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t</header>\n\t\t<div v-if=\"jobs.data\">\n\t\t\t<div class=\"grid grid-cols-2 gap-5 p-5\">\n\t\t\t\t<div v-if=\"jobs.data.length\" v-for=\"job in jobs.data\">\n\t\t\t\t\t<router-link\n\t\t\t\t\t\t:to=\"{\n\t\t\t\t\t\t\tname: 'JobDetail',\n\t\t\t\t\t\t\tparams: { job: job.name },\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:key=\"job.name\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<JobCard :job=\"job\" />\n\t\t\t\t\t</router-link>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n<script setup>\nimport { Button, Breadcrumbs, createResource } from 'frappe-ui'\nimport { Plus } from 'lucide-vue-next'\nimport { inject } from 'vue'\nimport JobCard from '@/components/JobCard.vue'\n\nconst user = inject('$user')\n\nconst jobs = createResource({\n\turl: 'lms.lms.api.get_job_opportunities',\n\tcache: ['jobs'],\n\tauto: true,\n})\n</script>\n"],"names":["dayjs","inject","user","jobs","createResource"],"mappings":"+gBAwEA,MAAMA,EAAQC,EAAO,QAAQ,wyBC/B7B,MAAMC,EAAOD,EAAO,OAAO,EAErBE,EAAOC,EAAe,CAC3B,IAAK,oCACL,MAAO,CAAC,MAAM,EACd,KAAM,EACP,CAAC"}
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,40 +1,40 @@
|
|||||||
import {
|
import {
|
||||||
r as O,
|
r as B,
|
||||||
aw as X,
|
aD as J,
|
||||||
ax as Q,
|
aE as X,
|
||||||
j as x,
|
j as x,
|
||||||
w as U,
|
w as U,
|
||||||
n as Z,
|
n as Q,
|
||||||
x as n,
|
x as n,
|
||||||
A as F,
|
F as A,
|
||||||
B as c,
|
G as c,
|
||||||
G as w,
|
J as w,
|
||||||
H as a,
|
K as a,
|
||||||
ay as K,
|
aF as Z,
|
||||||
M as g,
|
O as g,
|
||||||
az as C,
|
aG as C,
|
||||||
aA as V,
|
aH as V,
|
||||||
C as v,
|
H as v,
|
||||||
F as T,
|
I,
|
||||||
y as p,
|
y as p,
|
||||||
I as N,
|
L as N,
|
||||||
aB as M,
|
aI as F,
|
||||||
aC as W,
|
aJ as W,
|
||||||
aD as Y,
|
aK as Y,
|
||||||
Q as R,
|
Q as R,
|
||||||
R as E,
|
R as E,
|
||||||
J as q,
|
M as q,
|
||||||
aE as ee,
|
aL as ee,
|
||||||
U as te,
|
U as te,
|
||||||
aF as G,
|
aM as G,
|
||||||
aG as ae,
|
aN as ae,
|
||||||
aH as H,
|
aO as H,
|
||||||
k as se,
|
k as se,
|
||||||
aI as le,
|
aP as le,
|
||||||
a7 as re,
|
a7 as re,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
import { a as oe, C as ue } from "./index-Vx7mSx23.js";
|
import { a as oe, C as ue } from "./index-6k1S_EjG.js";
|
||||||
import { P as ne } from "./plus-pxSjkL_w.js";
|
import { P as ne } from "./plus-0JOmes86.js";
|
||||||
/**
|
/**
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
*
|
*
|
||||||
@@ -72,23 +72,23 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
filterable: { type: Boolean, default: !0 },
|
filterable: { type: Boolean, default: !0 },
|
||||||
},
|
},
|
||||||
emits: ["update:modelValue", "update:query", "change"],
|
emits: ["update:modelValue", "update:query", "change"],
|
||||||
setup(j, { expose: A, emit: f }) {
|
setup(j, { expose: D, emit: f }) {
|
||||||
const r = j,
|
const r = j,
|
||||||
u = f,
|
u = f,
|
||||||
i = O(""),
|
i = B(""),
|
||||||
h = O(!1),
|
h = B(!1),
|
||||||
S = O(null),
|
S = B(null),
|
||||||
k = X(),
|
k = J(),
|
||||||
z = Q(),
|
z = X(),
|
||||||
P = x(() => "value" in k),
|
L = x(() => "value" in k),
|
||||||
_ = x({
|
_ = x({
|
||||||
get() {
|
get() {
|
||||||
return P.value ? k.value : r.modelValue;
|
return L.value ? k.value : r.modelValue;
|
||||||
},
|
},
|
||||||
set(t) {
|
set(t) {
|
||||||
(i.value = ""),
|
(i.value = ""),
|
||||||
t && (h.value = !1),
|
t && (h.value = !1),
|
||||||
u(P.value ? "change" : "update:modelValue", t);
|
u(L.value ? "change" : "update:modelValue", t);
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
function e() {
|
function e() {
|
||||||
@@ -136,12 +136,12 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
}),
|
}),
|
||||||
U(h, (t) => {
|
U(h, (t) => {
|
||||||
t &&
|
t &&
|
||||||
Z(() => {
|
Q(() => {
|
||||||
S.value.el.focus();
|
S.value.el.focus();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
const $ = x(() => (r.disabled ? "text-gray-600" : "text-gray-800")),
|
const $ = x(() => (r.disabled ? "text-gray-600" : "text-gray-800")),
|
||||||
J = x(() => {
|
K = x(() => {
|
||||||
let t = {
|
let t = {
|
||||||
sm: "text-base rounded h-7",
|
sm: "text-base rounded h-7",
|
||||||
md: "text-base rounded h-8",
|
md: "text-base rounded h-8",
|
||||||
@@ -169,10 +169,10 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
return [t, s, o, $.value, "transition-colors w-full"];
|
return [t, s, o, $.value, "transition-colors w-full"];
|
||||||
});
|
});
|
||||||
return (
|
return (
|
||||||
A({ query: i }),
|
D({ query: i }),
|
||||||
(t, s) => (
|
(t, s) => (
|
||||||
n(),
|
n(),
|
||||||
F(
|
A(
|
||||||
a(ae),
|
a(ae),
|
||||||
{
|
{
|
||||||
modelValue: _.value,
|
modelValue: _.value,
|
||||||
@@ -183,7 +183,7 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
{
|
{
|
||||||
default: c(({ open: l }) => [
|
default: c(({ open: l }) => [
|
||||||
w(
|
w(
|
||||||
a(K),
|
a(Z),
|
||||||
{
|
{
|
||||||
class: "w-full",
|
class: "w-full",
|
||||||
show: h.value,
|
show: h.value,
|
||||||
@@ -193,14 +193,14 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
target: c(
|
target: c(
|
||||||
({ open: o, togglePopover: B }) => [
|
({ open: o, togglePopover: P }) => [
|
||||||
g(
|
g(
|
||||||
t.$slots,
|
t.$slots,
|
||||||
"target",
|
"target",
|
||||||
C(
|
C(
|
||||||
V({
|
V({
|
||||||
open: o,
|
open: o,
|
||||||
togglePopover: B,
|
togglePopover: P,
|
||||||
})
|
})
|
||||||
),
|
),
|
||||||
() => [
|
() => [
|
||||||
@@ -208,13 +208,13 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
v(
|
v(
|
||||||
"button",
|
"button",
|
||||||
{
|
{
|
||||||
class: T([
|
class: I([
|
||||||
"flex w-full items-center justify-between focus:outline-none",
|
"flex w-full items-center justify-between focus:outline-none",
|
||||||
J.value,
|
K.value,
|
||||||
]),
|
]),
|
||||||
onClick:
|
onClick:
|
||||||
() =>
|
() =>
|
||||||
B(),
|
P(),
|
||||||
},
|
},
|
||||||
[
|
[
|
||||||
v(
|
v(
|
||||||
@@ -262,9 +262,9 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
]
|
]
|
||||||
),
|
),
|
||||||
body: c(({ isOpen: o }) => {
|
body: c(({ isOpen: o }) => {
|
||||||
var B;
|
var P;
|
||||||
return [
|
return [
|
||||||
M(
|
F(
|
||||||
v(
|
v(
|
||||||
"div",
|
"div",
|
||||||
null,
|
null,
|
||||||
@@ -346,7 +346,7 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
(
|
(
|
||||||
b
|
b
|
||||||
) =>
|
) =>
|
||||||
M(
|
F(
|
||||||
(n(),
|
(n(),
|
||||||
p(
|
p(
|
||||||
"div",
|
"div",
|
||||||
@@ -379,35 +379,35 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
E(
|
E(
|
||||||
b.items,
|
b.items,
|
||||||
(
|
(
|
||||||
L
|
O
|
||||||
) => (
|
) => (
|
||||||
n(),
|
n(),
|
||||||
F(
|
A(
|
||||||
a(
|
a(
|
||||||
ee
|
ee
|
||||||
),
|
),
|
||||||
{
|
{
|
||||||
as: "template",
|
as: "template",
|
||||||
key: L.value,
|
key: O.value,
|
||||||
value: L,
|
value: O,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
default:
|
default:
|
||||||
c(
|
c(
|
||||||
({
|
({
|
||||||
active: D,
|
active: T,
|
||||||
selected:
|
selected:
|
||||||
I,
|
M,
|
||||||
}) => [
|
}) => [
|
||||||
v(
|
v(
|
||||||
"li",
|
"li",
|
||||||
{
|
{
|
||||||
class: T(
|
class: I(
|
||||||
[
|
[
|
||||||
"flex items-center rounded px-2.5 py-1.5 text-base",
|
"flex items-center rounded px-2.5 py-1.5 text-base",
|
||||||
{
|
{
|
||||||
"bg-gray-100":
|
"bg-gray-100":
|
||||||
D,
|
T,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
),
|
),
|
||||||
@@ -419,10 +419,10 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
C(
|
C(
|
||||||
V(
|
V(
|
||||||
{
|
{
|
||||||
active: D,
|
active: T,
|
||||||
selected:
|
selected:
|
||||||
I,
|
M,
|
||||||
option: L,
|
option: O,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -433,17 +433,17 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
C(
|
C(
|
||||||
V(
|
V(
|
||||||
{
|
{
|
||||||
active: D,
|
active: T,
|
||||||
selected:
|
selected:
|
||||||
I,
|
M,
|
||||||
option: L,
|
option: O,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
() => [
|
() => [
|
||||||
te(
|
te(
|
||||||
N(
|
N(
|
||||||
L.label
|
O.label
|
||||||
),
|
),
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
@@ -512,11 +512,11 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
V(
|
V(
|
||||||
{
|
{
|
||||||
value:
|
value:
|
||||||
(B =
|
(P =
|
||||||
S.value) ==
|
S.value) ==
|
||||||
null
|
null
|
||||||
? void 0
|
? void 0
|
||||||
: B
|
: P
|
||||||
.el
|
.el
|
||||||
._value,
|
._value,
|
||||||
close: e,
|
close: e,
|
||||||
@@ -559,10 +559,10 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
modelValue: { type: String, default: "" },
|
modelValue: { type: String, default: "" },
|
||||||
},
|
},
|
||||||
emits: ["update:modelValue", "change"],
|
emits: ["update:modelValue", "change"],
|
||||||
setup(j, { emit: A }) {
|
setup(j, { emit: D }) {
|
||||||
const f = j,
|
const f = j,
|
||||||
r = A,
|
r = D,
|
||||||
u = X(),
|
u = J(),
|
||||||
i = x(() => "value" in u),
|
i = x(() => "value" in u),
|
||||||
h = x({
|
h = x({
|
||||||
get: () => (i.value ? u.value : f.modelValue),
|
get: () => (i.value ? u.value : f.modelValue),
|
||||||
@@ -575,21 +575,21 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
)
|
)
|
||||||
),
|
),
|
||||||
}),
|
}),
|
||||||
S = O(null),
|
S = B(null),
|
||||||
k = O("");
|
k = B("");
|
||||||
H(
|
H(
|
||||||
() => {
|
() => {
|
||||||
var e;
|
var e;
|
||||||
return (e = S.value) == null ? void 0 : e.query;
|
return (e = S.value) == null ? void 0 : e.query;
|
||||||
},
|
},
|
||||||
(e) => {
|
(e) => {
|
||||||
(e = e || ""), k.value !== e && ((k.value = e), P(e));
|
(e = e || ""), k.value !== e && ((k.value = e), L(e));
|
||||||
},
|
},
|
||||||
{ debounce: 300, immediate: !0 }
|
{ debounce: 300, immediate: !0 }
|
||||||
),
|
),
|
||||||
H(
|
H(
|
||||||
() => f.doctype,
|
() => f.doctype,
|
||||||
() => P(""),
|
() => L(""),
|
||||||
{ debounce: 300, immediate: !0 }
|
{ debounce: 300, immediate: !0 }
|
||||||
);
|
);
|
||||||
const z = se({
|
const z = se({
|
||||||
@@ -604,7 +604,7 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
transform: (e) =>
|
transform: (e) =>
|
||||||
e.map((m) => ({ label: m.value, value: m.value })),
|
e.map((m) => ({ label: m.value, value: m.value })),
|
||||||
});
|
});
|
||||||
function P(e) {
|
function L(e) {
|
||||||
z.update({
|
z.update({
|
||||||
params: { txt: e, doctype: f.doctype, filters: f.filters },
|
params: { txt: e, doctype: f.doctype, filters: f.filters },
|
||||||
}),
|
}),
|
||||||
@@ -621,7 +621,7 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
? (n(),
|
? (n(),
|
||||||
p(
|
p(
|
||||||
"label",
|
"label",
|
||||||
{ key: 0, class: T(["block", _.value]) },
|
{ key: 0, class: I(["block", _.value]) },
|
||||||
N(a(u).label),
|
N(a(u).label),
|
||||||
3
|
3
|
||||||
))
|
))
|
||||||
@@ -731,5 +731,5 @@ import { P as ne } from "./plus-pxSjkL_w.js";
|
|||||||
);
|
);
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { Ve as _ };
|
export { ie as X, Ve as _ };
|
||||||
//# sourceMappingURL=Link-Z_9V94MR.js.map
|
//# sourceMappingURL=Link-rwTAUhIL.js.map
|
||||||
File diff suppressed because one or more lines are too long
8
lms/public/frontend/assets/Profile-CyaIIe8W.js
Normal file
8
lms/public/frontend/assets/Profile-CyaIIe8W.js
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
import { v as r } from "./frappe-ui-LT4YqXtx.js";
|
||||||
|
const e = {};
|
||||||
|
function c(n, t) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
const _ = r(e, [["render", c]]);
|
||||||
|
export { _ as default };
|
||||||
|
//# sourceMappingURL=Profile-CyaIIe8W.js.map
|
||||||
1
lms/public/frontend/assets/Profile-CyaIIe8W.js.map
Normal file
1
lms/public/frontend/assets/Profile-CyaIIe8W.js.map
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"version":3,"file":"Profile-CyaIIe8W.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||||
11156
lms/public/frontend/assets/Statistics-4cZ7lNfr.js
Normal file
11156
lms/public/frontend/assets/Statistics-4cZ7lNfr.js
Normal file
File diff suppressed because it is too large
Load Diff
1
lms/public/frontend/assets/Statistics-4cZ7lNfr.js.map
Normal file
1
lms/public/frontend/assets/Statistics-4cZ7lNfr.js.map
Normal file
File diff suppressed because one or more lines are too long
@@ -1,274 +0,0 @@
|
|||||||
import {
|
|
||||||
d as x,
|
|
||||||
j as v,
|
|
||||||
k as c,
|
|
||||||
y as b,
|
|
||||||
C as e,
|
|
||||||
G as o,
|
|
||||||
H as t,
|
|
||||||
I as s,
|
|
||||||
x as k,
|
|
||||||
a6 as f,
|
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
|
||||||
import { a as r, B as C } from "./index-Vx7mSx23.js";
|
|
||||||
import { B as L } from "./book-open-check-j9IEQjWh.js";
|
|
||||||
/**
|
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
|
||||||
*
|
|
||||||
* This source code is licensed under the ISC license.
|
|
||||||
* See the LICENSE file in the root directory of this source tree.
|
|
||||||
*/ const S = r("FileCheck2Icon", [
|
|
||||||
[
|
|
||||||
"path",
|
|
||||||
{
|
|
||||||
d: "M4 22h14a2 2 0 0 0 2-2V7.5L14.5 2H6a2 2 0 0 0-2 2v4",
|
|
||||||
key: "702lig",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
["polyline", { points: "14 2 14 8 20 8", key: "1ew0cm" }],
|
|
||||||
["path", { d: "m3 15 2 2 4-4", key: "1lhrkk" }],
|
|
||||||
]);
|
|
||||||
/**
|
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
|
||||||
*
|
|
||||||
* This source code is licensed under the ISC license.
|
|
||||||
* See the LICENSE file in the root directory of this source tree.
|
|
||||||
*/ const w = r("FileCheckIcon", [
|
|
||||||
[
|
|
||||||
"path",
|
|
||||||
{
|
|
||||||
d: "M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z",
|
|
||||||
key: "1nnpy2",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
["polyline", { points: "14 2 14 8 20 8", key: "1ew0cm" }],
|
|
||||||
["path", { d: "m9 15 2 2 4-4", key: "1grp1n" }],
|
|
||||||
]);
|
|
||||||
/**
|
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
|
||||||
*
|
|
||||||
* This source code is licensed under the ISC license.
|
|
||||||
* See the LICENSE file in the root directory of this source tree.
|
|
||||||
*/ const B = r("LogInIcon", [
|
|
||||||
[
|
|
||||||
"path",
|
|
||||||
{ d: "M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4", key: "u53s6r" },
|
|
||||||
],
|
|
||||||
["polyline", { points: "10 17 15 12 10 7", key: "1ail0h" }],
|
|
||||||
["line", { x1: "15", x2: "3", y1: "12", y2: "12", key: "v6grx8" }],
|
|
||||||
]),
|
|
||||||
I = { class: "h-screen text-base" },
|
|
||||||
M = {
|
|
||||||
class: "sticky top-0 z-10 flex items-center justify-between border-b bg-white px-3 py-2.5 sm:px-5",
|
|
||||||
},
|
|
||||||
j = { class: "p-5" },
|
|
||||||
E = { class: "grid grid-cols-5 gap-5" },
|
|
||||||
F = { class: "flex items-center border py-2 px-3 rounded-md" },
|
|
||||||
V = { class: "p-2 rounded-md bg-gray-100 mr-3" },
|
|
||||||
H = { class: "text-xl font-semibold mb-1" },
|
|
||||||
z = { class: "text-gray-700" },
|
|
||||||
N = { class: "flex items-center border py-2 px-3 rounded-md" },
|
|
||||||
O = { class: "p-2 rounded-md bg-gray-100 mr-3" },
|
|
||||||
P = { class: "text-xl font-semibold mb-1" },
|
|
||||||
U = { class: "text-gray-700" },
|
|
||||||
D = { class: "flex items-center border py-2 px-3 rounded-md" },
|
|
||||||
G = { class: "p-2 rounded-md bg-gray-100 mr-3" },
|
|
||||||
R = { class: "text-xl font-semibold mb-1" },
|
|
||||||
T = { class: "text-gray-700" },
|
|
||||||
$ = { class: "flex items-center border py-2 px-3 rounded-md" },
|
|
||||||
q = { class: "p-2 rounded-md bg-gray-100 mr-3" },
|
|
||||||
A = { class: "text-xl font-semibold mb-1" },
|
|
||||||
J = { class: "text-gray-700" },
|
|
||||||
K = { class: "flex items-center border py-2 px-3 rounded-md" },
|
|
||||||
Q = { class: "p-2 rounded-md bg-gray-100 mr-3" },
|
|
||||||
W = { class: "text-xl font-semibold mb-1" },
|
|
||||||
X = { class: "text-gray-700" },
|
|
||||||
oe = {
|
|
||||||
__name: "Statistics",
|
|
||||||
setup(Y) {
|
|
||||||
x("dayjs");
|
|
||||||
const _ = v(() => [
|
|
||||||
{ label: "Statistics", route: { name: "Statistics" } },
|
|
||||||
]),
|
|
||||||
u = c({
|
|
||||||
url: "frappe.client.get_count",
|
|
||||||
params: { doctype: "LMS Enrollment" },
|
|
||||||
auto: !0,
|
|
||||||
cache: ["enrollment_count"],
|
|
||||||
}),
|
|
||||||
m = c({
|
|
||||||
url: "frappe.client.get_count",
|
|
||||||
params: {
|
|
||||||
doctype: "LMS Course",
|
|
||||||
filters: { published: 1, upcoming: 0 },
|
|
||||||
},
|
|
||||||
auto: !0,
|
|
||||||
cache: ["course_count"],
|
|
||||||
}),
|
|
||||||
h = c({
|
|
||||||
url: "frappe.client.get_count",
|
|
||||||
params: { doctype: "User", filters: { enabled: 1 } },
|
|
||||||
auto: !0,
|
|
||||||
cache: ["user_count"],
|
|
||||||
}),
|
|
||||||
y = c({
|
|
||||||
url: "frappe.client.get_count",
|
|
||||||
params: {
|
|
||||||
doctype: "LMS Enrollment",
|
|
||||||
filters: { progress: ["like", "%100%"] },
|
|
||||||
},
|
|
||||||
auto: !0,
|
|
||||||
cache: ["courses_completed"],
|
|
||||||
}),
|
|
||||||
g = c({
|
|
||||||
url: "frappe.client.get_count",
|
|
||||||
params: { doctype: "LMS Course Progress" },
|
|
||||||
auto: !0,
|
|
||||||
cache: ["lessons_completed"],
|
|
||||||
});
|
|
||||||
return (a, Z) => {
|
|
||||||
var d, n, l, i, p;
|
|
||||||
return (
|
|
||||||
k(),
|
|
||||||
b("div", I, [
|
|
||||||
e("header", M, [
|
|
||||||
o(t(f), { class: "h-7", items: _.value }, null, 8, [
|
|
||||||
"items",
|
|
||||||
]),
|
|
||||||
]),
|
|
||||||
e("div", j, [
|
|
||||||
e("div", E, [
|
|
||||||
e("div", F, [
|
|
||||||
e("div", V, [
|
|
||||||
o(t(C), {
|
|
||||||
class: "w-18 h-18 stroke-1.5 text-gray-700",
|
|
||||||
}),
|
|
||||||
]),
|
|
||||||
e("div", null, [
|
|
||||||
e(
|
|
||||||
"div",
|
|
||||||
H,
|
|
||||||
s(
|
|
||||||
(d = t(m).data) == null
|
|
||||||
? void 0
|
|
||||||
: d.toLocaleString()
|
|
||||||
),
|
|
||||||
1
|
|
||||||
),
|
|
||||||
e(
|
|
||||||
"div",
|
|
||||||
z,
|
|
||||||
s(a.__("Published Courses")),
|
|
||||||
1
|
|
||||||
),
|
|
||||||
]),
|
|
||||||
]),
|
|
||||||
e("div", N, [
|
|
||||||
e("div", O, [
|
|
||||||
o(t(B), {
|
|
||||||
class: "w-18 h-18 stroke-1.5 text-gray-700",
|
|
||||||
}),
|
|
||||||
]),
|
|
||||||
e("div", null, [
|
|
||||||
e(
|
|
||||||
"div",
|
|
||||||
P,
|
|
||||||
s(
|
|
||||||
(n = t(h).data) == null
|
|
||||||
? void 0
|
|
||||||
: n.toLocaleString()
|
|
||||||
),
|
|
||||||
1
|
|
||||||
),
|
|
||||||
e(
|
|
||||||
"div",
|
|
||||||
U,
|
|
||||||
s(a.__("Total Signups")),
|
|
||||||
1
|
|
||||||
),
|
|
||||||
]),
|
|
||||||
]),
|
|
||||||
e("div", D, [
|
|
||||||
e("div", G, [
|
|
||||||
o(t(L), {
|
|
||||||
class: "w-18 h-18 stroke-1.5 text-gray-700",
|
|
||||||
}),
|
|
||||||
]),
|
|
||||||
e("div", null, [
|
|
||||||
e(
|
|
||||||
"div",
|
|
||||||
R,
|
|
||||||
s(
|
|
||||||
(l = t(u).data) == null
|
|
||||||
? void 0
|
|
||||||
: l.toLocaleString()
|
|
||||||
),
|
|
||||||
1
|
|
||||||
),
|
|
||||||
e(
|
|
||||||
"div",
|
|
||||||
T,
|
|
||||||
s(a.__("Enrolled Users")),
|
|
||||||
1
|
|
||||||
),
|
|
||||||
]),
|
|
||||||
]),
|
|
||||||
e("div", $, [
|
|
||||||
e("div", q, [
|
|
||||||
o(t(w), {
|
|
||||||
class: "w-18 h-18 stroke-1.5 text-gray-700",
|
|
||||||
}),
|
|
||||||
]),
|
|
||||||
e("div", null, [
|
|
||||||
e(
|
|
||||||
"div",
|
|
||||||
A,
|
|
||||||
s(
|
|
||||||
(i = t(y).data) == null
|
|
||||||
? void 0
|
|
||||||
: i.toLocaleString()
|
|
||||||
),
|
|
||||||
1
|
|
||||||
),
|
|
||||||
e(
|
|
||||||
"div",
|
|
||||||
J,
|
|
||||||
s(a.__("Courses Completed")),
|
|
||||||
1
|
|
||||||
),
|
|
||||||
]),
|
|
||||||
]),
|
|
||||||
e("div", K, [
|
|
||||||
e("div", Q, [
|
|
||||||
o(t(S), {
|
|
||||||
class: "w-18 h-18 stroke-1.5 text-gray-700",
|
|
||||||
}),
|
|
||||||
]),
|
|
||||||
e("div", null, [
|
|
||||||
e(
|
|
||||||
"div",
|
|
||||||
W,
|
|
||||||
s(
|
|
||||||
(p = t(g).data) == null
|
|
||||||
? void 0
|
|
||||||
: p.toLocaleString()
|
|
||||||
),
|
|
||||||
1
|
|
||||||
),
|
|
||||||
e(
|
|
||||||
"div",
|
|
||||||
X,
|
|
||||||
s(a.__("Lessons Completed")),
|
|
||||||
1
|
|
||||||
),
|
|
||||||
]),
|
|
||||||
]),
|
|
||||||
]),
|
|
||||||
]),
|
|
||||||
])
|
|
||||||
);
|
|
||||||
};
|
|
||||||
},
|
|
||||||
};
|
|
||||||
export { oe as default };
|
|
||||||
//# sourceMappingURL=Statistics-BSeqj912.js.map
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,11 +1,11 @@
|
|||||||
import {
|
import {
|
||||||
x as r,
|
x as r,
|
||||||
A as s,
|
F as s,
|
||||||
av as t,
|
au as t,
|
||||||
H as l,
|
K as u,
|
||||||
as as u,
|
ar as l,
|
||||||
J as n,
|
M as n,
|
||||||
} from "./frappe-ui-20hnMCM8.js";
|
} from "./frappe-ui-LT4YqXtx.js";
|
||||||
const i = {
|
const i = {
|
||||||
__name: "UserAvatar",
|
__name: "UserAvatar",
|
||||||
props: { user: { type: Object, default: null }, size: { type: String } },
|
props: { user: { type: Object, default: null }, size: { type: String } },
|
||||||
@@ -14,7 +14,7 @@ const i = {
|
|||||||
e.user
|
e.user
|
||||||
? (r(),
|
? (r(),
|
||||||
s(
|
s(
|
||||||
l(u),
|
u(l),
|
||||||
t(
|
t(
|
||||||
{
|
{
|
||||||
key: 0,
|
key: 0,
|
||||||
@@ -33,4 +33,4 @@ const i = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
export { i as _ };
|
export { i as _ };
|
||||||
//# sourceMappingURL=UserAvatar-yrWInUTi.js.map
|
//# sourceMappingURL=UserAvatar-A3tEMZXD.js.map
|
||||||
1
lms/public/frontend/assets/UserAvatar-A3tEMZXD.js.map
Normal file
1
lms/public/frontend/assets/UserAvatar-A3tEMZXD.js.map
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"version":3,"file":"UserAvatar-A3tEMZXD.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||||
@@ -1 +0,0 @@
|
|||||||
{"version":3,"file":"UserAvatar-yrWInUTi.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { a as c } from "./index-Vx7mSx23.js";
|
import { a as c } from "./index-6k1S_EjG.js";
|
||||||
/**
|
/**
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
*
|
*
|
||||||
@@ -19,4 +19,4 @@ import { a as c } from "./index-Vx7mSx23.js";
|
|||||||
],
|
],
|
||||||
]);
|
]);
|
||||||
export { o as B };
|
export { o as B };
|
||||||
//# sourceMappingURL=book-open-check-j9IEQjWh.js.map
|
//# sourceMappingURL=book-open-check-_W-8v7wc.js.map
|
||||||
@@ -1 +1 @@
|
|||||||
{"version":3,"file":"book-open-check-j9IEQjWh.js","sources":["../../../../node_modules/lucide-vue-next/dist/esm/icons/book-open-check.js"],"sourcesContent":["/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst BookOpenCheck = createLucideIcon(\"BookOpenCheckIcon\", [\n [\"path\", { d: \"M8 3H2v15h7c1.7 0 3 1.3 3 3V7c0-2.2-1.8-4-4-4Z\", key: \"1i8u0n\" }],\n [\"path\", { d: \"m16 12 2 2 4-4\", key: \"mdajum\" }],\n [\"path\", { d: \"M22 6V3h-6c-2.2 0-4 1.8-4 4v14c0-1.7 1.3-3 3-3h7v-2.3\", key: \"jb5l51\" }]\n]);\n\nexport { BookOpenCheck as default };\n//# sourceMappingURL=book-open-check.js.map\n"],"names":["BookOpenCheck","createLucideIcon"],"mappings":"wCAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAgBC,EAAiB,oBAAqB,CAC1D,CAAC,OAAQ,CAAE,EAAG,iDAAkD,IAAK,QAAQ,CAAE,EAC/E,CAAC,OAAQ,CAAE,EAAG,iBAAkB,IAAK,QAAQ,CAAE,EAC/C,CAAC,OAAQ,CAAE,EAAG,wDAAyD,IAAK,QAAQ,CAAE,CACxF,CAAC","x_google_ignoreList":[0]}
|
{"version":3,"file":"book-open-check-_W-8v7wc.js","sources":["../../../../node_modules/lucide-vue-next/dist/esm/icons/book-open-check.js"],"sourcesContent":["/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst BookOpenCheck = createLucideIcon(\"BookOpenCheckIcon\", [\n [\"path\", { d: \"M8 3H2v15h7c1.7 0 3 1.3 3 3V7c0-2.2-1.8-4-4-4Z\", key: \"1i8u0n\" }],\n [\"path\", { d: \"m16 12 2 2 4-4\", key: \"mdajum\" }],\n [\"path\", { d: \"M22 6V3h-6c-2.2 0-4 1.8-4 4v14c0-1.7 1.3-3 3-3h7v-2.3\", key: \"jb5l51\" }]\n]);\n\nexport { BookOpenCheck as default };\n//# sourceMappingURL=book-open-check.js.map\n"],"names":["BookOpenCheck","createLucideIcon"],"mappings":"wCAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAgBC,EAAiB,oBAAqB,CAC1D,CAAC,OAAQ,CAAE,EAAG,iDAAkD,IAAK,QAAQ,CAAE,EAC/E,CAAC,OAAQ,CAAE,EAAG,iBAAkB,IAAK,QAAQ,CAAE,EAC/C,CAAC,OAAQ,CAAE,EAAG,wDAAyD,IAAK,QAAQ,CAAE,CACxF,CAAC","x_google_ignoreList":[0]}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { a as e } from "./index-Vx7mSx23.js";
|
import { a as e } from "./index-6k1S_EjG.js";
|
||||||
/**
|
/**
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
*
|
*
|
||||||
@@ -31,4 +31,4 @@ import { a as e } from "./index-Vx7mSx23.js";
|
|||||||
["polyline", { points: "12 6 12 12 16 14", key: "68esgv" }],
|
["polyline", { points: "12 6 12 12 16 14", key: "68esgv" }],
|
||||||
]);
|
]);
|
||||||
export { c as C, a };
|
export { c as C, a };
|
||||||
//# sourceMappingURL=clock-blcPmEdF.js.map
|
//# sourceMappingURL=clock-q4vfplv-.js.map
|
||||||
@@ -1 +1 @@
|
|||||||
{"version":3,"file":"clock-blcPmEdF.js","sources":["../../../../node_modules/lucide-vue-next/dist/esm/icons/calendar.js","../../../../node_modules/lucide-vue-next/dist/esm/icons/clock.js"],"sourcesContent":["/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Calendar = createLucideIcon(\"CalendarIcon\", [\n [\"rect\", { width: \"18\", height: \"18\", x: \"3\", y: \"4\", rx: \"2\", ry: \"2\", key: \"eu3xkr\" }],\n [\"line\", { x1: \"16\", x2: \"16\", y1: \"2\", y2: \"6\", key: \"m3sa8f\" }],\n [\"line\", { x1: \"8\", x2: \"8\", y1: \"2\", y2: \"6\", key: \"18kwsl\" }],\n [\"line\", { x1: \"3\", x2: \"21\", y1: \"10\", y2: \"10\", key: \"xt86sb\" }]\n]);\n\nexport { Calendar as default };\n//# sourceMappingURL=calendar.js.map\n","/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Clock = createLucideIcon(\"ClockIcon\", [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"polyline\", { points: \"12 6 12 12 16 14\", key: \"68esgv\" }]\n]);\n\nexport { Clock as default };\n//# sourceMappingURL=clock.js.map\n"],"names":["Calendar","createLucideIcon","Clock"],"mappings":"wCAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAWC,EAAiB,eAAgB,CAChD,CAAC,OAAQ,CAAE,MAAO,KAAM,OAAQ,KAAM,EAAG,IAAK,EAAG,IAAK,GAAI,IAAK,GAAI,IAAK,IAAK,SAAU,EACvF,CAAC,OAAQ,CAAE,GAAI,KAAM,GAAI,KAAM,GAAI,IAAK,GAAI,IAAK,IAAK,QAAQ,CAAE,EAChE,CAAC,OAAQ,CAAE,GAAI,IAAK,GAAI,IAAK,GAAI,IAAK,GAAI,IAAK,IAAK,QAAQ,CAAE,EAC9D,CAAC,OAAQ,CAAE,GAAI,IAAK,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,IAAK,QAAQ,CAAE,CACnE,CAAC,ECdD;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACC,EAAQD,EAAiB,YAAa,CAC1C,CAAC,SAAU,CAAE,GAAI,KAAM,GAAI,KAAM,EAAG,KAAM,IAAK,SAAU,EACzD,CAAC,WAAY,CAAE,OAAQ,mBAAoB,IAAK,QAAQ,CAAE,CAC5D,CAAC","x_google_ignoreList":[0,1]}
|
{"version":3,"file":"clock-q4vfplv-.js","sources":["../../../../node_modules/lucide-vue-next/dist/esm/icons/calendar.js","../../../../node_modules/lucide-vue-next/dist/esm/icons/clock.js"],"sourcesContent":["/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Calendar = createLucideIcon(\"CalendarIcon\", [\n [\"rect\", { width: \"18\", height: \"18\", x: \"3\", y: \"4\", rx: \"2\", ry: \"2\", key: \"eu3xkr\" }],\n [\"line\", { x1: \"16\", x2: \"16\", y1: \"2\", y2: \"6\", key: \"m3sa8f\" }],\n [\"line\", { x1: \"8\", x2: \"8\", y1: \"2\", y2: \"6\", key: \"18kwsl\" }],\n [\"line\", { x1: \"3\", x2: \"21\", y1: \"10\", y2: \"10\", key: \"xt86sb\" }]\n]);\n\nexport { Calendar as default };\n//# sourceMappingURL=calendar.js.map\n","/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Clock = createLucideIcon(\"ClockIcon\", [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"polyline\", { points: \"12 6 12 12 16 14\", key: \"68esgv\" }]\n]);\n\nexport { Clock as default };\n//# sourceMappingURL=clock.js.map\n"],"names":["Calendar","createLucideIcon","Clock"],"mappings":"wCAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAWC,EAAiB,eAAgB,CAChD,CAAC,OAAQ,CAAE,MAAO,KAAM,OAAQ,KAAM,EAAG,IAAK,EAAG,IAAK,GAAI,IAAK,GAAI,IAAK,IAAK,SAAU,EACvF,CAAC,OAAQ,CAAE,GAAI,KAAM,GAAI,KAAM,GAAI,IAAK,GAAI,IAAK,IAAK,QAAQ,CAAE,EAChE,CAAC,OAAQ,CAAE,GAAI,IAAK,GAAI,IAAK,GAAI,IAAK,GAAI,IAAK,IAAK,QAAQ,CAAE,EAC9D,CAAC,OAAQ,CAAE,GAAI,IAAK,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,IAAK,QAAQ,CAAE,CACnE,CAAC,ECdD;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACC,EAAQD,EAAiB,YAAa,CAC1C,CAAC,SAAU,CAAE,GAAI,KAAM,GAAI,KAAM,EAAG,KAAM,IAAK,SAAU,EACzD,CAAC,WAAY,CAAE,OAAQ,mBAAoB,IAAK,QAAQ,CAAE,CAC5D,CAAC","x_google_ignoreList":[0,1]}
|
||||||
21
lms/public/frontend/assets/file-text-w2g11TfY.js
Normal file
21
lms/public/frontend/assets/file-text-w2g11TfY.js
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
import { a as e } from "./index-6k1S_EjG.js";
|
||||||
|
/**
|
||||||
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
|
*
|
||||||
|
* This source code is licensed under the ISC license.
|
||||||
|
* See the LICENSE file in the root directory of this source tree.
|
||||||
|
*/ const n = e("FileTextIcon", [
|
||||||
|
[
|
||||||
|
"path",
|
||||||
|
{
|
||||||
|
d: "M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z",
|
||||||
|
key: "1nnpy2",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
["polyline", { points: "14 2 14 8 20 8", key: "1ew0cm" }],
|
||||||
|
["line", { x1: "16", x2: "8", y1: "13", y2: "13", key: "14keom" }],
|
||||||
|
["line", { x1: "16", x2: "8", y1: "17", y2: "17", key: "17nazh" }],
|
||||||
|
["line", { x1: "10", x2: "8", y1: "9", y2: "9", key: "1a5vjj" }],
|
||||||
|
]);
|
||||||
|
export { n as F };
|
||||||
|
//# sourceMappingURL=file-text-w2g11TfY.js.map
|
||||||
1
lms/public/frontend/assets/file-text-w2g11TfY.js.map
Normal file
1
lms/public/frontend/assets/file-text-w2g11TfY.js.map
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"version":3,"file":"file-text-w2g11TfY.js","sources":["../../../../node_modules/lucide-vue-next/dist/esm/icons/file-text.js"],"sourcesContent":["/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst FileText = createLucideIcon(\"FileTextIcon\", [\n [\n \"path\",\n { d: \"M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z\", key: \"1nnpy2\" }\n ],\n [\"polyline\", { points: \"14 2 14 8 20 8\", key: \"1ew0cm\" }],\n [\"line\", { x1: \"16\", x2: \"8\", y1: \"13\", y2: \"13\", key: \"14keom\" }],\n [\"line\", { x1: \"16\", x2: \"8\", y1: \"17\", y2: \"17\", key: \"17nazh\" }],\n [\"line\", { x1: \"10\", x2: \"8\", y1: \"9\", y2: \"9\", key: \"1a5vjj\" }]\n]);\n\nexport { FileText as default };\n//# sourceMappingURL=file-text.js.map\n"],"names":["FileText","createLucideIcon"],"mappings":"wCAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAWC,EAAiB,eAAgB,CAChD,CACE,OACA,CAAE,EAAG,wEAAyE,IAAK,QAAU,CAC9F,EACD,CAAC,WAAY,CAAE,OAAQ,iBAAkB,IAAK,QAAQ,CAAE,EACxD,CAAC,OAAQ,CAAE,GAAI,KAAM,GAAI,IAAK,GAAI,KAAM,GAAI,KAAM,IAAK,QAAQ,CAAE,EACjE,CAAC,OAAQ,CAAE,GAAI,KAAM,GAAI,IAAK,GAAI,KAAM,GAAI,KAAM,IAAK,QAAQ,CAAE,EACjE,CAAC,OAAQ,CAAE,GAAI,KAAM,GAAI,IAAK,GAAI,IAAK,GAAI,IAAK,IAAK,QAAQ,CAAE,CACjE,CAAC","x_google_ignoreList":[0]}
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
1
lms/public/frontend/assets/frappe-ui-LT4YqXtx.js.map
Normal file
1
lms/public/frontend/assets/frappe-ui-LT4YqXtx.js.map
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
1
lms/public/frontend/assets/index-6k1S_EjG.js.map
Normal file
1
lms/public/frontend/assets/index-6k1S_EjG.js.map
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
15
lms/public/frontend/assets/map-pin-yIki2ElO.js
Normal file
15
lms/public/frontend/assets/map-pin-yIki2ElO.js
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
import { a as c } from "./index-6k1S_EjG.js";
|
||||||
|
/**
|
||||||
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
|
*
|
||||||
|
* This source code is licensed under the ISC license.
|
||||||
|
* See the LICENSE file in the root directory of this source tree.
|
||||||
|
*/ const e = c("MapPinIcon", [
|
||||||
|
[
|
||||||
|
"path",
|
||||||
|
{ d: "M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z", key: "2oe9fu" },
|
||||||
|
],
|
||||||
|
["circle", { cx: "12", cy: "10", r: "3", key: "ilqhr7" }],
|
||||||
|
]);
|
||||||
|
export { e as M };
|
||||||
|
//# sourceMappingURL=map-pin-yIki2ElO.js.map
|
||||||
1
lms/public/frontend/assets/map-pin-yIki2ElO.js.map
Normal file
1
lms/public/frontend/assets/map-pin-yIki2ElO.js.map
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"version":3,"file":"map-pin-yIki2ElO.js","sources":["../../../../node_modules/lucide-vue-next/dist/esm/icons/map-pin.js"],"sourcesContent":["/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst MapPin = createLucideIcon(\"MapPinIcon\", [\n [\"path\", { d: \"M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z\", key: \"2oe9fu\" }],\n [\"circle\", { cx: \"12\", cy: \"10\", r: \"3\", key: \"ilqhr7\" }]\n]);\n\nexport { MapPin as default };\n//# sourceMappingURL=map-pin.js.map\n"],"names":["MapPin","createLucideIcon"],"mappings":"wCAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAASC,EAAiB,aAAc,CAC5C,CAAC,OAAQ,CAAE,EAAG,iDAAkD,IAAK,QAAQ,CAAE,EAC/E,CAAC,SAAU,CAAE,GAAI,KAAM,GAAI,KAAM,EAAG,IAAK,IAAK,SAAU,CAC1D,CAAC","x_google_ignoreList":[0]}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { a } from "./index-Vx7mSx23.js";
|
import { a } from "./index-6k1S_EjG.js";
|
||||||
/**
|
/**
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
*
|
*
|
||||||
@@ -9,4 +9,4 @@ import { a } from "./index-Vx7mSx23.js";
|
|||||||
["path", { d: "M12 5v14", key: "s699le" }],
|
["path", { d: "M12 5v14", key: "s699le" }],
|
||||||
]);
|
]);
|
||||||
export { s as P };
|
export { s as P };
|
||||||
//# sourceMappingURL=plus-pxSjkL_w.js.map
|
//# sourceMappingURL=plus-0JOmes86.js.map
|
||||||
@@ -1 +1 @@
|
|||||||
{"version":3,"file":"plus-pxSjkL_w.js","sources":["../../../../node_modules/lucide-vue-next/dist/esm/icons/plus.js"],"sourcesContent":["/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Plus = createLucideIcon(\"PlusIcon\", [\n [\"path\", { d: \"M5 12h14\", key: \"1ays0h\" }],\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }]\n]);\n\nexport { Plus as default };\n//# sourceMappingURL=plus.js.map\n"],"names":["Plus","createLucideIcon"],"mappings":"mCAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAOC,EAAiB,WAAY,CACxC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAQ,CAAE,EACzC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAQ,CAAE,CAC3C,CAAC","x_google_ignoreList":[0]}
|
{"version":3,"file":"plus-0JOmes86.js","sources":["../../../../node_modules/lucide-vue-next/dist/esm/icons/plus.js"],"sourcesContent":["/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Plus = createLucideIcon(\"PlusIcon\", [\n [\"path\", { d: \"M5 12h14\", key: \"1ays0h\" }],\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }]\n]);\n\nexport { Plus as default };\n//# sourceMappingURL=plus.js.map\n"],"names":["Plus","createLucideIcon"],"mappings":"mCAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAOC,EAAiB,WAAY,CACxC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAQ,CAAE,EACzC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAQ,CAAE,CAC3C,CAAC","x_google_ignoreList":[0]}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { a as o } from "./index-Vx7mSx23.js";
|
import { a as o } from "./index-6k1S_EjG.js";
|
||||||
/**
|
/**
|
||||||
* @license lucide-vue-next v0.309.0 - ISC
|
* @license lucide-vue-next v0.309.0 - ISC
|
||||||
*
|
*
|
||||||
@@ -14,4 +14,4 @@ import { a as o } from "./index-Vx7mSx23.js";
|
|||||||
],
|
],
|
||||||
]);
|
]);
|
||||||
export { a as S };
|
export { a as S };
|
||||||
//# sourceMappingURL=star-ypmGZNF0.js.map
|
//# sourceMappingURL=star--IkSKstT.js.map
|
||||||
@@ -1 +1 @@
|
|||||||
{"version":3,"file":"star-ypmGZNF0.js","sources":["../../../../node_modules/lucide-vue-next/dist/esm/icons/star.js"],"sourcesContent":["/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Star = createLucideIcon(\"StarIcon\", [\n [\n \"polygon\",\n {\n points: \"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2\",\n key: \"8f66p6\"\n }\n ]\n]);\n\nexport { Star as default };\n//# sourceMappingURL=star.js.map\n"],"names":["Star","createLucideIcon"],"mappings":"wCAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAOC,EAAiB,WAAY,CACxC,CACE,UACA,CACE,OAAQ,iGACR,IAAK,QACN,CACF,CACH,CAAC","x_google_ignoreList":[0]}
|
{"version":3,"file":"star--IkSKstT.js","sources":["../../../../node_modules/lucide-vue-next/dist/esm/icons/star.js"],"sourcesContent":["/**\n * @license lucide-vue-next v0.309.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Star = createLucideIcon(\"StarIcon\", [\n [\n \"polygon\",\n {\n points: \"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2\",\n key: \"8f66p6\"\n }\n ]\n]);\n\nexport { Star as default };\n//# sourceMappingURL=star.js.map\n"],"names":["Star","createLucideIcon"],"mappings":"wCAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAOC,EAAiB,WAAY,CACxC,CACE,UACA,CACE,OAAQ,iGACR,IAAK,QACN,CACF,CACH,CAAC","x_google_ignoreList":[0]}
|
||||||
@@ -5,10 +5,10 @@
|
|||||||
<link rel="icon" href="/favicon.png" />
|
<link rel="icon" href="/favicon.png" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
<title>Frappe UI App</title>
|
<title>Frappe UI App</title>
|
||||||
<script type="module" crossorigin src="/assets/index-Vx7mSx23.js"></script>
|
<script type="module" crossorigin src="/assets/index-6k1S_EjG.js"></script>
|
||||||
<link rel="modulepreload" crossorigin href="/assets/frappe-ui-20hnMCM8.js">
|
<link rel="modulepreload" crossorigin href="/assets/frappe-ui-LT4YqXtx.js">
|
||||||
<link rel="stylesheet" crossorigin href="/assets/frappe-ui-dYBF8eAq.css">
|
<link rel="stylesheet" crossorigin href="/assets/frappe-ui-dYBF8eAq.css">
|
||||||
<link rel="stylesheet" crossorigin href="/assets/index-VOpIbXPv.css">
|
<link rel="stylesheet" crossorigin href="/assets/index-KTmXOKI7.css">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="app"></div>
|
<div id="app"></div>
|
||||||
|
|||||||
Reference in New Issue
Block a user