@edu-tosel/design 1.0.155 → 1.0.157

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 (39) hide show
  1. package/README.md +42 -42
  2. package/asset/SVG.tsx +29 -29
  3. package/asset/html/gomito-promotion.html +116 -116
  4. package/asset/html/speaking-series-promotion.html +58 -58
  5. package/asset/sizes.ts +202 -202
  6. package/asset/svg/Close.tsx +32 -32
  7. package/asset/svg/Direction.tsx +76 -76
  8. package/asset/svg/Email.tsx +20 -20
  9. package/asset/svg/Eye.tsx +48 -48
  10. package/asset/svg/Icon.tsx +195 -195
  11. package/asset/svg/Image.tsx +24 -24
  12. package/asset/svg/Notification.tsx +34 -34
  13. package/asset/svg/Operation.tsx +130 -130
  14. package/asset/svg/Phone.tsx +20 -20
  15. package/asset/svg/Profile.tsx +27 -27
  16. package/asset/svg/Symbol.tsx +60 -60
  17. package/asset/svg/TOSEL.tsx +63 -63
  18. package/card/design/Card.design.js +4 -2
  19. package/card/design/RollCard.design.js +1 -1
  20. package/card/template/InfoCard/Finance.js +1 -1
  21. package/card/template/InfoCard/Student.d.ts +2 -2
  22. package/card/template/InfoCard/Student.js +4 -11
  23. package/card/template/NavCard.js +1 -1
  24. package/card/template/ProgressCard/Large.js +1 -1
  25. package/globals.css +269 -269
  26. package/interface/Property.d.ts +1 -1
  27. package/layout/design/Row.design/index.js +1 -0
  28. package/layout/index.d.ts +1 -0
  29. package/layout/index.js +1 -0
  30. package/layout/template/Event/One.js +39 -1
  31. package/layout/template/MonthlyProgressReport/Report.d.ts +36 -0
  32. package/layout/template/MonthlyProgressReport/Report.js +80 -0
  33. package/layout/template/MonthlyProgressReport/index.d.ts +5 -0
  34. package/layout/template/MonthlyProgressReport/index.js +5 -0
  35. package/layout/template/home/layout/Footer.js +1 -1
  36. package/layout/template/home/layout/Navigation.js +1 -1
  37. package/package.json +2 -1
  38. package/tailwind.config.ts +675 -672
  39. package/version.txt +1 -1
@@ -1,11 +1,11 @@
1
1
  import { InfoCardProps, OnClick } from "./../../../interface";
2
2
  interface Data {
3
3
  belong: string;
4
- birthday: string;
4
+ academy: string;
5
5
  }
6
6
  interface StudentInfo extends Omit<InfoCardProps, "children"> {
7
7
  data: Partial<Data>;
8
8
  onClick?: OnClick;
9
9
  }
10
- export default function Student({ titles, image, data, onClick }: StudentInfo): import("react/jsx-runtime").JSX.Element;
10
+ export default function Student({ titles, image, data, option, }: StudentInfo): import("react/jsx-runtime").JSX.Element;
11
11
  export {};
@@ -1,9 +1,7 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Label } from "../../../widget";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
2
  import { cn } from "../../../util";
4
3
  import { InfoCardDesign } from "../../design/InfoCard.design";
