mario-core 2.0.106-release → 2.0.107-release

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/Dashboard-2tz-LphS.mjs +206 -0
  2. package/dist/Dashboard-CST9ZEL7.js +1 -0
  3. package/dist/EmailTemplateDetail-Cq_9REHg.mjs +443 -0
  4. package/dist/EmailTemplateDetail-ViCZCdHv.js +1 -0
  5. package/dist/EmailTemplateList-1DDfCILO.js +1 -0
  6. package/dist/EmailTemplateList-jy0ehr70.mjs +170 -0
  7. package/dist/GalleryList-NNMDNYfk.js +1 -0
  8. package/dist/GalleryList-q2mAS6a1.mjs +329 -0
  9. package/dist/Login-ChKJt38L.js +1 -0
  10. package/dist/Login-IHK5lcjV.mjs +1697 -0
  11. package/dist/NotificationList-Bw86o-By.mjs +3982 -0
  12. package/dist/NotificationList-D-642U1i.js +2 -0
  13. package/dist/SkillList-BZ3HkOmH.js +1 -0
  14. package/dist/SkillList-CmjAB7ji.mjs +386 -0
  15. package/dist/TeacherSelector-BvZU1T7f.js +1 -0
  16. package/dist/TeacherSelector-Lbrc8aTB.mjs +30 -0
  17. package/dist/TheContent-CQIG1O3s.js +1 -0
  18. package/dist/TheContent-QcVrHdQv.mjs +38 -0
  19. package/dist/UserContainer-DXj9zioP.mjs +2902 -0
  20. package/dist/UserContainer-DzE5y69n.js +5 -0
  21. package/dist/UserDetail-BM1NCn7l.js +1 -0
  22. package/dist/UserDetail-OCp52yAx.mjs +903 -0
  23. package/dist/UserList-DstezT8-.mjs +1261 -0
  24. package/dist/UserList-HmMvmIdB.js +7 -0
  25. package/dist/constants-COS-ClGs.mjs +286 -0
  26. package/dist/constants-U23-GL-v.js +1 -0
  27. package/dist/index-BIqG0fwH.js +15 -0
  28. package/dist/index-Dp_2Xoi-.mjs +19148 -0
  29. package/dist/index.js +1 -1
  30. package/dist/index.modern.js +1 -1
  31. package/dist/mailCategoryService-BxRMD2IB.mjs +11 -0
  32. package/dist/mailCategoryService-DRPi96VT.js +1 -0
  33. package/dist/userService-CPH_XXQC.js +1 -0
  34. package/dist/userService-Dlsfiy2s.mjs +56 -0
  35. package/package.json +1 -1
