@team-monolith/cds 1.125.0 → 1.126.0

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 (197) hide show
  1. package/@types/emotion.d.ts +194 -194
  2. package/README.md +37 -37
  3. package/dist/CdsProvider.js +4 -4
  4. package/dist/components/AlertDialog/AlertDialog.js +54 -54
  5. package/dist/components/AlertDialog/AlertDialogActions.js +7 -7
  6. package/dist/components/AlertDialog/AlertDialogContent.js +8 -8
  7. package/dist/components/AlertDialog/AlertDialogTitle.js +34 -34
  8. package/dist/components/AnimatedButton.js +32 -32
  9. package/dist/components/Banner.js +45 -45
  10. package/dist/components/Book/Book.js +174 -174
  11. package/dist/components/Button.d.ts +0 -2
  12. package/dist/components/Button.js +181 -181
  13. package/dist/components/CheckboxInput.js +148 -148
  14. package/dist/components/FileTypeAlertDialog.js +6 -6
  15. package/dist/components/Input.js +53 -53
  16. package/dist/components/InputBase.js +72 -72
  17. package/dist/components/Modal.js +4 -4
  18. package/dist/components/OverflowTooltip.js +4 -4
  19. package/dist/components/Pagination.js +56 -56
  20. package/dist/components/PinInput.js +64 -64
  21. package/dist/components/Popover.js +27 -27
  22. package/dist/components/RadioInput.js +73 -73
  23. package/dist/components/Slider.js +58 -58
  24. package/dist/components/SquareButton.js +109 -109
  25. package/dist/components/Switch.js +69 -69
  26. package/dist/components/SwitchButton.js +107 -107
  27. package/dist/components/Tag.js +72 -72
  28. package/dist/components/Tooltip.js +19 -19
  29. package/dist/foundation/breakpoints.js +16 -16
  30. package/dist/foundation/typography.js +186 -186
  31. package/dist/icons/custom/colored/Microsoft.d.ts +5 -0
  32. package/dist/icons/custom/colored/Microsoft.js +7 -0
  33. package/dist/icons/custom/colored/ai-helper.svg +4 -4
  34. package/dist/icons/custom/colored/ai-quiz-color.svg +20 -20
  35. package/dist/icons/custom/colored/ai-socroom-color.svg +14 -14
  36. package/dist/icons/custom/colored/badge-color.svg +4 -4
  37. package/dist/icons/custom/colored/badge-gold.svg +11 -11
  38. package/dist/icons/custom/colored/badge-green.svg +11 -11
  39. package/dist/icons/custom/colored/badge-silver.svg +11 -11
  40. package/dist/icons/custom/colored/basic-plus.svg +31 -31
  41. package/dist/icons/custom/colored/basic.svg +3 -3
  42. package/dist/icons/custom/colored/board-color.svg +5 -5
  43. package/dist/icons/custom/colored/cast-cloudy-color.svg +6 -6
  44. package/dist/icons/custom/colored/cast-partly-color.svg +7 -7
  45. package/dist/icons/custom/colored/cast-rainbow-color.svg +13 -13
  46. package/dist/icons/custom/colored/cast-sunny-color.svg +4 -4
  47. package/dist/icons/custom/colored/clap-bronze.svg +8 -8
  48. package/dist/icons/custom/colored/clap-gold.svg +8 -8
  49. package/dist/icons/custom/colored/clap-silver.svg +8 -8
  50. package/dist/icons/custom/colored/class.svg +13 -13
  51. package/dist/icons/custom/colored/codap-color.svg +13 -13
  52. package/dist/icons/custom/colored/ebook-color.svg +5 -5
  53. package/dist/icons/custom/colored/embedded-color.svg +38 -38
  54. package/dist/icons/custom/colored/emo-clap-color.svg +252 -252
  55. package/dist/icons/custom/colored/emo-good-color.svg +68 -68
  56. package/dist/icons/custom/colored/emo-great-color.svg +67 -67
  57. package/dist/icons/custom/colored/emo-heart-color.svg +239 -239
  58. package/dist/icons/custom/colored/emo-hundred-color.svg +194 -194
  59. package/dist/icons/custom/colored/emo-neutral-color.svg +76 -76
  60. package/dist/icons/custom/colored/emo-stars-color.svg +121 -121
  61. package/dist/icons/custom/colored/emo-thumbup-color.svg +238 -238
  62. package/dist/icons/custom/colored/empty.svg +1 -1
  63. package/dist/icons/custom/colored/entry-color.svg +4 -4
  64. package/dist/icons/custom/colored/filename-all-color.svg +4 -4
  65. package/dist/icons/custom/colored/filename-doc-color.svg +5 -5
  66. package/dist/icons/custom/colored/filename-hwp-color.svg +6 -6
  67. package/dist/icons/custom/colored/filename-img-color.svg +6 -6
  68. package/dist/icons/custom/colored/filename-mp4-color.svg +5 -5
  69. package/dist/icons/custom/colored/filename-pdf-color.svg +12 -12
  70. package/dist/icons/custom/colored/filename-ppt-color.svg +6 -6
  71. package/dist/icons/custom/colored/filename-xls-color.svg +5 -5
  72. package/dist/icons/custom/colored/filename-zip-color.svg +5 -5
  73. package/dist/icons/custom/colored/google.svg +13 -13
  74. package/dist/icons/custom/colored/hand-fill.svg +4 -4
  75. package/dist/icons/custom/colored/index.d.ts +1 -0
  76. package/dist/icons/custom/colored/index.js +1 -0
  77. package/dist/icons/custom/colored/judge-color.svg +6 -6
  78. package/dist/icons/custom/colored/makecode-color.svg +4 -4
  79. package/dist/icons/custom/colored/master.svg +12 -12
  80. package/dist/icons/custom/colored/material.svg +6 -6
  81. package/dist/icons/custom/colored/medal-bronze.svg +9 -9
  82. package/dist/icons/custom/colored/medal-gold.svg +9 -9
  83. package/dist/icons/custom/colored/medal-silver.svg +9 -9
  84. package/dist/icons/custom/colored/microsoft.svg +6 -0
  85. package/dist/icons/custom/colored/pro.svg +4 -4
  86. package/dist/icons/custom/colored/problem.svg +7 -7
  87. package/dist/icons/custom/colored/python-color.svg +4 -4
  88. package/dist/icons/custom/colored/quiz-color.svg +12 -12
  89. package/dist/icons/custom/colored/resource-color.svg +13 -13
  90. package/dist/icons/custom/colored/scratch-color.svg +6 -6
  91. package/dist/icons/custom/colored/type-helper.svg +9 -9
  92. package/dist/icons/custom/colored/whale.svg +7 -7
  93. package/dist/icons/custom/colored/worksheet-color.svg +5 -5
  94. package/dist/icons/custom/default/ai-quiz.svg +8 -8
  95. package/dist/icons/custom/default/ai-socroom.svg +13 -13
  96. package/dist/icons/custom/default/badge.svg +4 -4
  97. package/dist/icons/custom/default/board.svg +5 -5
  98. package/dist/icons/custom/default/cast-cloudy.svg +3 -3
  99. package/dist/icons/custom/default/cast-partly.svg +4 -4
  100. package/dist/icons/custom/default/cast-rainbow.svg +12 -12
  101. package/dist/icons/custom/default/cast-sunny.svg +3 -3
  102. package/dist/icons/custom/default/codap.svg +11 -11
  103. package/dist/icons/custom/default/ebook.svg +3 -3
  104. package/dist/icons/custom/default/embedded.svg +4 -4
  105. package/dist/icons/custom/default/emo-clap.svg +6 -6
  106. package/dist/icons/custom/default/emo-good.svg +12 -12
  107. package/dist/icons/custom/default/emo-great.svg +12 -12
  108. package/dist/icons/custom/default/emo-heart.svg +5 -5
  109. package/dist/icons/custom/default/emo-hundred.svg +3 -3
  110. package/dist/icons/custom/default/emo-neutral.svg +14 -14
  111. package/dist/icons/custom/default/emo-stars.svg +14 -14
  112. package/dist/icons/custom/default/emo-thumbup.svg +3 -3
  113. package/dist/icons/custom/default/entry.svg +4 -4
  114. package/dist/icons/custom/default/fab.svg +10 -10
  115. package/dist/icons/custom/default/grant-alt.svg +5 -5
  116. package/dist/icons/custom/default/grant.svg +4 -4
  117. package/dist/icons/custom/default/hand-line.svg +3 -3
  118. package/dist/icons/custom/default/judge.svg +3 -3
  119. package/dist/icons/custom/default/makecode.svg +5 -5
  120. package/dist/icons/custom/default/pdf.svg +3 -3
  121. package/dist/icons/custom/default/python.svg +7 -7
  122. package/dist/icons/custom/default/quiz.svg +4 -4
  123. package/dist/icons/custom/default/resource.svg +11 -11
  124. package/dist/icons/custom/default/scratch.svg +3 -3
  125. package/dist/icons/custom/default/scroll-alt.svg +5 -5
  126. package/dist/icons/custom/default/scroll-fill.svg +4 -4
  127. package/dist/icons/custom/default/scroll-line.svg +5 -5
  128. package/dist/icons/custom/default/symbol.svg +4 -4
  129. package/dist/icons/custom/default/worksheet.svg +4 -4
  130. package/dist/icons/custom/svgrColoredTemplate.js +26 -26
  131. package/dist/icons/custom/svgrDefaultTemplate.js +26 -26
  132. package/dist/patterns/Accordion.js +20 -20
  133. package/dist/patterns/Dropdown/Dropdown.d.ts +0 -2
  134. package/dist/patterns/Dropdown/Dropdown.js +2 -3
  135. package/dist/patterns/Dropdown/DropdownItem/DropdownItem.js +58 -58
  136. package/dist/patterns/Dropdown/DropdownMenu/DropdownMenu.js +27 -27
  137. package/dist/patterns/Dropdown/DropdownMenu/style.js +19 -19
  138. package/dist/patterns/LexicalEditor/Plugins.js +36 -36
  139. package/dist/patterns/LexicalEditor/components/FileSelectInput.d.ts +0 -1
  140. package/dist/patterns/LexicalEditor/components/FileSelectInput.js +24 -24
  141. package/dist/patterns/LexicalEditor/components/InsertImageDialog/ImagePreview.js +4 -4
  142. package/dist/patterns/LexicalEditor/components/InsertImageDialog/InsertImageDialog.js +15 -15
  143. package/dist/patterns/LexicalEditor/components/InsertVideoDialog/InsertVideoDialog.js +17 -17
  144. package/dist/patterns/LexicalEditor/components/UploadFileDialog/UploadFileDialog.js +2 -2
  145. package/dist/patterns/LexicalEditor/hr.svg +3 -3
  146. package/dist/patterns/LexicalEditor/nodes/FileNode/FileComponent.js +44 -44
  147. package/dist/patterns/LexicalEditor/nodes/FileNode/FileDownloadButton.js +25 -25
  148. package/dist/patterns/LexicalEditor/nodes/ImageNode/ImageComponent.js +8 -8
  149. package/dist/patterns/LexicalEditor/nodes/ImageNode/ImageResizer.js +60 -60
  150. package/dist/patterns/LexicalEditor/nodes/ProblemInputNode/InputComponent.js +19 -19
  151. package/dist/patterns/LexicalEditor/nodes/ProblemInputNode/SegmentedInput.js +49 -49
  152. package/dist/patterns/LexicalEditor/nodes/ProblemInputNode/SettingForm/FormSolution.js +7 -7
  153. package/dist/patterns/LexicalEditor/nodes/ProblemInputNode/SettingForm/SettingForm.js +73 -73
  154. package/dist/patterns/LexicalEditor/nodes/ProblemInputNode/SettingForm/TextTypeDropdown.js +5 -5
  155. package/dist/patterns/LexicalEditor/nodes/ProblemInputNode/TextInput.js +7 -7
  156. package/dist/patterns/LexicalEditor/nodes/ProblemSelectNode/SelectBox/SelectBoxComponent.js +69 -69
  157. package/dist/patterns/LexicalEditor/nodes/ProblemSelectNode/SelectBox/SelectBoxEdit.js +3 -3
  158. package/dist/patterns/LexicalEditor/nodes/ProblemSelectNode/SelectBox/SelectBoxView.js +15 -15
  159. package/dist/patterns/LexicalEditor/nodes/ProblemSelectNode/SelectComponent.js +28 -28
  160. package/dist/patterns/LexicalEditor/nodes/ProblemSelectNode/SettingForm/FormSelection.js +54 -54
  161. package/dist/patterns/LexicalEditor/nodes/ProblemSelectNode/SettingForm/SettingForm.js +61 -61
  162. package/dist/patterns/LexicalEditor/nodes/SelfEvaluationNode/EvaluationComponent/Evaluation/Evaluation.js +75 -75
  163. package/dist/patterns/LexicalEditor/nodes/SelfEvaluationNode/EvaluationComponent/Evaluation/SettingForm/FormIconAndLabel/FormIconAndLabel.js +18 -18
  164. package/dist/patterns/LexicalEditor/nodes/SelfEvaluationNode/EvaluationComponent/Evaluation/SettingForm/FormIconAndLabel/FormLabel.js +7 -7
  165. package/dist/patterns/LexicalEditor/nodes/SelfEvaluationNode/EvaluationComponent/Evaluation/SettingForm/FormQuestion.js +28 -28
  166. package/dist/patterns/LexicalEditor/nodes/SelfEvaluationNode/EvaluationComponent/Evaluation/SettingForm/SettingForm.js +53 -53
  167. package/dist/patterns/LexicalEditor/nodes/SelfEvaluationNode/EvaluationComponent/EvaluationComponent.js +7 -7
  168. package/dist/patterns/LexicalEditor/nodes/SheetInputNode/InputComponent.js +25 -25
  169. package/dist/patterns/LexicalEditor/nodes/SheetInputNode/SettingForm.js +54 -54
  170. package/dist/patterns/LexicalEditor/nodes/SheetSelectNode/SelectComponent/SelectBox/SelectBoxComponent.js +54 -54
  171. package/dist/patterns/LexicalEditor/nodes/SheetSelectNode/SelectComponent/SelectBox/SelectBoxView.js +5 -5
  172. package/dist/patterns/LexicalEditor/nodes/SheetSelectNode/SelectComponent/SelectComponent.js +21 -21
  173. package/dist/patterns/LexicalEditor/nodes/SheetSelectNode/SelectComponent/SettingForm/FormSelection.js +42 -42
  174. package/dist/patterns/LexicalEditor/nodes/SheetSelectNode/SelectComponent/SettingForm/SettingForm.js +72 -72
  175. package/dist/patterns/LexicalEditor/nodes/VideoNode/VideoComponent.js +7 -7
  176. package/dist/patterns/LexicalEditor/plugins/ComponentAdderPlugin/ComponentAdder.js +51 -51
  177. package/dist/patterns/LexicalEditor/plugins/ComponentAdderPlugin/ComponentAdderPlugin.js +11 -11
  178. package/dist/patterns/LexicalEditor/plugins/ComponentAdderPlugin/menu.svg +7 -7
  179. package/dist/patterns/LexicalEditor/plugins/ComponentAdderPlugin/plus.svg +2 -2
  180. package/dist/patterns/LexicalEditor/plugins/ComponentPickerMenuPlugin/ComponentPickerMenuItem.js +32 -32
  181. package/dist/patterns/LexicalEditor/plugins/ComponentPickerMenuPlugin/ComponentPickerMenuList.js +32 -32
  182. package/dist/patterns/LexicalEditor/plugins/ComponentPickerMenuPlugin/ComponentPickerMenuPlugin.js +12 -12
  183. package/dist/patterns/LexicalEditor/plugins/ComponentPickerMenuPlugin/componentPickerOptionUtils.js +2 -2
  184. package/dist/patterns/LexicalEditor/plugins/FloatingLinkEditorPlugin/FloatingLinkEditor.js +49 -49
  185. package/dist/patterns/LexicalEditor/plugins/FloatingTextFormatToolbarPlugin/FloatingTextFormatPopup.js +36 -36
  186. package/dist/patterns/LexicalEditor/plugins/ParagraphPlaceholderPlugin/index.js +7 -7
  187. package/dist/patterns/LexicalEditor/theme.js +243 -243
  188. package/dist/patterns/SegmentedControl/SegmentedControlButton.js +10 -10
  189. package/dist/patterns/SegmentedControl/SegmentedControlGroup.js +8 -8
  190. package/dist/patterns/SegmentedControl/SegmentedControlSquareButton.js +2 -2
  191. package/dist/patterns/Tabs.js +43 -43
  192. package/dist/patterns/ToggleButtonGroup/ToggleButton.js +40 -40
  193. package/dist/patterns/ToggleButtonGroup/ToggleButtonGroup.js +11 -11
  194. package/dist/utils/hover.js +12 -12
  195. package/dist/utils/reset.js +19 -19
  196. package/dist/utils/visuallyHidden.js +10 -10
  197. package/package.json +109 -109