5
- import { label } from "./static/label";
6
- export default function Student({ titles, image, data, onClick }) {
4
+ export default function Student({ titles, image, data, option, }) {
7
5
  const container = {
8
6
  positions: "relative",
9
7
  displays: "flex flex-col justify-between mt-2.5",
@@ -18,11 +16,6 @@ export default function Student({ titles, image, data, onClick }) {
18
16
  titleBorder: "border-blue-navy",
19
17
  width: "sm",
20
18
  height: "xs",
21
- }, children: _jsxs(_Fragment, { children: [_jsx("div", { className: cn(container), children: _jsx("div", { className: "flex items-center gap-5", children: _jsx("span", { className: "text-sm", children: data.belong }) }) }), _jsx(Label.Button, { title: "\uC0C1\uC138\uBCF4\uAE30", onClick: onClick, option: {
22
- width: "sm",
23
- height: "xs",
24
- text: "text-white hover:text-blue-navy",
25
- background: "bg-blue-navy hover:bg-gray-light",
26
- className: cn(label),
27
- } })] }) }));
19
+ ...option,
20
+ }, children: _jsx("div", { className: cn(container), children: _jsxs("div", { className: "flex flex-col", children: [_jsx("span", { className: "text-sm", children: data.academy }), _jsx("span", { className: "text-sm", children: data.belong })] }) }) }));
28
21
  }