@@ -0,0 +1,386 @@
1
+ import { jsx as t, jsxs as h } from "react/jsx-runtime";
2
+ import { useState as N, useEffect as I, forwardRef as V, useCallback as _, useRef as q } from "react";
3
+ import { Row as B, Col as y, Input as M, Label as P, Table as z } from "reactstrap";
4
+ import { useTranslation as R } from "react-i18next";
5
+ import { i as E, B as O, $ as Q, a0 as H, Y as J, E as K, J as X, b as f, a1 as Y, c as S, O as G, X as W, P as Z, Q as ee, S as te, T as se, U as ae } from "./index-Dp_2Xoi-.mjs";
6
+ import { Formik as le } from "formik";
7
+ import * as T from "yup";
8
+ import { useSelector as j, useDispatch as A } from "react-redux";
9
+ const L = `${O}/api/Skill`, U = (e) => E.get(L, { params: e }), ne = (e) => E.get(`${L}/${e}`), ie = (e) => E.post(L, e), re = (e) => E.put(`${L}/${e.id}`, e), oe = (e) => E.delete(`${L}/${e}`), ce = (e) => {
10
+ const [s, c] = N([]);
11
+ I(() => {
12
+ o();
13
+ }, []);
14
+ const o = async () => {
15
+ try {
16
+ const i = await U();
17
+ c(i.data.items);
18
+ } catch (i) {
19
+ console.error(i.message);
20
+ }
21
+ }, { id: m, isDisabled: l } = e, u = s.map((i) => ({
22
+ id: i.id,
23
+ value: i.id,
24
+ label: i.path ? `${i.path}/${i.name}` : i.name
25
+ }));
26
+ return /* @__PURE__ */ t(
27
+ Q,
28
+ {
29
+ options: u,
30
+ defaultValue: m,
31
+ ...e,
32
+ isDisabled: l
33
+ }
34
+ );
35
+ }, de = T.object({
36
+ name: T.string().required("Name is required"),
37
+ description: T.string()
38
+ }), me = (e, s) => {
39
+ const {
40
+ header: c,
41
+ confirmText: o,
42
+ onConfirm: m,
43
+ skillDetail: l,
44
+ onCancel: u,
45
+ edited: i,
46
+ setEdited: n,
47
+ setEditedTrue: r,
48
+ setEditedFalse: k,
49
+ isDisabled: b
50
+ } = e, { t: d } = R();
51
+ return /* @__PURE__ */ t(
52
+ le,
53
+ {
54
+ initialValues: l,
55
+ enableReinitialize: !0,
56
+ validationSchema: de,
57
+ onSubmit: (g, p) => {
58
+ m(g), p.resetForm();
59
+ },
60
+ children: (g) => {
61
+ const {
62
+ values: p,
63
+ touched: x,
64
+ errors: C,
65
+ handleChange: D,
66
+ handleBlur: w,
67
+ handleSubmit: $,
68
+ resetForm: F
69
+ } = g;
70
+ return /* @__PURE__ */ t(
71
+ H,
72
+ {
73
+ header: c,
74
+ confirmText: o,
75
+ onConfirm: $,
76
+ ref: s,
77
+ onCancel: () => {
78
+ u(), F();
79
+ },
80
+ edited: i,
81
+ setEdited: n,
82
+ setEditedFalse: k,
83
+ children: /* @__PURE__ */ h(B, { children: [
84
+ /* @__PURE__ */ h(y, { md: 12, className: "mb-2", children: [
85
+ /* @__PURE__ */ t(J, { text: d("name") }),
86
+ /* @__PURE__ */ t(
87
+ M,
88
+ {
89
+ name: "name",
90
+ placeholder: d("name"),
91
+ value: p.name,
92
+ onChange: (a) => {
93
+ D(a), r();
94
+ },
95
+ onBlur: w("name")
96
+ }
97
+ ),
98
+ x.name && C.name && /* @__PURE__ */ t(
99
+ K,
100
+ {
101
+ text: C.name
102
+ }
103
+ )
104
+ ] }),
105
+ /* @__PURE__ */ h(y, { md: 12, className: "mb-2", children: [
106
+ /* @__PURE__ */ t(P, { children: d("description") }),
107
+ /* @__PURE__ */ t(
108
+ M,
109
+ {
110
+ type: "textarea",
111
+ rows: 5,
112
+ name: "description",
113
+ placeholder: d("description"),
114
+ value: p.description,
115
+ onChange: (a) => {
116
+ D(a), r();
117
+ },
118
+ onBlur: w("description")
119
+ }
120
+ )
121
+ ] }),
122
+ /* @__PURE__ */ h(y, { md: 12, className: "mb-2", children: [
123
+ /* @__PURE__ */ t(P, { children: d("parent_category") }),
124
+ /* @__PURE__ */ t(
125
+ ce,
126
+ {
127
+ isDisabled: b,
128
+ onChange: (a) => {
129
+ g.setFieldValue(
130
+ "parentSkillId",
131
+ a.value
132
+ ), r();
133
+ },
134
+ id: p.parentSkillId
135
+ }
136
+ )
137
+ ] })
138
+ ] })
139
+ }
140
+ );
141
+ }
142
+ }
143
+ );
144
+ }, ue = V(me), he = "Skill list", pe = () => {
145
+ const e = j((n) => n.skills.skillList), s = j((n) => n.skills.totalItems), { t: c } = R(), { filters: o, changeFilters: m } = X(), l = A(), u = _(async () => {
146
+ l(f(!0));
147
+ try {
148
+ const n = await U(o), { items: r, totalItems: k } = n.data;
149
+ l(Y({ skillList: r, totalItems: k }));
150
+ } catch (n) {
151
+ l(
152
+ S({
153
+ type: "danger",
154
+ message: n.response?.data?.title || n.message
155
+ })
156
+ );
157
+ }
158
+ l(f(!1));
159
+ }, [l, o]), i = _(
160
+ (n) => {
161
+ l(f(!0));
162
+ try {
163
+ l(
164
+ G({
165
+ isOpen: !0,
166
+ type: "warning",
167
+ message: c("do_you_want_to_remove_this_skill"),
168
+ onConfirm: async () => {
169
+ try {
170
+ await oe(n), l(
171
+ S({
172
+ type: "success",
173
+ message: c("remove_skill_successfully")
174
+ })
175
+ ), m({ currentPage: 1 });
176
+ } catch (r) {
177
+ l(
178
+ S({
179
+ type: "danger",
180
+ message: r.response?.data?.title || r.message || "Error occured"
181
+ })
182
+ );
183
+ }
184
+ }
185
+ })
186
+ );
187
+ } catch (r) {
188
+ l(
189
+ S({
190
+ type: "danger",
191
+ message: r.response?.data?.title || r.message || "Error occured"
192
+ })
193
+ );
194
+ }
195
+ l(f(!1));
196
+ },
197
+ [o]
198
+ );
199
+ return I(() => {
200
+ document.title = he;
201
+ }, []), I(() => {
202
+ u();
203
+ }, [o]), {
204
+ skillList: e,
205
+ totalItems: s,
206
+ filters: o,
207
+ changeFilters: m,
208
+ getData: u,
209
+ removeData: i
210
+ };
211
+ }, v = {
212
+ name: "",
213
+ description: "",
214
+ path: "",
215
+ parentSkillId: null
216
+ }, ge = () => {
217
+ const e = A(), [s, c] = N(0), [o, m] = N(v), [l, u] = N(!1), i = async () => {
218
+ localStorage.setItem(window.location.href, "true"), u(!0);
219
+ }, n = async () => {
220
+ localStorage.getItem(window.location.href) && localStorage.removeItem(window.location.href), u(!1);
221
+ };
222
+ I(() => {
223
+ s ? k() : m(v);
224
+ }, [s]);
225
+ const r = () => {
226
+ c(0), m(v);
227
+ };
228
+ I(() => {
229
+ n();
230
+ }, []);
231
+ const k = _(async () => {
232
+ e(f(!0));
233
+ try {
234
+ const d = await ne(s);
235
+ m(d.data);
236
+ } catch (d) {
237
+ e(
238
+ S({
239
+ type: "danger",
240
+ message: d.response?.data?.title || d.message
241
+ })
242
+ );
243
+ }
244
+ e(f(!1));
245
+ }, [s]), b = _(
246
+ async (d, g) => {
247
+ e(f(!0));
248
+ try {
249
+ await (s ? re : ie)(d), e(
250
+ S({
251
+ type: "success",
252
+ message: `${s ? "Update" : "Create"} skill successfully`
253
+ })
254
+ ), g && g(), s && c(0);
255
+ } catch (p) {
256
+ e(
257
+ S({
258
+ type: "danger",
259
+ message: p.response?.data?.title || p.message
260
+ })
261
+ );
262
+ }
263
+ e(f(!1));
264
+ },
265
+ [s, o]
266
+ );
267
+ return {
268
+ id: s,
269
+ setId: c,
270
+ skillDetail: o,
271
+ confirmData: b,
272
+ initValue: v,
273
+ reset: r,
274
+ edited: l,
275
+ setEdited: u,
276
+ setEditedTrue: i,
277
+ setEditedFalse: n
278
+ };
279
+ }, Ie = () => {
280
+ const e = q(null), { t: s } = R(), {
281
+ skillList: c,
282
+ totalItems: o,
283
+ filters: m,
284
+ changeFilters: l,
285
+ getData: u,
286
+ removeData: i
287
+ } = pe(), {
288
+ id: n,
289
+ setId: r,
290
+ skillDetail: k,
291
+ confirmData: b,
292
+ reset: d,
293
+ edited: g,
294
+ setEdited: p,
295
+ setEditedTrue: x,
296
+ setEditedFalse: C
297
+ } = ge(), D = (a) => {
298
+ r(a || 0), e && e.current && e.current.toggle();
299
+ }, w = (a) => {
300
+ b(a, () => {
301
+ e && e.current && e.current.toggle(), u();
302
+ }), C();
303
+ }, $ = (a) => {
304
+ i(a);
305
+ }, F = () => d();
306
+ return /* @__PURE__ */ h("div", { className: "fadeIn animated", children: [
307
+ /* @__PURE__ */ t(
308
+ ue,
309
+ {
310
+ ref: e,
311
+ header: s(n ? "edit_skill" : "create_skill"),
312
+ confirmText: s(n ? "update" : "create"),
313
+ onCancel: F,
314
+ onConfirm: w,
315
+ skillDetail: k,
316
+ edited: g,
317
+ setEdited: p,
318
+ setEditedTrue: x,
319
+ setEditedFalse: C,
320
+ isDisabled: n
321
+ }
322
+ ),
323
+ /* @__PURE__ */ t(W, { when: g }),
324
+ /* @__PURE__ */ h(B, { className: "my-2", children: [
325
+ /* @__PURE__ */ t(y, { md: 4, children: /* @__PURE__ */ t(
326
+ Z,
327
+ {
328
+ text: s("create_skill"),
329
+ onClick: () => D()
330
+ }
331
+ ) }),
332
+ /* @__PURE__ */ h(
333
+ y,
334
+ {
335
+ md: 4,
336
+ className: "d-flex align-items-center justify-content-end",
337
+ children: [
338
+ s("total_of_skills"),
339
+ ": ",
340
+ o
341
+ ]
342
+ }
343
+ )
344
+ ] }),
345
+ /* @__PURE__ */ h(B, { className: "mb-2", children: [
346
+ /* @__PURE__ */ t(y, { md: 8, children: c && c.length > 0 ? /* @__PURE__ */ h(z, { bordered: !0, hover: !0, striped: !0, responsive: !0, size: "sm", children: [
347
+ /* @__PURE__ */ t("thead", { children: /* @__PURE__ */ h("tr", { children: [
348
+ /* @__PURE__ */ t("th", { className: "align-top", children: s("name") }),
349
+ /* @__PURE__ */ t("th", { className: "align-top", children: s("description") }),
350
+ /* @__PURE__ */ t("th", { className: "text-center", children: s("action") })
351
+ ] }) }),
352
+ /* @__PURE__ */ t("tbody", { children: c.map((a) => /* @__PURE__ */ h("tr", { children: [
353
+ /* @__PURE__ */ h("td", { className: "align-middle", children: [
354
+ /* @__PURE__ */ t(
355
+ ee,
356
+ {
357
+ label: a.name,
358
+ onClick: () => D(a.id)
359
+ }
360
+ ),
361
+ !!a.path && /* @__PURE__ */ t("p", { className: "mb-0 pl-3", children: /* @__PURE__ */ t("i", { children: a.path }) })
362
+ ] }),
363
+ /* @__PURE__ */ t("td", { className: "align-middle", children: a.description }),
364
+ /* @__PURE__ */ t("td", { className: "text-center align-middle", children: /* @__PURE__ */ t(
365
+ te,
366
+ {
367
+ onClick: () => $(a.id)
368
+ }
369
+ ) })
370
+ ] }, a.id)) })
371
+ ] }) : /* @__PURE__ */ t(se, { label: s("skill") }) }),
372
+ /* @__PURE__ */ t(y, { md: 8, className: "text-right", children: /* @__PURE__ */ t(
373
+ ae,
374
+ {
375
+ totalRecordCount: o,
376
+ filters: m,
377
+ changePageSize: (a) => l({ pageSize: a }),
378
+ changePage: (a) => l({ currentPage: a })
379
+ }
380
+ ) })
381
+ ] })
382
+ ] });
383
+ };
384
+ export {
385
+ Ie as default
386
+ };
@@ -0,0 +1 @@
1
+ "use strict";const e=require("react/jsx-runtime"),i=require("react"),l=require("./index-BIqG0fwH.js"),u=({options:t,isDisabled:r,scrollBottom:c,onCreateOption:d,...a})=>{const[s,n]=i.useState(),o=()=>{n(void 0)};return e.jsxs("div",{className:"w-100",children:[e.jsx("div",{className:"w-100",children:e.jsx(l.CreatableSelect$1,{isDisabled:r,options:t,menuPlacement:c?"top":"auto",onFocus:o,...a})}),!!s&&e.jsx("p",{className:"text-danger mb-0 mt-1",children:s})]})};exports.TeacherSelector=u;
@@ -0,0 +1,30 @@
1
+ import { jsxs as n, jsx as e } from "react/jsx-runtime";
2
+ import { useState as m } from "react";
3
+ import { am as l } from "./index-Dp_2Xoi-.mjs";
4
+ const x = ({
5
+ options: s,
6
+ isDisabled: o,
7
+ scrollBottom: t,
8
+ onCreateOption: i,
9
+ ...a
10
+ }) => {
11
+ const [r, c] = m();
12
+ return /* @__PURE__ */ n("div", { className: "w-100", children: [
13
+ /* @__PURE__ */ e("div", { className: "w-100", children: /* @__PURE__ */ e(
14
+ l,
15
+ {
16
+ isDisabled: o,
17
+ options: s,
18
+ menuPlacement: t ? "top" : "auto",
19
+ onFocus: () => {
20
+ c(void 0);
21
+ },
22
+ ...a
23
+ }
24
+ ) }),
25
+ !!r && /* @__PURE__ */ e("p", { className: "text-danger mb-0 mt-1", children: r })
26
+ ] });
27
+ };
28
+ export {
29
+ x as T
30
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),n=require("react"),s=require("react-router-dom"),r=require("@coreui/react"),m=require("./index-BIqG0fwH.js"),u=e.jsx("div",{className:"app-initial-loader",style:{position:"relative",height:"100%",minHeight:"400px",backgroundColor:"transparent",width:"100%"},children:e.jsxs("div",{className:"loader-container",children:[e.jsx("img",{src:"/images/mario-logo.png",alt:"Mario Education Logo",className:"loader-logo",style:{maxWidth:"220px"}}),e.jsx("div",{className:"loading-text",children:"Loading your page..."}),e.jsxs("div",{className:"loading-dots",children:[e.jsx("span",{className:"dot"}),e.jsx("span",{className:"dot"}),e.jsx("span",{className:"dot"})]})]})}),x=({routes:o})=>{const i=s.useLocation(),{pathname:a}=i,l=a.includes("/admin")?"":"box-container",c=a.includes("/admin")?"p-4":"";return e.jsx("main",{className:`c-main ${l}`,style:{height:"100%"},children:e.jsx(r.CContainer,{fluid:!0,className:`h-100 ${c}`,style:{flex:1},children:e.jsx(n.Suspense,{fallback:u,children:e.jsxs(s.Routes,{children:[o.map((t,d)=>e.jsx(s.Route,{path:t.path,element:e.jsx(t.component,{})},d)),e.jsx(s.Route,{path:"*",element:e.jsx(m.NotFound,{})})]})})})})},h=n.memo(x);exports.default=h;
@@ -0,0 +1,38 @@
1
+ import { jsx as a, jsxs as e } from "react/jsx-runtime";
2
+ import { memo as m, Suspense as r } from "react";
3
+ import { useLocation as p, Routes as h, Route as t } from "react-router-dom";
4
+ import { CContainer as g } from "@coreui/react";
5
+ import { H as u } from "./index-Dp_2Xoi-.mjs";
6
+ const N = /* @__PURE__ */ a("div", { className: "app-initial-loader", style: { position: "relative", height: "100%", minHeight: "400px", backgroundColor: "transparent", width: "100%" }, children: /* @__PURE__ */ e("div", { className: "loader-container", children: [
7
+ /* @__PURE__ */ a(
8
+ "img",
9
+ {
10
+ src: "/images/mario-logo.png",
11
+ alt: "Mario Education Logo",
12
+ className: "loader-logo",
13
+ style: { maxWidth: "220px" }
14
+ }
15
+ ),
16
+ /* @__PURE__ */ a("div", { className: "loading-text", children: "Loading your page..." }),
17
+ /* @__PURE__ */ e("div", { className: "loading-dots", children: [
18
+ /* @__PURE__ */ a("span", { className: "dot" }),
19
+ /* @__PURE__ */ a("span", { className: "dot" }),
20
+ /* @__PURE__ */ a("span", { className: "dot" })
21
+ ] })
22
+ ] }) }), f = ({ routes: i }) => {
23
+ const s = p(), { pathname: o } = s, l = o.includes("/admin") ? "" : "box-container", d = o.includes("/admin") ? "p-4" : "";
24
+ return /* @__PURE__ */ a("main", { className: `c-main ${l}`, style: { height: "100%" }, children: /* @__PURE__ */ a(g, { fluid: !0, className: `h-100 ${d}`, style: { flex: 1 }, children: /* @__PURE__ */ a(r, { fallback: N, children: /* @__PURE__ */ e(h, { children: [
25
+ i.map((n, c) => /* @__PURE__ */ a(
26
+ t,
27
+ {
28
+ path: n.path,
29
+ element: /* @__PURE__ */ a(n.component, {})
30
+ },
31
+ c
32
+ )),
33
+ /* @__PURE__ */ a(t, { path: "*", element: /* @__PURE__ */ a(u, {}) })
34
+ ] }) }) }) });
35
+ }, L = m(f);
36
+ export {
37
+ L as default
38
+ };