@edu-tosel/design 1.0.256 → 1.0.257
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/card/template/InfoCard/Exam.d.ts +1 -1
- package/card/template/InfoCard/Exam.js +12 -2
- package/card/template/InfoCard/Grade.d.ts +1 -1
- package/card/template/InfoCard/Grade.js +12 -2
- package/interaction/template/ErrorPage.js +1 -1
- package/interface/Card.d.ts +1 -0
- package/interface/widget/index.d.ts +1 -0
- package/layout/template/MonthlyProgressReport/Report.d.ts +11 -10
- package/package.json +1 -1
- package/version.txt +1 -1
- package/widget/design/Label.design.js +2 -1
- package/widget/template/Label.js +1 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { Label } from "../../../widget";
|
|
3
3
|
import { cn } from "../../../util";
|
|
4
4
|
import { InfoCardDesign } from "../../design/InfoCard.design";
|
|
@@ -15,11 +15,21 @@ export default function Exam({ titles, data, option }) {
|
|
|
15
15
|
titleBorder: titleBorder ?? "border-red-crimson",
|
|
16
16
|
width: "sm",
|
|
17
17
|
height: "xs",
|
|
18
|
-
}, children: _jsxs(_Fragment, { children: [_jsxs("div", { className: cn(container), children: [
|
|
18
|
+
}, children: _jsxs(_Fragment, { children: [_jsxs("div", { className: cn(container), children: [_jsx("div", { className: "flex gap-4 font-pretendard-bold ", children: [
|
|
19
|
+
manager,
|
|
20
|
+
typeof isPublic !== "undefined"
|
|
21
|
+
? isPublic
|
|
22
|
+
? "공개시험"
|
|
23
|
+
: "비공개시험"
|
|
24
|
+
: undefined,
|
|
25
|
+
]
|
|
26
|
+
.filter(Boolean)
|
|
27
|
+
.join(" / ") }), _jsxs("div", { children: [_jsxs("div", { className: "text-xs", children: ["\uC811\uC218\uB9C8\uAC10: ", endDate] }), _jsxs("div", { className: "text-xs", children: ["\uC2DC\uD5D8\uC77C: ", examDate] })] })] }), _jsx(Label.Button, { title: button.title, hoverTitle: button.hoverTitle, onClick: button.onClick, option: {
|
|
19
28
|
width: "sm",
|
|
20
29
|
height: "xs",
|
|
21
30
|
className: cn(label),
|
|
22
31
|
text: "text-white hover:text-crimson-burgundy",
|
|
23
32
|
background: "bg-crimson-burgundy hover:bg-gray-light",
|
|
33
|
+
...button.option,
|
|
24
34
|
} })] }) }));
|
|
25
35
|
}
|
|
@@ -11,5 +11,5 @@ interface Data {
|
|
|
11
11
|
export interface GradeProps extends Omit<InfoCardProps, "children"> {
|
|
12
12
|
data: Partial<Data>;
|
|
13
13
|
}
|
|
14
|
-
export default function Grade({ titles, image, data }: GradeProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export default function Grade({ titles, image, data, buttons }: GradeProps): import("react/jsx-runtime").JSX.Element;
|
|
15
15
|
export {};
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { Label } from "../../../widget";
|
|
2
3
|
import { cn } from "../../../util";
|
|
3
4
|
import { InfoCardDesign } from "../../design/InfoCard.design";
|
|
4
|
-
|
|
5
|
+
import { label } from "./static/label";
|
|
6
|
+
export default function Grade({ titles, image, data, buttons }) {
|
|
7
|
+
const [button] = buttons ?? [];
|
|
5
8
|
const container = {
|
|
6
9
|
positions: "relative",
|
|
7
10
|
displays: "flex flex-col justify-between mt-2.5",
|
|
@@ -17,5 +20,12 @@ export default function Grade({ titles, image, data }) {
|
|
|
17
20
|
titleBorder: "border-blue-navy",
|
|
18
21
|
width: "sm",
|
|
19
22
|
height: "xs",
|
|
20
|
-
}, children:
|
|
23
|
+
}, children: _jsxs(_Fragment, { children: [_jsxs("div", { className: cn(container), children: [_jsxs("div", { className: "flex items-center gap-5", children: [_jsx("div", { className: cn(levelBox), children: data.levelString }), _jsxs("span", { className: "text-sm", children: [data.position, ", ", data.age, "\uC138"] })] }), _jsxs("div", { className: "absolute bottom-0 left-0 flex items-end gap-8 text-blue-navy", children: [_jsxs("div", { className: "w-24 h-12 flex justify-center items-end", children: [_jsx("div", { className: "leading-none text-4xl font-pretendard-bold", children: data.score }), _jsx("div", { children: "\uC810" })] }), _jsxs("div", { className: "w-14 h-12 flex justify-end items-end", children: [_jsx("div", { className: "leading-none text-4xl font-pretendard-bold", children: data.grade }), _jsx("div", { children: "\uB4F1\uAE09" })] })] })] }), button && (_jsx(Label.Button, { title: button.title, onClick: button.onClick, option: {
|
|
24
|
+
width: "sm",
|
|
25
|
+
height: "xs",
|
|
26
|
+
text: "text-white hover:text-blue-navy",
|
|
27
|
+
background: "bg-blue-navy hover:bg-gray-light",
|
|
28
|
+
className: cn(label),
|
|
29
|
+
...button.option,
|
|
30
|
+
} }))] }) }));
|
|
21
31
|
}
|
|
@@ -2,5 +2,5 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import urlAsset from "../../asset/url";
|
|
3
3
|
import { LineBreaks } from "../../text";
|
|
4
4
|
export default function ErrorPage({ message, statusCode, buttons, }) {
|
|
5
|
-
return (_jsx("div", { className: "flex justify-center items-center w-full h-screen", children: _jsxs("div", { className: "flex flex-col justify-center items-center", children: [_jsx("div", { className: "w-full h-fit flex justify-center items-center mb-5 text-green-dark", children: _jsx("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor", className: "md:size-10 size-6", children: _jsx("path", { "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 9v3.75m9-.75a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9 3.75h.008v.008H12v-.008Z" }) }) }), _jsx(LineBreaks, { texts: message, className: "w-full text-center text-sm md:text-base font-medium text-gray-dark" }), _jsxs("div", { className: "relative flex justify-center items-center md:size-80 size-40", children: [_jsx("div", { className: "absolute flex justify-center items-center left-0 top-0 w-full h-full overflow-visible", children: _jsx("div", { className: "font-medium md:text-[200px] text-[100px] text-green-dark", children: statusCode }) }), _jsx("div", { className: "absolute flex justify-center items-center left-0 top-0 w-full h-full overflow-visible", children: _jsx("img", { src: urlAsset.resource("/images/img-character-cocoon-main-new.png"), alt: "", className: "size-40 md:size-80 z-10 hover:scale-105 duration-300" }) })] }), _jsx("div", { className: "flex w-full justify-center gap-x-3.5", children: buttons?.map((button) => (_jsx("div", { className: "w-full text-center text-base font-medium text-gray-dark", children: _jsx("button", { onClick: () => button?.onClick ? button.onClick() : window.history.back(), className: "font-medium text-green-dark w-fit h-fit bg-green-light px-4 py-3 rounded-lg hover:shadow-green duration-300 text-sm hover:bg-white", children: button?.title ?? "이전 페이지로 돌아가기" }, button.title) }))) })] }) }));
|
|
5
|
+
return (_jsx("div", { className: "flex justify-center items-center w-full h-screen", children: _jsxs("div", { className: "flex flex-col justify-center items-center", children: [_jsx("div", { className: "w-full h-fit flex justify-center items-center mb-5 text-green-dark", children: _jsx("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor", className: "md:size-10 size-6", children: _jsx("path", { "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 9v3.75m9-.75a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9 3.75h.008v.008H12v-.008Z" }) }) }), _jsx(LineBreaks, { texts: message, className: "w-full text-center text-sm md:text-base font-medium text-gray-dark" }), _jsxs("div", { className: "relative flex justify-center items-center md:size-80 size-40", children: [_jsx("div", { className: "absolute flex justify-center items-center left-0 top-0 w-full h-full overflow-visible", children: _jsx("div", { className: "font-medium md:text-[200px] text-[100px] text-green-dark", children: statusCode }) }), _jsx("div", { className: "absolute flex justify-center items-center left-0 top-0 w-full h-full overflow-visible", children: _jsx("img", { src: urlAsset.resource("/images/img-character-cocoon-main-new.png"), alt: "", className: "size-40 md:size-80 z-10 hover:scale-105 duration-300" }) })] }), _jsx("div", { className: "flex flex-col gap-5 w-full justify-center gap-x-3.5", children: buttons?.map((button) => (_jsx("div", { className: "w-full text-center text-base font-medium text-gray-dark", children: _jsx("button", { onClick: () => button?.onClick ? button.onClick() : window.history.back(), className: "font-medium text-green-dark w-fit h-fit bg-green-light px-4 py-3 rounded-lg hover:shadow-green duration-300 text-sm hover:bg-white", children: button?.title ?? "이전 페이지로 돌아가기" }, button.title) }))) })] }) }));
|
|
6
6
|
}
|
package/interface/Card.d.ts
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
|
+
type Score = number | null;
|
|
1
2
|
export interface Result {
|
|
2
|
-
|
|
3
|
-
|
|
3
|
+
createdTimestamp: number;
|
|
4
|
+
updatedTimestamp: number;
|
|
4
5
|
academyId: number;
|
|
5
6
|
etc: null;
|
|
6
7
|
report: {
|
|
7
|
-
section1Part1:
|
|
8
|
-
section1Part2:
|
|
9
|
-
section1Part3:
|
|
10
|
-
section1Part4:
|
|
11
|
-
section2Part1:
|
|
12
|
-
section2Part2:
|
|
13
|
-
section2Part3:
|
|
14
|
-
section2Part4:
|
|
8
|
+
section1Part1: Score;
|
|
9
|
+
section1Part2: Score;
|
|
10
|
+
section1Part3: Score;
|
|
11
|
+
section1Part4: Score;
|
|
12
|
+
section2Part1: Score;
|
|
13
|
+
section2Part2: Score;
|
|
14
|
+
section2Part3: Score;
|
|
15
|
+
section2Part4: Score;
|
|
15
16
|
};
|
|
16
17
|
id: number;
|
|
17
18
|
setId: number;
|
package/package.json
CHANGED
package/version.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.257
|
|
@@ -21,10 +21,11 @@ const heightSize = {
|
|
|
21
21
|
};
|
|
22
22
|
export default function LabelDesign({ title, onClick, disabled, option, hoverState, }) {
|
|
23
23
|
const [hover, setHover] = hoverState ?? [false, () => { }];
|
|
24
|
-
const { width, height, text, background, className, boundary } = option ?? {};
|
|
24
|
+
const { width, height, text, background, className, boundary, styles } = option ?? {};
|
|
25
25
|
const container = {
|
|
26
26
|
positions: className ?? "relative",
|
|
27
27
|
sizes: `${widthSize[width ?? "sm"]} ${heightSize[height ?? "xs"]}`,
|
|
28
|
+
styles,
|
|
28
29
|
};
|
|
29
30
|
const body = {
|
|
30
31
|
positions: "relative z-10",
|