@@ -3,7 +3,7 @@ import NavCardDesign from "../design/NavCard.design";
3
3
  function Banner({ titles, option }) {
4
4
  return (_jsx(NavCardDesign, { titles: titles, option: {
5
5
  ...option,
6
- width: option?.width ?? "xl",
6
+ width: option?.width ?? "2xl",
7
7
  height: option?.height ?? "sm",
8
8
  image: option?.image && {
9
9
  ...option?.image,
@@ -35,7 +35,7 @@ export default function ProgressCardLG({ titles, checks, displays, theme, option
35
35
  const occupied = Math.round((checks.filter((value) => !!value).length / displays.length) * 100);
36
36
  return (_jsxs(CardDesign, { option: {
37
37
  ...option,
38
- width: "2xl",
38
+ width: "3xl",
39
39
  height: "2xs",
40
40
  }, children: [_jsx("div", { className: cn(progressBox), children: displays.map(({ title }, index) => (_jsxs("div", { className: cn(stepBox(checks[index])), children: [_jsx("div", { children: title }), _jsx(SVG.Operation.Checked, { flag: checks[index], size: 25, theme: theme })] }, title))) }), _jsxs("div", { className: cn(titleBox), children: [_jsx("div", { className: `text-xl leading-none font-pretendard-bold ${text[theme ?? "green"]}`, children: titles.title }), _jsx("div", { className: "text-base leading-none", children: titles.subtitle })] }), _jsx("div", { className: "absolute bottom-0 left-0 bg-gray-light w-full h-2.5", children: _jsx("div", { className: `h-full ${widthSizes[occupied]} ${bg[theme ?? "green"]}` }) })] }));
41
41
  }
package/globals.css CHANGED
@@ -1,269 +1,269 @@
1
- @tailwind base;
2
- @tailwind components;
3
- @tailwind utilities;
4
-
5
- .image-container {
6
- display: -webkit-box;
7
- display: -ms-flexbox;
8
- display: flex;
9
- }
10
-
11
- @font-face {
12
- font-family: "Pretendard-Medium";
13
- src: url("./asset/fonts/Pretendard-Medium.otf") format("opentype");
14
- }
15
-
16
- @font-face {
17
- font-family: "Pretendard-Bold";
18
- src: url("./asset/fonts/Pretendard-Bold.otf") format("opentype");
19
- }
20
-
21
- @font-face {
22
- font-family: "Pretendard-Light";
23
- src: url("./asset/fonts/Pretendard-Light.otf") format("opentype");
24
- }
25
-
26
- @font-face {
27
- font-family: "Kostar";
28
- src: url("./asset/fonts/Kostar.ttf") format("truetype");
29
- }
30
-
31
- @font-face {
32
- font-family: "NicoMoji";
33
- src: url("./asset/fonts/NicoMoji.ttf") format("truetype");
34
- }
35
-
36
- @font-face {
37
- font-family: "Megrim";
38
- src: url("./asset/fonts/Megrim.ttf") format("truetype");
39
- }
40
-
41
- @font-face {
42
- font-family: "Times-Newer-Roman-Bold";
43
- src: url("./asset/fonts/TimesNewerRoman-Bold.otf") format("opentype");
44
- }
45
-
46
- @font-face {
47
- font-family: "Times-Newer-Roman-BoldItalic";
48
- src: url("./asset/fonts/TimesNewerRoman-BoldItalic.otf") format("opentype");
49
- }
50
-
51
- @font-face {
52
- font-family: "PretendardVariable";
53
- src: url("./asset/fonts/PretendardVariable.ttf") format("truetype");
54
- }
55
-
56
- input[type="date"]::-webkit-inner-spin-button,
57
- input[type="date"]::-webkit-calendar-picker-indicator {
58
- display: none;
59
- -webkit-appearance: none;
60
- }
61
-
62
- ::-webkit-scrollbar {
63
- width: 3px;
64
- padding-right: 10px;
65
- }
66
-
67
- ::-webkit-scrollbar-track {
68
- background-color: transparent;
69
- }
70
- ::-webkit-scrollbar-thumb {
71
- background-color: #808080;
72
- opacity: 0.5;
73
- border-radius: 10px;
74
- }
75
-
76
- .box-shadow {
77
- box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15);
78
- }
79
- .box-shadow-md {
80
- box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
81
- }
82
- .box-shadow-sm {
83
- box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
84
- }
85
- .border-gradient-green-to-red {
86
- }
87
-
88
- .x-shape {
89
- position: relative;
90
- width: 0.83625rem;
91
- height: 0.83625rem;
92
- }
93
-
94
- .x-shape::before,
95
- .x-shape::after {
96
- content: "";
97
- position: absolute;
98
- top: 50%;
99
- left: 50%;
100
- width: 2.5px;
101
- border-radius: 2px;
102
- height: 100%;
103
- background-color: white;
104
- transform-origin: center;
105
- }
106
-
107
- .x-shape::before {
108
- transform: translate(-50%, -50%) rotate(45deg);
109
- }
110
-
111
- .x-shape::after {
112
- transform: translate(-50%, -50%) rotate(-45deg);
113
- }
114
-
115
- .border-inner {
116
- box-shadow: 0 0 0 1px #e5e7eb inset, 0 4px 6px -1px rgba(0, 0, 0, 0.1),
117
- 0 2px 4px -1px rgba(0, 0, 0, 0.06);
118
- }
119
- .box-shadow-focus:focus {
120
- box-shadow: 0 0 0 1px #e5e7eb inset, 0 4px 6px -1px rgba(0, 0, 0, 0.1),
121
- 0 2px 4px -1px rgba(0, 0, 0, 0.06);
122
- }
123
- .box-shadow-focus-red:focus {
124
- box-shadow: 0px 0px 10px 0px #ff8383;
125
- }
126
- .box-green {
127
- background: rgba(16, 86, 82, 0.1);
128
- color: #105652;
129
- }
130
- .box-shadow-green-sm {
131
- box-shadow: 0px 0px 10px 0px rgba(16, 86, 82, 0.38);
132
- }
133
- .box-green-focus:focus {
134
- background: white;
135
- color: black;
136
- box-shadow: 0px 0px 10px 0px rgba(16, 86, 82, 0.38);
137
- }
138
- /* box-shadow: 0px 0px 10px 0px rgba(16, 86, 82, 0.38); */
139
- .box-inner-shadow:hover {
140
- box-shadow: 0 0 0 1px #e5e7eb inset, 0 4px 6px -1px rgba(0, 0, 0, 0.1),
141
- 0 2px 4px -1px rgba(0, 0, 0, 0.06);
142
- }
143
- /* Date Picker Css */
144
- .react-datepicker__day--selected {
145
- background-color: #105652 !important;
146
- }
147
- .react-datepicker__header {
148
- background: white !important;
149
- border: none !important;
150
- }
151
- .react-datepicker {
152
- box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15) !important;
153
- border-radius: 0.375rem !important;
154
- border: none !important;
155
- }
156
- .react-datepicker__day--keyboard-selected {
157
- background-color: white !important;
158
- color: black !important;
159
- }
160
- .react-datepicker__day--outside-month {
161
- color: rgb(161 161 170) !important;
162
- }
163
- .react-datepicker__month-container {
164
- padding-top: 1rem;
165
- padding-left: 1rem;
166
- padding-right: 1rem;
167
- padding-bottom: 0.5rem;
168
- }
169
- .react-datepicker-popper {
170
- transform: translate(0px 295px) !important;
171
- }
172
- .react-datepicker__input-container {
173
- text-align: center !important;
174
- border-radius: 0.375rem !important;
175
- transition: all 0.3s;
176
- }
177
- .react-datepicker__input-container > input {
178
- cursor: pointer !important;
179
- }
180
- .react-datepicker__input-container:hover {
181
- box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15) !important;
182
- }
183
- .react-datepicker__navigation {
184
- top: 18px !important;
185
- }
186
- .react-datepicker__navigation--next {
187
- right: 20px !important;
188
- }
189
- .react-datepicker__navigation--previous {
190
- left: 182px !important;
191
- }
192
- .react-datepicker__current-month {
193
- text-align: left !important;
194
- margin-left: 16px !important;
195
- }
196
- .react-datepicker__triangle {
197
- display: none !important;
198
- }
199
- .react-datepicker__children-container {
200
- width: 16rem !important;
201
- }
202
- /* toggle button */
203
- .toggle[type="checkbox"]::before {
204
- content: "";
205
- position: absolute;
206
- left: 1px;
207
- top: 1px;
208
- width: 1.1rem;
209
- height: 1.1rem;
210
- border-radius: 50%;
211
- transform: scale(0.9);
212
- background-color: white;
213
- transition: left 100ms linear;
214
- }
215
- .toggle[type="checkbox"]:checked::before {
216
- background-color: white;
217
- left: 1.32rem;
218
- }
219
- .toggle[type="checkbox"]:checked {
220
- background-color: #105652;
221
- }
222
- .toggle[type="checkbox"]:disabled {
223
- opacity: 0.3;
224
- cursor: not-allowed;
225
- }
226
- .toggle[type="checkbox"]:disabled + span {
227
- opacity: 0.3;
228
- cursor: not-allowed;
229
- }
230
-
231
- /* checkbox */
232
- .check-box[type="checkbox"]:checked {
233
- border-color: transparent;
234
- background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M5.707 7.293a1 1 0 0 0-1.414 1.414l2 2a1 1 0 0 0 1.414 0l4-4a1 1 0 0 0-1.414-1.414L7 8.586 5.707 7.293z'/%3e%3c/svg%3e");
235
- background-size: 150%;
236
- background-position: 50%;
237
- background-repeat: no-repeat;
238
- }
239
- .check-box[type="checkbox"]:disabled {
240
- background-color: #7f7f7f;
241
- }
242
- .box-shadow-green:hover {
243
- box-shadow: 0px 0px 20px 0px rgba(16, 86, 82, 0.5);
244
- }
245
-
246
- .fade-enter {
247
- opacity: 0;
248
- }
249
- .fade-enter-active {
250
- opacity: 1;
251
- transition: opacity 0.5s ease-in-out;
252
- }
253
- .fade-exit {
254
- opacity: 1;
255
- }
256
- .fade-exit-active {
257
- opacity: 0;
258
- transition: opacity 0.5s ease-in-out;
259
- }
260
-
261
- .text-gradient-green-to-red {
262
- background: var(
263
- --gradient-main,
264
- linear-gradient(269deg, #760023 0%, #105652 100%)
265
- );
266
- background-clip: text;
267
- -webkit-background-clip: text;
268
- -webkit-text-fill-color: transparent;
269
- }
1
+ @tailwind base;
2
+ @tailwind components;
3
+ @tailwind utilities;
4
+
5
+ .image-container {
6
+ display: -webkit-box;
7
+ display: -ms-flexbox;
8
+ display: flex;
9
+ }
10
+
11
+ @font-face {
12
+ font-family: "Pretendard-Medium";
13
+ src: url("./asset/fonts/Pretendard-Medium.otf") format("opentype");
14
+ }
15
+
16
+ @font-face {
17
+ font-family: "Pretendard-Bold";
18
+ src: url("./asset/fonts/Pretendard-Bold.otf") format("opentype");
19
+ }
20
+
21
+ @font-face {
22
+ font-family: "Pretendard-Light";
23
+ src: url("./asset/fonts/Pretendard-Light.otf") format("opentype");
24
+ }
25
+
26
+ @font-face {
27
+ font-family: "Kostar";
28
+ src: url("./asset/fonts/Kostar.ttf") format("truetype");
29
+ }
30
+
31
+ @font-face {
32
+ font-family: "NicoMoji";
33
+ src: url("./asset/fonts/NicoMoji.ttf") format("truetype");
34
+ }
35
+
36
+ @font-face {
37
+ font-family: "Megrim";
38
+ src: url("./asset/fonts/Megrim.ttf") format("truetype");
39
+ }
40
+
41
+ @font-face {
42
+ font-family: "Times-Newer-Roman-Bold";
43
+ src: url("./asset/fonts/TimesNewerRoman-Bold.otf") format("opentype");
44
+ }
45
+
46
+ @font-face {
47
+ font-family: "Times-Newer-Roman-BoldItalic";
48
+ src: url("./asset/fonts/TimesNewerRoman-BoldItalic.otf") format("opentype");
49
+ }
50
+
51
+ @font-face {
52
+ font-family: "PretendardVariable";
53
+ src: url("./asset/fonts/PretendardVariable.ttf") format("truetype");
54
+ }
55
+
56
+ input[type="date"]::-webkit-inner-spin-button,
57
+ input[type="date"]::-webkit-calendar-picker-indicator {
58
+ display: none;
59
+ -webkit-appearance: none;
60
+ }
61
+
62
+ ::-webkit-scrollbar {
63
+ width: 3px;
64
+ padding-right: 10px;
65
+ }
66
+
67
+ ::-webkit-scrollbar-track {
68
+ background-color: transparent;
69
+ }
70
+ ::-webkit-scrollbar-thumb {
71
+ background-color: #808080;
72
+ opacity: 0.5;
73
+ border-radius: 10px;
74
+ }
75
+
76
+ .box-shadow {
77
+ box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15);
78
+ }
79
+ .box-shadow-md {
80
+ box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
81
+ }
82
+ .box-shadow-sm {
83
+ box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
84
+ }
85
+ .border-gradient-green-to-red {
86
+ }
87
+
88
+ .x-shape {
89
+ position: relative;
90
+ width: 0.83625rem;
91
+ height: 0.83625rem;
92
+ }
93
+
94
+ .x-shape::before,
95
+ .x-shape::after {
96
+ content: "";
97
+ position: absolute;
98
+ top: 50%;
99
+ left: 50%;
100
+ width: 2.5px;
101
+ border-radius: 2px;
102
+ height: 100%;
103
+ background-color: white;
104
+ transform-origin: center;
105
+ }
106
+
107
+ .x-shape::before {
108
+ transform: translate(-50%, -50%) rotate(45deg);
109
+ }
110
+
111
+ .x-shape::after {
112
+ transform: translate(-50%, -50%) rotate(-45deg);
113
+ }
114
+
115
+ .border-inner {
116
+ box-shadow: 0 0 0 1px #e5e7eb inset, 0 4px 6px -1px rgba(0, 0, 0, 0.1),
117
+ 0 2px 4px -1px rgba(0, 0, 0, 0.06);
118
+ }
119
+ .box-shadow-focus:focus {
120
+ box-shadow: 0 0 0 1px #e5e7eb inset, 0 4px 6px -1px rgba(0, 0, 0, 0.1),
121
+ 0 2px 4px -1px rgba(0, 0, 0, 0.06);
122
+ }
123
+ .box-shadow-focus-red:focus {
124
+ box-shadow: 0px 0px 10px 0px #ff8383;
125
+ }
126
+ .box-green {
127
+ background: rgba(16, 86, 82, 0.1);
128
+ color: #105652;
129
+ }
130
+ .box-shadow-green-sm {
131
+ box-shadow: 0px 0px 10px 0px rgba(16, 86, 82, 0.38);
132
+ }
133
+ .box-green-focus:focus {
134
+ background: white;
135
+ color: black;
136
+ box-shadow: 0px 0px 10px 0px rgba(16, 86, 82, 0.38);
137
+ }
138
+ /* box-shadow: 0px 0px 10px 0px rgba(16, 86, 82, 0.38); */
139
+ .box-inner-shadow:hover {
140
+ box-shadow: 0 0 0 1px #e5e7eb inset, 0 4px 6px -1px rgba(0, 0, 0, 0.1),
141
+ 0 2px 4px -1px rgba(0, 0, 0, 0.06);
142
+ }
143
+ /* Date Picker Css */
144
+ .react-datepicker__day--selected {
145
+ background-color: #105652 !important;
146
+ }
147
+ .react-datepicker__header {
148
+ background: white !important;
149
+ border: none !important;
150
+ }
151
+ .react-datepicker {
152
+ box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15) !important;
153
+ border-radius: 0.375rem !important;
154
+ border: none !important;
155
+ }
156
+ .react-datepicker__day--keyboard-selected {
157
+ background-color: white !important;
158
+ color: black !important;
159
+ }
160
+ .react-datepicker__day--outside-month {
161
+ color: rgb(161 161 170) !important;
162
+ }
163
+ .react-datepicker__month-container {
164
+ padding-top: 1rem;
165
+ padding-left: 1rem;
166
+ padding-right: 1rem;
167
+ padding-bottom: 0.5rem;
168
+ }
169
+ .react-datepicker-popper {
170
+ transform: translate(0px 295px) !important;
171
+ }
172
+ .react-datepicker__input-container {
173
+ text-align: center !important;
174
+ border-radius: 0.375rem !important;
175
+ transition: all 0.3s;
176
+ }
177
+ .react-datepicker__input-container > input {
178
+ cursor: pointer !important;
179
+ }
180
+ .react-datepicker__input-container:hover {
181
+ box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15) !important;
182
+ }
183
+ .react-datepicker__navigation {
184
+ top: 18px !important;
185
+ }
186
+ .react-datepicker__navigation--next {
187
+ right: 20px !important;
188
+ }
189
+ .react-datepicker__navigation--previous {
190
+ left: 182px !important;
191
+ }
192
+ .react-datepicker__current-month {
193
+ text-align: left !important;
194
+ margin-left: 16px !important;
195
+ }
196
+ .react-datepicker__triangle {
197
+ display: none !important;
198
+ }
199
+ .react-datepicker__children-container {
200
+ width: 16rem !important;
201
+ }
202
+ /* toggle button */
203
+ .toggle[type="checkbox"]::before {
204
+ content: "";
205
+ position: absolute;
206
+ left: 1px;
207
+ top: 1px;
208
+ width: 1.1rem;
209
+ height: 1.1rem;
210
+ border-radius: 50%;
211
+ transform: scale(0.9);
212
+ background-color: white;
213
+ transition: left 100ms linear;
214
+ }
215
+ .toggle[type="checkbox"]:checked::before {
216
+ background-color: white;
217
+ left: 1.32rem;
218
+ }
219
+ .toggle[type="checkbox"]:checked {
220
+ background-color: #105652;
221
+ }
222
+ .toggle[type="checkbox"]:disabled {
223
+ opacity: 0.3;
224
+ cursor: not-allowed;
225
+ }
226
+ .toggle[type="checkbox"]:disabled + span {
227
+ opacity: 0.3;
228
+ cursor: not-allowed;
229
+ }
230
+
231
+ /* checkbox */
232
+ .check-box[type="checkbox"]:checked {
233
+ border-color: transparent;
234
+ background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M5.707 7.293a1 1 0 0 0-1.414 1.414l2 2a1 1 0 0 0 1.414 0l4-4a1 1 0 0 0-1.414-1.414L7 8.586 5.707 7.293z'/%3e%3c/svg%3e");
235
+ background-size: 150%;
236
+ background-position: 50%;
237
+ background-repeat: no-repeat;
238
+ }
239
+ .check-box[type="checkbox"]:disabled {
240
+ background-color: #7f7f7f;
241
+ }
242
+ .box-shadow-green:hover {
243
+ box-shadow: 0px 0px 20px 0px rgba(16, 86, 82, 0.5);
244
+ }
245
+
246
+ .fade-enter {
247
+ opacity: 0;
248
+ }
249
+ .fade-enter-active {
250
+ opacity: 1;
251
+ transition: opacity 0.5s ease-in-out;
252
+ }
253
+ .fade-exit {
254
+ opacity: 1;
255
+ }
256
+ .fade-exit-active {
257
+ opacity: 0;
258
+ transition: opacity 0.5s ease-in-out;
259
+ }
260
+
261
+ .text-gradient-green-to-red {
262
+ background: var(
263
+ --gradient-main,
264
+ linear-gradient(269deg, #760023 0%, #105652 100%)
265
+ );
266
+ background-clip: text;
267
+ -webkit-background-clip: text;
268
+ -webkit-text-fill-color: transparent;
269
+ }
@@ -31,7 +31,7 @@ export type State<T> = [T, StateAction<T>];
31
31
  * @property {"full"} full - Full size
32
32
  * @property {"full"} full - Full size
33
33
  */
34
- export type Size = "xxxs" | "xxs" | "mmd" | "xm" | "ml" | "5xs" | "4xs" | "3xs" | "2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "full" | "auto";
34
+ export type Size = "xxxs" | "xxs" | "mmd" | "xm" | "ml" | "5xs" | "4xs" | "3xs" | "2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | "full" | "auto";
35
35
  /**
36
36
  * Image size type
37
37
  * @enum {string}
@@ -36,6 +36,7 @@ export default function RowDesign({ item, stateAction, dataField, option, onClic
36
36
  text: option?.text ?? "text-white",
37
37
  width: "xs",
38
38
  height: "xs",
39
+ ...option,
39
40
  } }, rowId + title))) })] }));
40
41
  }
41
42
  function RowElement(props) {
package/layout/index.d.ts CHANGED
@@ -19,3 +19,4 @@ export { default as OlympiadLayout } from "./template/Olympiad/Olympiad.layout";
19
19
  export { default as Gomito } from "./template/Gomito";
20
20
  export { default as RegexamLayout } from "./template/Regexam/Regexam.layout";
21
21
  export { default as LegacyLayout } from "./template/Legacy/Legacy.layout";
22
+ export { default as MonthlyProgressReport } from "./template/MonthlyProgressReport";
package/layout/index.js CHANGED
@@ -19,3 +19,4 @@ export { default as OlympiadLayout } from "./template/Olympiad/Olympiad.layout";
19
19
  export { default as Gomito } from "./template/Gomito";
20
20
  export { default as RegexamLayout } from "./template/Regexam/Regexam.layout";
21
21
  export { default as LegacyLayout } from "./template/Legacy/Legacy.layout";
22
+ export { default as MonthlyProgressReport } from "./template/MonthlyProgressReport";