@@ -18,86 +18,86 @@ export function Evaluation(props) {
18
18
  onChange(newEvaluations);
19
19
  } })] }, index)))] }));
20
20
  }
21
- const Container = styled.div(({ onClick }) => css `
22
- ${onClick && "cursor: pointer;"}
23
- display: flex;
24
- flex-direction: column;
25
- align-items: flex-start;
26
- align-self: stretch;
21
+ const Container = styled.div(({ onClick }) => css `
22
+ ${onClick && "cursor: pointer;"}
23
+ display: flex;
24
+ flex-direction: column;
25
+ align-items: flex-start;
26
+ align-self: stretch;
27
27
  `);
28
- const Header = styled.div(({ theme }) => css `
29
- border-bottom: 1px solid ${theme.color.background.neutralAltActive};
30
- display: flex;
31
- padding: 8px 0px;
32
- justify-content: flex-end;
33
- align-items: center;
34
- gap: 8px;
35
- align-self: stretch;
28
+ const Header = styled.div(({ theme }) => css `
29
+ border-bottom: 1px solid ${theme.color.background.neutralAltActive};
30
+ display: flex;
31
+ padding: 8px 0px;
32
+ justify-content: flex-end;
33
+ align-items: center;
34
+ gap: 8px;
35
+ align-self: stretch;
36
36
  `);
37
- const LabelArea = styled.div `
38
- display: flex;
39
- width: ${TOGGLE_BUTTON_GROUP_WIDTH}px;
40
- justify-content: space-between;
41
- align-items: flex-start;
37
+ const LabelArea = styled.div `
38
+ display: flex;
39
+ width: ${TOGGLE_BUTTON_GROUP_WIDTH}px;
40
+ justify-content: space-between;
41
+ align-items: flex-start;
42
42
  `;
43
- const Label = styled.span(({ theme }) => css `
44
- color: ${theme.color.foreground.neutralBaseDisabled};
45
- text-align: center;
46
- /* Default/Label/12px-Md */
47
- font-family: Pretendard;
48
- font-size: 12px;
49
- font-style: normal;
50
- font-weight: 500;
51
- line-height: 16px; /* 133.333% */
43
+ const Label = styled.span(({ theme }) => css `
44
+ color: ${theme.color.foreground.neutralBaseDisabled};
45
+ text-align: center;
46
+ /* Default/Label/12px-Md */
47
+ font-family: Pretendard;
48
+ font-size: 12px;
49
+ font-style: normal;
50
+ font-weight: 500;
51
+ line-height: 16px; /* 133.333% */
52
52
  `);
53
- const Item = styled.div(({ theme }) => css `
54
- display: flex;
55
- padding: 4px 0px;
56
- align-items: center;
57
- gap: 8px;
58
- align-self: stretch;
59
- border-bottom: 1px solid ${theme.color.background.neutralAltActive};
53
+ const Item = styled.div(({ theme }) => css `
54
+ display: flex;
55
+ padding: 4px 0px;
56
+ align-items: center;
57
+ gap: 8px;
58
+ align-self: stretch;
59
+ border-bottom: 1px solid ${theme.color.background.neutralAltActive};
60
60
  `);
61
- const Index = styled.div(({ theme }) => css `
62
- display: flex;
63
- width: 20px;
64
- height: 20px;
65
- padding: 4px;
66
-
67
- user-select: none; /* Standard syntax */
68
-
69
- border-radius: 4px;
70
- background: ${theme.color.background.neutralBase};
71
- border: 1px solid ${theme.color.background.neutralAltActive};
72
-
73
- justify-content: center;
74
- align-items: center;
75
-
76
- color: ${theme.color.foreground.neutralBaseDisabled};
77
- font-family: ${theme.fontFamily.ui};
78
- font-size: 14px;
79
- font-weight: 800;
80
- line-height: 16px;
61
+ const Index = styled.div(({ theme }) => css `
62
+ display: flex;
63
+ width: 20px;
64
+ height: 20px;
65
+ padding: 4px;
66
+
67
+ user-select: none; /* Standard syntax */
68
+
69
+ border-radius: 4px;
70
+ background: ${theme.color.background.neutralBase};
71
+ border: 1px solid ${theme.color.background.neutralAltActive};
72
+
73
+ justify-content: center;
74
+ align-items: center;
75
+
76
+ color: ${theme.color.foreground.neutralBaseDisabled};
77
+ font-family: ${theme.fontFamily.ui};
78
+ font-size: 14px;
79
+ font-weight: 800;
80
+ line-height: 16px;
81
81
  `);
82
- const Question = styled.div(({ theme }) => css `
83
- display: flex;
84
- padding: 4px 8px;
85
- flex-direction: column;
86
- justify-content: center;
87
- align-items: flex-start;
88
- gap: 8px;
89
- flex: 1 0 0;
90
- align-self: stretch;
91
-
92
- color: ${theme.color.foreground.neutralBase};
93
- /* Default/Paragraph/16px-Rg */
94
- font-family: ${theme.fontFamily.ui};
95
- font-size: 16px;
96
- font-style: normal;
97
- font-weight: 400;
98
- line-height: 24px; /* 150% */
82
+ const Question = styled.div(({ theme }) => css `
83
+ display: flex;
84
+ padding: 4px 8px;
85
+ flex-direction: column;
86
+ justify-content: center;
87
+ align-items: flex-start;
88
+ gap: 8px;
89
+ flex: 1 0 0;
90
+ align-self: stretch;
91
+
92
+ color: ${theme.color.foreground.neutralBase};
93
+ /* Default/Paragraph/16px-Rg */
94
+ font-family: ${theme.fontFamily.ui};
95
+ font-size: 16px;
96
+ font-style: normal;
97
+ font-weight: 400;
98
+ line-height: 24px; /* 150% */
99
99
  `);
100
- const StyledToggleButtonGroup = styled(ToggleButtonGroup) `
101
- flex: none;
102
- width: ${TOGGLE_BUTTON_GROUP_WIDTH}px;
100
+ const StyledToggleButtonGroup = styled(ToggleButtonGroup) `
101
+ flex: none;
102
+ width: ${TOGGLE_BUTTON_GROUP_WIDTH}px;
103
103
  `;
@@ -14,9 +14,9 @@ export function FormIconAndLabel(props) {
14
14
  const { t } = useTranslation();
15
15
  return (_jsx(Controller, { control: control, name: "iconType", render: ({ field: { value, onChange } }) => {
16
16
  const { startIcon, title, icons } = getIconData(value, theme, t);
17
- return (_jsxs(_Fragment, { children: [_jsx(Dropdown, { label: t("아이콘: {{title}}", { title }), size: "small", color: "grey", closeOnItemClick: true, bold: true, startIcon: startIcon, endIcon: _jsx(ArrowDownSFillIcon, {}), menuProps: {
18
- menuCss: css `
19
- width: 216px;
17
+ return (_jsxs(_Fragment, { children: [_jsx(Dropdown, { label: t("아이콘: {{title}}", { title }), size: "small", color: "grey", closeOnItemClick: true, startIcon: startIcon, endIcon: _jsx(ArrowDownSFillIcon, {}), menuProps: {
18
+ menuCss: css `
19
+ width: 216px;
20
20
  `,
21
21
  anchorOrigin: {
22
22
  vertical: "bottom",
@@ -34,20 +34,20 @@ export function FormIconAndLabel(props) {
34
34
  }) }), Array.from({ length: labelsLength }).map((_, index) => (_jsxs(LabelLine, { children: [_jsx(Icon, { children: icons[index].onIcon }), _jsx(FormLabel, { control: control, index: index })] }, index)))] }));
35
35
  } }));
36
36
  }
37
- const LabelLine = styled.div `
38
- display: flex;
39
- align-items: flex-start;
40
- gap: 4px;
41
- align-self: stretch;
37
+ const LabelLine = styled.div `
38
+ display: flex;
39
+ align-items: flex-start;
40
+ gap: 4px;
41
+ align-self: stretch;
42
42
  `;
43
- const Icon = styled.div(({ theme }) => css `
44
- display: flex;
45
- min-width: 36px;
46
- min-height: 36px;
47
- justify-content: center;
48
- align-items: center;
49
- gap: 10px;
50
-
51
- border-radius: 8px;
52
- border: 0.5px solid ${theme.color.background.neutralAltActive};
43
+ const Icon = styled.div(({ theme }) => css `
44
+ display: flex;
45
+ min-width: 36px;
46
+ min-height: 36px;
47
+ justify-content: center;
48
+ align-items: center;
49
+ gap: 10px;
50
+
51
+ border-radius: 8px;
52
+ border: 0.5px solid ${theme.color.background.neutralAltActive};
53
53
  `);
@@ -22,13 +22,13 @@ export function FormLabel(props) {
22
22
  });
23
23
  return (_jsx(FormInput, { control: control, name: `labels.${index}`, rules: labelRules, size: "small", endIcon: _jsx(Counter, { error: Boolean(error), children: value.length + "/" + labelRules.maxLength }), fullWidth: true }));
24
24
  }
25
- const Counter = styled.span(({ theme, error }) => css `
25
+ const Counter = styled.span(({ theme, error }) => css `
26
26
  color: ${error
27
27
  ? theme.color.foreground.dangerActive
28
- : theme.color.foreground.neutralBase};
29
- font-family: ${theme.fontFamily.ui};
30
- font-size: 14px;
31
- font-style: normal;
32
- font-weight: 700;
33
- line-height: 20px; /* 142.857% */
28
+ : theme.color.foreground.neutralBase};
29
+ font-family: ${theme.fontFamily.ui};
30
+ font-size: 14px;
31
+ font-style: normal;
32
+ font-weight: 700;
33
+ line-height: 20px; /* 142.857% */
34
34
  `);
@@ -15,33 +15,33 @@ export function FormQuestion(props) {
15
15
  context: "스퀘어버튼, 렉시컬 3단계 평가 입력칸 도구 설정창",
16
16
  }) }))] }));
17
17
  }
18
- const Item = styled.div(({ theme }) => css `
19
- display: flex;
20
- padding: 4px 12px;
21
- align-items: center;
22
- gap: 4px;
23
- align-self: stretch;
24
- border-radius: 8px;
25
- background: ${theme.color.background.neutralAlt};
18
+ const Item = styled.div(({ theme }) => css `
19
+ display: flex;
20
+ padding: 4px 12px;
21
+ align-items: center;
22
+ gap: 4px;
23
+ align-self: stretch;
24
+ border-radius: 8px;
25
+ background: ${theme.color.background.neutralAlt};
26
26
  `);
27
- const Index = styled.div(({ theme }) => css `
28
- display: flex;
29
- width: 20px;
30
- height: 20px;
31
- padding: 4px;
32
-
33
- user-select: none; /* Standard syntax */
34
-
35
- border-radius: 4px;
36
- background: ${theme.color.background.neutralBase};
37
- border: 1px solid ${theme.color.background.neutralAltActive};
38
-
39
- justify-content: center;
40
- align-items: center;
41
-
42
- color: ${theme.color.foreground.neutralBaseDisabled};
43
- font-family: ${theme.fontFamily.ui};
44
- font-size: 14px;
45
- font-weight: 800;
46
- line-height: 16px;
27
+ const Index = styled.div(({ theme }) => css `
28
+ display: flex;
29
+ width: 20px;
30
+ height: 20px;
31
+ padding: 4px;
32
+
33
+ user-select: none; /* Standard syntax */
34
+
35
+ border-radius: 4px;
36
+ background: ${theme.color.background.neutralBase};
37
+ border: 1px solid ${theme.color.background.neutralAltActive};
38
+
39
+ justify-content: center;
40
+ align-items: center;
41
+
42
+ color: ${theme.color.foreground.neutralBaseDisabled};
43
+ font-family: ${theme.fontFamily.ui};
44
+ font-size: 14px;
45
+ font-weight: 800;
46
+ line-height: 16px;
47
47
  `);
@@ -41,9 +41,9 @@ export function SettingForm(props) {
41
41
  });
42
42
  onClose();
43
43
  };
44
- return (_jsxs(Form, { className: className, onSubmit: handleSubmit(onSubmit), children: [_jsxs(Title, { children: [_jsx(EmojiStickerLineIcon, { css: css `
45
- width: 12px;
46
- height: 12px;
44
+ return (_jsxs(Form, { className: className, onSubmit: handleSubmit(onSubmit), children: [_jsxs(Title, { children: [_jsx(EmojiStickerLineIcon, { css: css `
45
+ width: 12px;
46
+ height: 12px;
47
47
  ` }), t("3단계 평가")] }), _jsxs(Content, { children: [_jsxs(Left, { children: [_jsx(Label, { children: t("평가 항목") }), fields.map((field, index) => (_jsx(FormQuestion, { index: index, control: control, onDelete: index !== 0
48
48
  ? () => {
49
49
  remove(index);
@@ -53,61 +53,61 @@ export function SettingForm(props) {
53
53
  question: { text: getTexts(t, "placeholderEvaluationItem") },
54
54
  selectedLabelIndex: null,
55
55
  });
56
- } })] }), _jsxs(Right, { children: [_jsx(Label, { children: t("아이콘, 레이블") }), _jsx(FormIconAndLabel, { control: control, labelsLength: labels.length })] })] }), _jsxs(Buttons, { children: [_jsx(Button, { color: "grey", size: "xsmall", label: t("닫기", { context: "렉시컬 도구 설정창" }), onClick: onClose }), _jsx(Button, { color: "primary", size: "xsmall", label: t("이대로 넣기", { context: "렉시컬 도구 설정창" }), bold: true, type: "submit" })] })] }));
56
+ } })] }), _jsxs(Right, { children: [_jsx(Label, { children: t("아이콘, 레이블") }), _jsx(FormIconAndLabel, { control: control, labelsLength: labels.length })] })] }), _jsxs(Buttons, { children: [_jsx(Button, { color: "grey", size: "xsmall", label: t("닫기", { context: "렉시컬 도구 설정창" }), onClick: onClose }), _jsx(Button, { color: "primary", size: "xsmall", label: t("이대로 넣기", { context: "렉시컬 도구 설정창" }), type: "submit" })] })] }));
57
57
  }
58
- const Form = styled.form(({ theme }) => css `
59
- display: flex;
60
- flex-direction: column;
61
- border-radius: 6px;
62
- border: 1px solid ${theme.color.background.neutralAltActive};
63
- background: ${theme.color.background.neutralBase};
64
- box-shadow: ${shadows.shadow08};
58
+ const Form = styled.form(({ theme }) => css `
59
+ display: flex;
60
+ flex-direction: column;
61
+ border-radius: 6px;
62
+ border: 1px solid ${theme.color.background.neutralAltActive};
63
+ background: ${theme.color.background.neutralBase};
64
+ box-shadow: ${shadows.shadow08};
65
65
  `);
66
- const Title = styled.div(({ theme }) => css `
67
- display: flex;
68
- padding: 8px 12px;
69
- gap: 4px;
70
- align-items: center;
71
- color: ${theme.color.foreground.neutralBase};
72
- /* Default/Label/12px-Md */
73
- font-family: ${theme.fontFamily.ui};
74
- font-size: 12px;
75
- font-style: normal;
76
- font-weight: 500;
77
- line-height: 16px; /* 133.333% */
66
+ const Title = styled.div(({ theme }) => css `
67
+ display: flex;
68
+ padding: 8px 12px;
69
+ gap: 4px;
70
+ align-items: center;
71
+ color: ${theme.color.foreground.neutralBase};
72
+ /* Default/Label/12px-Md */
73
+ font-family: ${theme.fontFamily.ui};
74
+ font-size: 12px;
75
+ font-style: normal;
76
+ font-weight: 500;
77
+ line-height: 16px; /* 133.333% */
78
78
  `);
79
- const Content = styled.div(({ theme }) => css `
80
- display: flex;
81
- border-top: 1px solid ${theme.color.background.neutralAltActive};
82
- border-bottom: 1px solid ${theme.color.background.neutralAltActive};
79
+ const Content = styled.div(({ theme }) => css `
80
+ display: flex;
81
+ border-top: 1px solid ${theme.color.background.neutralAltActive};
82
+ border-bottom: 1px solid ${theme.color.background.neutralAltActive};
83
83
  `);
84
- const Left = styled.div `
85
- flex: 1;
86
- display: flex;
87
- flex-direction: column;
88
- gap: 12px;
89
- padding: 12px;
84
+ const Left = styled.div `
85
+ flex: 1;
86
+ display: flex;
87
+ flex-direction: column;
88
+ gap: 12px;
89
+ padding: 12px;
90
90
  `;
91
- const Right = styled.div `
92
- width: 240px;
93
- display: flex;
94
- flex-direction: column;
95
- gap: 8px;
96
- padding: 12px;
91
+ const Right = styled.div `
92
+ width: 240px;
93
+ display: flex;
94
+ flex-direction: column;
95
+ gap: 8px;
96
+ padding: 12px;
97
97
  `;
98
- const Label = styled.div(({ theme }) => css `
99
- color: ${theme.color.foreground.neutralBaseDisabled};
100
- /* Default/Label/12px-Md */
101
- font-family: ${theme.fontFamily.ui};
102
- font-size: 12px;
103
- font-style: normal;
104
- font-weight: 500;
105
- line-height: 16px; /* 133.333% */
98
+ const Label = styled.div(({ theme }) => css `
99
+ color: ${theme.color.foreground.neutralBaseDisabled};
100
+ /* Default/Label/12px-Md */
101
+ font-family: ${theme.fontFamily.ui};
102
+ font-size: 12px;
103
+ font-style: normal;
104
+ font-weight: 500;
105
+ line-height: 16px; /* 133.333% */
106
106
  `);
107
- const Buttons = styled.div `
108
- display: flex;
109
- padding: 12px;
110
- justify-content: flex-end;
111
- align-items: center;
112
- gap: 8px;
107
+ const Buttons = styled.div `
108
+ display: flex;
109
+ padding: 12px;
110
+ justify-content: flex-end;
111
+ align-items: center;
112
+ gap: 8px;
113
113
  `;
@@ -46,14 +46,14 @@ export function EvaluationComponent(props) {
46
46
  } }));
47
47
  }
48
48
  // edit
49
- return (_jsxs(_Fragment, { children: [_jsxs("div", { css: css `
50
- display: flex;
51
- gap: 4px;
52
- `, children: [_jsx(Evaluation, { css: css `
53
- width: ${EVALUATION_EDIT_WIDTH}px;
49
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { css: css `
50
+ display: flex;
51
+ gap: 4px;
52
+ `, children: [_jsx(Evaluation, { css: css `
53
+ width: ${EVALUATION_EDIT_WIDTH}px;
54
54
  `, data: data, evaluations: evaluations, onClick: () => setSettingOpen((open) => !open) }), _jsx(SquareButton, { size: "small", color: "icon", icon: _jsx(Settings3FillIcon, {}), onClick: () => {
55
55
  setSettingOpen((open) => !open);
56
- }, "aria-label": t("평가 칸 설정") })] }), settingOpen && (_jsx(SettingForm, { css: css `
57
- width: ${EVALUATION_EDIT_WIDTH}px;
56
+ }, "aria-label": t("평가 칸 설정") })] }), settingOpen && (_jsx(SettingForm, { css: css `
57
+ width: ${EVALUATION_EDIT_WIDTH}px;
58
58
  `, iconType: iconType, labels: labels, evaluations: evaluations, nodeKey: nodeKey, onClose: () => setSettingOpen(false) }))] }));
59
59
  }
@@ -40,10 +40,10 @@ export function InputComponent(props) {
40
40
  };
41
41
  // view
42
42
  if (!isEditable) {
43
- return (_jsx(Input, { multiline: multiline, disableAutosize: true, css: css `
44
- textarea {
45
- height: ${TEXTAREA_HEIGHT}px;
46
- }
43
+ return (_jsx(Input, { multiline: multiline, disableAutosize: true, css: css `
44
+ textarea {
45
+ height: ${TEXTAREA_HEIGHT}px;
46
+ }
47
47
  `, inputProps: freezeProblemNode
48
48
  ? { readOnly: true }
49
49
  : {
@@ -54,32 +54,32 @@ export function InputComponent(props) {
54
54
  }, fullWidth: true }));
55
55
  }
56
56
  // edit
57
- return (_jsxs(_Fragment, { children: [_jsxs("div", { css: css `
58
- display: flex;
59
- align-items: center;
60
- gap: 4px;
57
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { css: css `
58
+ display: flex;
59
+ align-items: center;
60
+ gap: 4px;
61
61
  `, children: [_jsx(VirtualInput, { onClick: () => setSettingOpen((open) => !open), css: multiline &&
62
- css `
63
- height: ${TEXTAREA_HEIGHT + 2 * INPUT_VERTICAL_PADDING}px;
62
+ css `
63
+ height: ${TEXTAREA_HEIGHT + 2 * INPUT_VERTICAL_PADDING}px;
64
64
  `, children: multiline
65
65
  ? t("서술형 입력 칸", { context: "렉시컬 단답형/서술형 도구" })
66
66
  : t("단답형 입력 칸", { context: "렉시컬 단답형/서술형 도구" }) }), _jsx(SquareButton, { size: "small", color: "icon", icon: _jsx(Settings3FillIcon, {}), onClick: () => setSettingOpen((open) => !open), "aria-label": t("입력 칸 설정", {
67
67
  context: "렉시컬 단답형/서술형 도구",
68
68
  }) })] }), settingOpen && (_jsx(SettingForm, { multiline: multiline, placeholder: placeholder, nodeKey: nodeKey, onClose: () => setSettingOpen(false) }))] }));
69
69
  }
70
- const VirtualInput = styled.div(({ theme }) => css `
71
- box-sizing: border-box;
72
- height: 36px;
73
- width: 400px;
74
- padding: ${INPUT_VERTICAL_PADDING}px 16px;
75
- align-items: center;
76
- border-radius: 8px;
77
- background: ${theme.color.background.neutralAlt};
78
- cursor: pointer;
79
- color: ${theme.color.foreground.neutralBaseDisabled};
80
- font-family: ${theme.fontFamily.ui};
81
- font-size: 14px;
82
- font-style: normal;
83
- font-weight: 400;
84
- line-height: 20px; /* 142.857% */
70
+ const VirtualInput = styled.div(({ theme }) => css `
71
+ box-sizing: border-box;
72
+ height: 36px;
73
+ width: 400px;
74
+ padding: ${INPUT_VERTICAL_PADDING}px 16px;
75
+ align-items: center;
76
+ border-radius: 8px;
77
+ background: ${theme.color.background.neutralAlt};
78
+ cursor: pointer;
79
+ color: ${theme.color.foreground.neutralBaseDisabled};
80
+ font-family: ${theme.fontFamily.ui};
81
+ font-size: 14px;
82
+ font-style: normal;
83
+ font-weight: 400;
84
+ line-height: 20px; /* 142.857% */
85
85
  `);
@@ -31,66 +31,66 @@ export function SettingForm(props) {
31
31
  });
32
32
  onClose();
33
33
  };
34
- return (_jsxs(Form, { onSubmit: handleSubmit(onSettingSubmit), children: [_jsxs(Title, { children: [_jsx(InputMethodLineIcon, { css: css `
35
- width: 12px;
36
- height: 12px;
34
+ return (_jsxs(Form, { onSubmit: handleSubmit(onSettingSubmit), children: [_jsxs(Title, { children: [_jsx(InputMethodLineIcon, { css: css `
35
+ width: 12px;
36
+ height: 12px;
37
37
  ` }), multiline
38
38
  ? t("서술형 입력 칸", { context: "렉시컬 단답형/서술형 도구" })
39
- : t("단답형 입력 칸", { context: "렉시컬 단답형/서술형 도구" })] }), _jsx(Content, { children: _jsxs(FormArea, { children: [_jsxs(Label, { children: [t("자리 표시자", { context: "렉시컬 단답형/서술형 도구" }), _jsx(Tooltip, { text: getTexts(t, "descriptionDefaultInputText"), placement: "top", children: _jsx(QuestionFillIcon, { css: css `
40
- width: 12px;
41
- height: 12px;
42
- ` }) })] }), _jsx(Controller, { name: "placeholder", control: control, render: ({ field: { value, onChange } }) => (_jsx(Input, { size: "small", color: "default", value: value, onChange: onChange, placeholder: getTexts(t, "exampleEnterHere") })) })] }) }), _jsxs(Buttons, { children: [_jsx(Button, { color: "grey", size: "xsmall", label: t("닫기", { context: "렉시컬 도구 설정창" }), onClick: onClose }), _jsx(Button, { color: "primary", size: "xsmall", label: t("이대로 넣기", { context: "렉시컬 도구 설정창" }), bold: true, type: "submit" })] })] }));
39
+ : t("단답형 입력 칸", { context: "렉시컬 단답형/서술형 도구" })] }), _jsx(Content, { children: _jsxs(FormArea, { children: [_jsxs(Label, { children: [t("자리 표시자", { context: "렉시컬 단답형/서술형 도구" }), _jsx(Tooltip, { text: getTexts(t, "descriptionDefaultInputText"), placement: "top", children: _jsx(QuestionFillIcon, { css: css `
40
+ width: 12px;
41
+ height: 12px;
42
+ ` }) })] }), _jsx(Controller, { name: "placeholder", control: control, render: ({ field: { value, onChange } }) => (_jsx(Input, { size: "small", color: "default", value: value, onChange: onChange, placeholder: getTexts(t, "exampleEnterHere") })) })] }) }), _jsxs(Buttons, { children: [_jsx(Button, { color: "grey", size: "xsmall", label: t("닫기", { context: "렉시컬 도구 설정창" }), onClick: onClose }), _jsx(Button, { color: "primary", size: "xsmall", label: t("이대로 넣기", { context: "렉시컬 도구 설정창" }), type: "submit" })] })] }));
43
43
  }
44
- const Form = styled.form(({ theme }) => css `
45
- display: flex;
46
- width: 620px;
47
- flex-direction: column;
48
- border-radius: 6px;
49
- border: 1px solid ${theme.color.background.neutralAltActive};
50
- background: ${theme.color.background.neutralBase};
51
- box-shadow: ${shadows.shadow08};
44
+ const Form = styled.form(({ theme }) => css `
45
+ display: flex;
46
+ width: 620px;
47
+ flex-direction: column;
48
+ border-radius: 6px;
49
+ border: 1px solid ${theme.color.background.neutralAltActive};
50
+ background: ${theme.color.background.neutralBase};
51
+ box-shadow: ${shadows.shadow08};
52
52
  `);
53
- const Title = styled.div(({ theme }) => css `
54
- display: flex;
55
- padding: 8px 12px;
56
- gap: 4px;
57
- align-items: center;
58
- color: ${theme.color.foreground.neutralBase};
59
- /* Default/Label/12px-Md */
60
- font-family: ${theme.fontFamily.ui};
61
- font-size: 12px;
62
- font-style: normal;
63
- font-weight: 500;
64
- line-height: 16px; /* 133.333% */
53
+ const Title = styled.div(({ theme }) => css `
54
+ display: flex;
55
+ padding: 8px 12px;
56
+ gap: 4px;
57
+ align-items: center;
58
+ color: ${theme.color.foreground.neutralBase};
59
+ /* Default/Label/12px-Md */
60
+ font-family: ${theme.fontFamily.ui};
61
+ font-size: 12px;
62
+ font-style: normal;
63
+ font-weight: 500;
64
+ line-height: 16px; /* 133.333% */
65
65
  `);
66
- const Content = styled.div(({ theme }) => css `
67
- display: flex;
68
- border-top: 1px solid ${theme.color.background.neutralAltActive};
69
- border-bottom: 1px solid ${theme.color.background.neutralAltActive};
66
+ const Content = styled.div(({ theme }) => css `
67
+ display: flex;
68
+ border-top: 1px solid ${theme.color.background.neutralAltActive};
69
+ border-bottom: 1px solid ${theme.color.background.neutralAltActive};
70
70
  `);
71
- const FormArea = styled.div `
72
- width: 240px;
73
- display: flex;
74
- flex-direction: column;
75
- gap: 8px;
76
- padding: 12px;
71
+ const FormArea = styled.div `
72
+ width: 240px;
73
+ display: flex;
74
+ flex-direction: column;
75
+ gap: 8px;
76
+ padding: 12px;
77
77
  `;
78
- const Label = styled.div(({ theme }) => css `
79
- display: flex;
80
- gap: 4px;
81
- align-items: center;
82
- color: ${theme.color.foreground.neutralBaseDisabled};
83
- /* Default/Label/12px-Md */
84
- font-family: ${theme.fontFamily.ui};
85
- font-size: 12px;
86
- font-style: normal;
87
- font-weight: 500;
88
- line-height: 16px; /* 133.333% */
78
+ const Label = styled.div(({ theme }) => css `
79
+ display: flex;
80
+ gap: 4px;
81
+ align-items: center;
82
+ color: ${theme.color.foreground.neutralBaseDisabled};
83
+ /* Default/Label/12px-Md */
84
+ font-family: ${theme.fontFamily.ui};
85
+ font-size: 12px;
86
+ font-style: normal;
87
+ font-weight: 500;
88
+ line-height: 16px; /* 133.333% */
89
89
  `);
90
- const Buttons = styled.div `
91
- display: flex;
92
- padding: 12px;
93
- justify-content: flex-end;
94
- align-items: center;
95
- gap: 8px;
90
+ const Buttons = styled.div `
91
+ display: flex;
92
+ padding: 12px;
93
+ justify-content: flex-end;
94
+ align-items: center;
95
+ gap: 8px;
96
96
  `;