@elice/material-quiz 1.240718.0-trasncript.2 → 1.240718.1

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 (127) hide show
  1. package/cjs/components/eb-sortable/EbDraggable.js +33 -42
  2. package/cjs/components/eb-sortable/EbDroppable.js +20 -27
  3. package/cjs/components/markdown-editor/index.d.ts +2 -1
  4. package/cjs/components/markdown-editor/index.js +10 -19
  5. package/cjs/components/material-quiz/MaterialQuiz.js +83 -114
  6. package/cjs/components/material-quiz/MaterialQuizAnswerExplanation.js +29 -36
  7. package/cjs/components/material-quiz/MaterialQuizInfo.js +149 -151
  8. package/cjs/components/material-quiz/MaterialQuizSelectMultiple.js +127 -175
  9. package/cjs/components/material-quiz/MaterialQuizSelectMultipleOrder.js +286 -360
  10. package/cjs/components/material-quiz/MaterialQuizSelectOne.js +126 -172
  11. package/cjs/components/material-quiz/MaterialQuizShimmer.js +39 -46
  12. package/cjs/components/material-quiz/MaterialQuizText.js +115 -163
  13. package/cjs/components/material-quiz/QuizResultBadge.js +22 -32
  14. package/cjs/components/material-quiz/QuizSubmitStatusText.js +16 -21
  15. package/cjs/components/material-quiz/constants/color.js +5 -5
  16. package/cjs/components/material-quiz/context/MaterialQuizContext.d.ts +1 -1
  17. package/cjs/components/material-quiz/context/MaterialQuizContext.js +93 -156
  18. package/cjs/components/material-quiz/material-quiz-group/MaterialQuizGroup.js +161 -259
  19. package/cjs/components/material-quiz/material-quiz-group/MaterialQuizGroupDesktop.js +100 -134
  20. package/cjs/components/material-quiz/material-quiz-group/MaterialQuizGroupMobile.js +101 -130
  21. package/cjs/components/material-quiz/material-quiz-group/MaterialQuizGroupOptionItem.js +52 -64
  22. package/cjs/components/material-quiz/material-quiz-group/context/context.js +1 -5
  23. package/cjs/components/material-quiz-edit/MaterialQuizEdit.js +36 -47
  24. package/cjs/components/material-quiz-edit/MaterialQuizEditContent.js +232 -280
  25. package/cjs/components/material-quiz-edit/context.js +2 -8
  26. package/cjs/components/material-quiz-edit/options/OptionEditor.js +46 -70
  27. package/cjs/components/material-quiz-edit/options/OptionSelectMultiple.js +148 -174
  28. package/cjs/components/material-quiz-edit/options/OptionSelectMultipleOrder.js +149 -175
  29. package/cjs/components/material-quiz-edit/options/OptionSelectOne.js +144 -164
  30. package/cjs/components/material-quiz-edit/options/OptionText.js +82 -90
  31. package/cjs/components/material-quiz-edit/options/options-group/OptionGroup.js +8 -9
  32. package/cjs/components/material-quiz-edit/options/options-group/OptionGroupAnswerInfo.js +112 -156
  33. package/cjs/components/material-quiz-edit/options/options-group/OptionGroupAnswerListItem.js +196 -288
  34. package/cjs/components/material-quiz-edit/options/options-group/OptionGroupGroupInfo.js +75 -88
  35. package/cjs/components/material-quiz-edit/options/options-group/OptionGroupGroupListItem.js +92 -108
  36. package/cjs/components/material-quiz-edit/utils/checkTwoDimensionArray.js +1 -5
  37. package/cjs/components/material-quiz-edit/utils/editValue.js +12 -21
  38. package/cjs/components/shared/QuestionBox.js +165 -198
  39. package/cjs/components/shared/QuizDraggbleDroppedOption.js +12 -11
  40. package/cjs/components/shared/QuizDraggbleDummyOption.js +16 -23
  41. package/cjs/components/shared/QuizDraggbleOption.js +59 -65
  42. package/cjs/components/shared/StyledMarkdown.js +1 -5
  43. package/cjs/components/shared/question-checkbox/QuestionCheckbox.js +7 -13
  44. package/cjs/components/shared/question-checkbox/QuestionCheckboxContext.d.ts +1 -1
  45. package/cjs/components/shared/question-checkbox/QuestionCheckboxContext.js +17 -24
  46. package/cjs/components/shared/question-checkbox/QuestionCheckboxOption.js +68 -59
  47. package/cjs/components/shared/question-radio/QuestionRadio.js +7 -13
  48. package/cjs/components/shared/question-radio/QuestionRadioContext.d.ts +1 -1
  49. package/cjs/components/shared/question-radio/QuestionRadioContext.js +17 -24
  50. package/cjs/components/shared/question-radio/QuestionRadioOption.js +59 -52
  51. package/cjs/components/shared/utils/getQuestionStatusStyle.js +9 -7
  52. package/cjs/components/shared/utils/mergeRefs.js +6 -15
  53. package/cjs/constant/element.js +3 -3
  54. package/cjs/helpers/index.js +10 -8
  55. package/cjs/hooks/useCaculatePassage.js +20 -21
  56. package/es/components/eb-sortable/EbDraggable.js +33 -37
  57. package/es/components/eb-sortable/EbDroppable.js +20 -22
  58. package/es/components/markdown-editor/index.d.ts +2 -1
  59. package/es/components/markdown-editor/index.js +10 -15
  60. package/es/components/material-quiz/MaterialQuiz.js +83 -109
  61. package/es/components/material-quiz/MaterialQuizAnswerExplanation.js +29 -32
  62. package/es/components/material-quiz/MaterialQuizInfo.js +150 -148
  63. package/es/components/material-quiz/MaterialQuizSelectMultiple.js +127 -171
  64. package/es/components/material-quiz/MaterialQuizSelectMultipleOrder.js +287 -356
  65. package/es/components/material-quiz/MaterialQuizSelectOne.js +126 -168
  66. package/es/components/material-quiz/MaterialQuizShimmer.js +39 -42
  67. package/es/components/material-quiz/MaterialQuizText.js +115 -158
  68. package/es/components/material-quiz/QuizResultBadge.js +22 -27
  69. package/es/components/material-quiz/QuizSubmitStatusText.js +16 -17
  70. package/es/components/material-quiz/constants/color.js +5 -5
  71. package/es/components/material-quiz/context/MaterialQuizContext.d.ts +1 -1
  72. package/es/components/material-quiz/context/MaterialQuizContext.js +94 -153
  73. package/es/components/material-quiz/material-quiz-group/MaterialQuizGroup.js +161 -253
  74. package/es/components/material-quiz/material-quiz-group/MaterialQuizGroupDesktop.js +100 -129
  75. package/es/components/material-quiz/material-quiz-group/MaterialQuizGroupMobile.js +101 -125
  76. package/es/components/material-quiz/material-quiz-group/MaterialQuizGroupOptionItem.js +52 -60
  77. package/es/components/material-quiz/material-quiz-group/context/context.js +1 -1
  78. package/es/components/material-quiz-edit/MaterialQuizEdit.js +36 -43
  79. package/es/components/material-quiz-edit/MaterialQuizEditContent.js +229 -272
  80. package/es/components/material-quiz-edit/context.js +2 -4
  81. package/es/components/material-quiz-edit/options/OptionEditor.js +46 -64
  82. package/es/components/material-quiz-edit/options/OptionSelectMultiple.js +148 -170
  83. package/es/components/material-quiz-edit/options/OptionSelectMultipleOrder.js +149 -171
  84. package/es/components/material-quiz-edit/options/OptionSelectOne.js +144 -159
  85. package/es/components/material-quiz-edit/options/OptionText.js +82 -86
  86. package/es/components/material-quiz-edit/options/options-group/OptionGroup.js +8 -9
  87. package/es/components/material-quiz-edit/options/options-group/OptionGroupAnswerInfo.js +112 -151
  88. package/es/components/material-quiz-edit/options/options-group/OptionGroupAnswerListItem.js +197 -283
  89. package/es/components/material-quiz-edit/options/options-group/OptionGroupGroupInfo.js +75 -83
  90. package/es/components/material-quiz-edit/options/options-group/OptionGroupGroupListItem.js +92 -103
  91. package/es/components/material-quiz-edit/utils/checkTwoDimensionArray.js +1 -5
  92. package/es/components/material-quiz-edit/utils/editValue.js +12 -17
  93. package/es/components/shared/QuestionBox.js +165 -192
  94. package/es/components/shared/QuizDraggbleDroppedOption.js +12 -11
  95. package/es/components/shared/QuizDraggbleDummyOption.js +16 -19
  96. package/es/components/shared/QuizDraggbleOption.js +59 -61
  97. package/es/components/shared/StyledMarkdown.js +1 -1
  98. package/es/components/shared/question-checkbox/QuestionCheckbox.js +7 -9
  99. package/es/components/shared/question-checkbox/QuestionCheckboxContext.d.ts +1 -1
  100. package/es/components/shared/question-checkbox/QuestionCheckboxContext.js +17 -20
  101. package/es/components/shared/question-checkbox/QuestionCheckboxOption.js +68 -54
  102. package/es/components/shared/question-radio/QuestionRadio.js +7 -9
  103. package/es/components/shared/question-radio/QuestionRadioContext.d.ts +1 -1
  104. package/es/components/shared/question-radio/QuestionRadioContext.js +17 -20
  105. package/es/components/shared/question-radio/QuestionRadioOption.js +59 -47
  106. package/es/components/shared/utils/getQuestionStatusStyle.js +9 -7
  107. package/es/components/shared/utils/mergeRefs.js +6 -15
  108. package/es/constant/element.js +3 -3
  109. package/es/helpers/index.js +10 -8
  110. package/es/hooks/useCaculatePassage.js +20 -21
  111. package/package.json +15 -12
  112. package/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -423
  113. package/cjs/components/material-quiz/index.js +0 -9
  114. package/cjs/components/material-quiz/locales/index.js +0 -13
  115. package/cjs/components/material-quiz-edit/index.js +0 -7
  116. package/cjs/components/material-quiz-edit/locales/index.js +0 -13
  117. package/cjs/components/shared/index.js +0 -19
  118. package/cjs/constant/index.js +0 -9
  119. package/cjs/hooks/index.js +0 -7
  120. package/es/_virtual/_rollupPluginBabelHelpers.js +0 -408
  121. package/es/components/material-quiz/index.js +0 -2
  122. package/es/components/material-quiz/locales/index.js +0 -4
  123. package/es/components/material-quiz-edit/index.js +0 -1
  124. package/es/components/material-quiz-edit/locales/index.js +0 -4
  125. package/es/components/shared/index.js +0 -7
  126. package/es/constant/index.js +0 -1
  127. package/es/hooks/index.js +0 -1
@@ -2,7 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var jsxRuntime = require('react/jsx-runtime');
6
5
  var React = require('react');
7
6
  var blocks = require('@elice/blocks');
8
7
  var designTokens = require('@elice/design-tokens');
@@ -14,174 +13,141 @@ var MaterialQuizContext = require('../context/MaterialQuizContext.js');
14
13
  var context = require('./context/context.js');
15
14
  var MaterialQuizGroupOptionItem = require('./MaterialQuizGroupOptionItem.js');
16
15
 
17
- function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
18
-
19
- var React__default = /*#__PURE__*/_interopDefaultCompat(React);
20
- var styled__default = /*#__PURE__*/_interopDefaultCompat(styled);
21
-
22
- var QUIZ_OPTIONS_CONTENT_WIDTH = 534;
23
- var StyledQuizAnswerWrapper = styled__default.default.div.withConfig({
16
+ const QUIZ_OPTIONS_CONTENT_WIDTH = 534;
17
+ const StyledQuizAnswerWrapper = styled.div.withConfig({
24
18
  componentId: "sc-18trt81-0"
25
19
  })(["display:flex;flex-direction:column;flex:0 0 calc((100% - ", "px) / 2);"], QUIZ_OPTIONS_CONTENT_WIDTH);
26
- var StyledQuizAnswerDropzoneWrapper = styled__default.default.div.withConfig({
20
+ const StyledQuizAnswerDropzoneWrapper = styled.div.withConfig({
27
21
  componentId: "sc-18trt81-1"
28
22
  })(["padding:1rem;border-radius:0.5rem;background:", ";&:not(:last-child){margin-bottom:1rem;}"], designTokens.base.color.white);
29
- var StyledQuizAnswerDropzone = styled__default.default(EbDroppable.default).withConfig({
23
+ const StyledQuizAnswerDropzone = styled(EbDroppable.default).withConfig({
30
24
  componentId: "sc-18trt81-2"
31
- })(["display:flex;flex-wrap:wrap;gap:0.5rem;justify-content:", ";align-items:", ";min-width:12.5rem;min-height:16.25rem;padding:0.5rem;border-radius:0.5rem;background:", ";text-align:center;outline:1px dashed ", ";&.ui-droppable-hover{outline:1px dashed ", ";}"], function (_ref) {
32
- var isGroupAnswer = _ref.isGroupAnswer;
33
- return isGroupAnswer ? 'flex-start' : 'center';
34
- }, function (_ref2) {
35
- var isGroupAnswer = _ref2.isGroupAnswer;
36
- return isGroupAnswer ? 'flex-start' : 'center';
37
- }, designTokens.base.color.gray1, designTokens.base.color.gray3, designTokens.base.color.navy4);
38
- var StyledQuizOptions = styled__default.default.div.withConfig({
25
+ })(["display:flex;flex-wrap:wrap;gap:0.5rem;justify-content:", ";align-items:", ";min-width:12.5rem;min-height:16.25rem;padding:0.5rem;border-radius:0.5rem;background:", ";text-align:center;outline:1px dashed ", ";&.ui-droppable-hover{outline:1px dashed ", ";}"], ({
26
+ isGroupAnswer
27
+ }) => isGroupAnswer ? 'flex-start' : 'center', ({
28
+ isGroupAnswer
29
+ }) => isGroupAnswer ? 'flex-start' : 'center', designTokens.base.color.gray1, designTokens.base.color.gray3, designTokens.base.color.navy4);
30
+ const StyledQuizOptions = styled.div.withConfig({
39
31
  componentId: "sc-18trt81-3"
40
32
  })(["display:flex;flex-direction:column;width:26.125rem;height:fit-content;padding:1rem;background-color:", ";border-radius:0.5rem;outline:1px dashed ", ";"], designTokens.base.color.navy6, designTokens.base.color.navy4);
41
- var StyledQuizOptionsDropzone = styled__default.default(EbDroppable.default).withConfig({
33
+ const StyledQuizOptionsDropzone = styled(EbDroppable.default).withConfig({
42
34
  componentId: "sc-18trt81-4"
43
35
  })(["display:flex;flex-wrap:wrap;gap:1rem;min-height:10.25rem;border-radius:0.5rem;outline:1px dashed ", ";&.ui-droppable-hover{outline:1px dashed ", ";}"], designTokens.base.color.navy4, designTokens.base.color.gray4);
44
- var MaterialQuizGroupDesktop = function MaterialQuizGroupDesktop() {
45
- var intl$1 = intl.useRawEliceIntl();
46
- var _useMaterialQuizState = MaterialQuizContext.useMaterialQuizState(),
47
- userId = _useMaterialQuizState.userId;
48
- var _React$useContext = React__default.default.useContext(context.default),
49
- groupList = _React$useContext.groupList,
50
- currentAnswerList = _React$useContext.currentAnswerList,
51
- currentOptionList = _React$useContext.currentOptionList,
52
- updateCurrentAnswer = _React$useContext.updateCurrentAnswer,
53
- updateCurrentOption = _React$useContext.updateCurrentOption,
54
- handleAnswerReset = _React$useContext.handleAnswerReset;
36
+ const MaterialQuizGroupDesktop = () => {
37
+ const intl$1 = intl.useRawEliceIntl();
38
+ const {
39
+ userId
40
+ } = MaterialQuizContext.useMaterialQuizState();
41
+ const {
42
+ groupList,
43
+ currentAnswerList,
44
+ currentOptionList,
45
+ updateCurrentAnswer,
46
+ updateCurrentOption,
47
+ handleAnswerReset
48
+ } = React.useContext(context.default);
55
49
  /**
56
50
  *
57
51
  */
58
- var renderQuizContentSortation = function renderQuizContentSortation() {
59
- return jsxRuntime.jsx(blocks.Flex, {
52
+ const renderQuizContentSortation = () => {
53
+ return React.createElement(blocks.Flex, {
60
54
  align: "center",
61
- margin: "0 1.25rem",
62
- children: jsxRuntime.jsx(blocks.Icon, {
63
- size: "large",
64
- icon: icons.eilSortItem,
65
- rotate: 90,
66
- color: "white"
67
- })
68
- });
55
+ margin: "0 1.25rem"
56
+ }, React.createElement(blocks.Icon, {
57
+ size: "large",
58
+ icon: icons.eilSortItem,
59
+ rotate: 90,
60
+ color: "white"
61
+ }));
69
62
  };
70
63
  /**
71
64
  *
72
65
  */
73
- var renderQuizGroupAnswer = function renderQuizGroupAnswer(title, dropzoneIndex) {
66
+ const renderQuizGroupAnswer = (title, dropzoneIndex) => {
74
67
  var _a, _b;
75
- var isGroupAnswer = Boolean((_a = currentAnswerList[dropzoneIndex]) === null || _a === void 0 ? void 0 : _a.length);
76
- return jsxRuntime.jsxs(StyledQuizAnswerDropzoneWrapper, {
77
- children: [jsxRuntime.jsx(blocks.Text, {
78
- size: "large",
79
- bold: true,
80
- children: title
81
- }), jsxRuntime.jsx(blocks.Vspace, {
82
- height: 1
83
- }), jsxRuntime.jsx(StyledQuizAnswerDropzone, {
84
- accept: ".quiz-answer",
85
- disabled: !!userId,
86
- isGroupAnswer: isGroupAnswer,
87
- onDrop: function onDrop(event, ui) {
88
- var targetId = Number(ui.draggable[0].id);
89
- updateCurrentAnswer(targetId, dropzoneIndex);
90
- },
91
- children: isGroupAnswer ? (_b = currentAnswerList[dropzoneIndex]) === null || _b === void 0 ? void 0 : _b.map(function (answer, index) {
92
- return jsxRuntime.jsx(MaterialQuizGroupOptionItem.default, {
93
- option: answer
94
- }, index);
95
- }) : jsxRuntime.jsx(blocks.Text, {
96
- role: "gray5",
97
- bold: true,
98
- children: intl$1.formatMessage({
99
- id: 'materialQuiz.dropzone.desktop.answerEmpty'
100
- })
101
- })
102
- })]
103
- });
68
+ const isGroupAnswer = Boolean((_a = currentAnswerList[dropzoneIndex]) === null || _a === void 0 ? void 0 : _a.length);
69
+ return React.createElement(StyledQuizAnswerDropzoneWrapper, null, React.createElement(blocks.Text, {
70
+ size: "large",
71
+ bold: true
72
+ }, title), React.createElement(blocks.Vspace, {
73
+ height: 1
74
+ }), React.createElement(StyledQuizAnswerDropzone, {
75
+ accept: ".quiz-answer",
76
+ disabled: !!userId,
77
+ isGroupAnswer: isGroupAnswer,
78
+ onDrop: (event, ui) => {
79
+ const targetId = Number(ui.draggable[0].id);
80
+ updateCurrentAnswer(targetId, dropzoneIndex);
81
+ }
82
+ }, isGroupAnswer ? (_b = currentAnswerList[dropzoneIndex]) === null || _b === void 0 ? void 0 : _b.map((answer, index) => React.createElement(MaterialQuizGroupOptionItem.default, {
83
+ key: index,
84
+ option: answer
85
+ })) : React.createElement(blocks.Text, {
86
+ role: "gray5",
87
+ bold: true
88
+ }, intl$1.formatMessage({
89
+ id: 'materialQuiz.dropzone.desktop.answerEmpty'
90
+ }))));
104
91
  };
105
92
  /**
106
93
  *
107
94
  */
108
- var renderQuizContentLeft = function renderQuizContentLeft() {
109
- return jsxRuntime.jsx(StyledQuizAnswerWrapper, {
110
- children: groupList.filter(function (_, index) {
111
- return !(index % 2);
112
- }).map(function (group, index) {
113
- return jsxRuntime.jsx(React__default.default.Fragment, {
114
- children: renderQuizGroupAnswer(group, index * 2)
115
- }, index);
116
- })
117
- });
95
+ const renderQuizContentLeft = () => {
96
+ return React.createElement(StyledQuizAnswerWrapper, null, groupList.filter((_, index) => !(index % 2)).map((group, index) => React.createElement(React.Fragment, {
97
+ key: index
98
+ }, renderQuizGroupAnswer(group, index * 2))));
118
99
  };
119
100
  /**
120
101
  *
121
102
  */
122
- var renderQuizContentRight = function renderQuizContentRight() {
123
- return jsxRuntime.jsx(StyledQuizAnswerWrapper, {
124
- children: groupList.filter(function (_, index) {
125
- return index % 2;
126
- }).map(function (group, index) {
127
- return jsxRuntime.jsx(React__default.default.Fragment, {
128
- children: renderQuizGroupAnswer(group, index * 2 + 1)
129
- }, index);
130
- })
131
- });
103
+ const renderQuizContentRight = () => {
104
+ return React.createElement(StyledQuizAnswerWrapper, null, groupList.filter((_, index) => index % 2).map((group, index) => React.createElement(React.Fragment, {
105
+ key: index
106
+ }, renderQuizGroupAnswer(group, index * 2 + 1))));
132
107
  };
133
108
  /**
134
109
  *
135
110
  */
136
- var renderQuizContentOption = function renderQuizContentOption() {
137
- return jsxRuntime.jsxs(blocks.Flex, {
138
- height: "fit-content",
139
- children: [renderQuizContentSortation(), jsxRuntime.jsxs(StyledQuizOptions, {
140
- children: [jsxRuntime.jsx(blocks.Button, {
141
- role: "white",
142
- size: "small",
143
- disabled: !!userId,
144
- onClick: handleAnswerReset,
145
- children: intl$1.formatMessage({
146
- id: 'materialQuiz.dropzone.optionReset'
147
- })
148
- }), jsxRuntime.jsx(blocks.Vspace, {
149
- height: 1
150
- }), jsxRuntime.jsx(StyledQuizOptionsDropzone, {
151
- accept: ".quiz-answer",
152
- onDrop: function onDrop(event, ui) {
153
- var targetId = Number(ui.draggable[0].id);
154
- updateCurrentOption(targetId);
155
- },
156
- children: currentOptionList.length ? currentOptionList.map(function (option, index) {
157
- return jsxRuntime.jsx(MaterialQuizGroupOptionItem.default, {
158
- option: option
159
- }, index);
160
- }) : jsxRuntime.jsx(blocks.Flex, {
161
- justify: "center",
162
- align: "center",
163
- width: "100%",
164
- children: jsxRuntime.jsx(blocks.Text, {
165
- role: "navy",
166
- textAlign: "center",
167
- bold: true,
168
- children: intl$1.formatMessage({
169
- id: 'materialQuiz.dropzone.optionEmpty'
170
- })
171
- })
172
- })
173
- })]
174
- }), renderQuizContentSortation()]
175
- });
111
+ const renderQuizContentOption = () => {
112
+ return React.createElement(blocks.Flex, {
113
+ height: "fit-content"
114
+ }, renderQuizContentSortation(), React.createElement(StyledQuizOptions, null, React.createElement(blocks.Button, {
115
+ role: "white",
116
+ size: "small",
117
+ disabled: !!userId,
118
+ onClick: handleAnswerReset
119
+ }, intl$1.formatMessage({
120
+ id: 'materialQuiz.dropzone.optionReset'
121
+ })), React.createElement(blocks.Vspace, {
122
+ height: 1
123
+ }), React.createElement(StyledQuizOptionsDropzone, {
124
+ accept: ".quiz-answer",
125
+ onDrop: (event, ui) => {
126
+ const targetId = Number(ui.draggable[0].id);
127
+ updateCurrentOption(targetId);
128
+ }
129
+ }, currentOptionList.length ? currentOptionList.map((option, index) => React.createElement(MaterialQuizGroupOptionItem.default, {
130
+ key: index,
131
+ option: option
132
+ })) : React.createElement(blocks.Flex, {
133
+ justify: "center",
134
+ align: "center",
135
+ width: "100%"
136
+ }, React.createElement(blocks.Text, {
137
+ role: "navy",
138
+ textAlign: "center",
139
+ bold: true
140
+ }, intl$1.formatMessage({
141
+ id: 'materialQuiz.dropzone.optionEmpty'
142
+ }))))), renderQuizContentSortation());
176
143
  };
177
144
  //
178
145
  //
179
146
  //
180
- return jsxRuntime.jsxs(blocks.Flex, {
147
+ return React.createElement(blocks.Flex, {
181
148
  width: "100%",
182
- height: "100%",
183
- children: [renderQuizContentLeft(), renderQuizContentOption(), renderQuizContentRight()]
184
- });
149
+ height: "100%"
150
+ }, renderQuizContentLeft(), renderQuizContentOption(), renderQuizContentRight());
185
151
  };
186
152
 
187
153
  exports.default = MaterialQuizGroupDesktop;
@@ -2,8 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
6
- var jsxRuntime = require('react/jsx-runtime');
7
5
  var React = require('react');
8
6
  var blocks = require('@elice/blocks');
9
7
  var designTokens = require('@elice/design-tokens');
@@ -13,163 +11,136 @@ var MaterialQuizContext = require('../context/MaterialQuizContext.js');
13
11
  var context = require('./context/context.js');
14
12
  var MaterialQuizGroupOptionItem = require('./MaterialQuizGroupOptionItem.js');
15
13
 
16
- function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
17
-
18
- var React__default = /*#__PURE__*/_interopDefaultCompat(React);
19
- var styled__default = /*#__PURE__*/_interopDefaultCompat(styled);
20
-
21
- var StyledQuizGroupWrapper = styled__default.default.div.withConfig({
14
+ const StyledQuizGroupWrapper = styled.div.withConfig({
22
15
  componentId: "sc-bftjpj-0"
23
16
  })(["display:flex;flex-direction:column;overflow:hidden;width:100%;padding:1rem;background:", ";border-radius:0.5rem;&:hover{cursor:pointer;}&:not(:last-child){margin-bottom:1rem;}"], designTokens.base.color.white);
24
- var StyledQuizOptionList = styled__default.default.div.withConfig({
17
+ const StyledQuizOptionList = styled.div.withConfig({
25
18
  componentId: "sc-bftjpj-1"
26
- })(["display:flex;align-items:", ";gap:0.5rem;overflow-x:auto;min-height:223px;padding:1rem;border-radius:0.5rem;background:", ";outline-color:", ";"], function (_ref) {
27
- var isCurrentOptionList = _ref.isCurrentOptionList;
28
- return isCurrentOptionList ? 'flex-start' : 'center';
29
- }, designTokens.base.color.gray1, designTokens.base.color.gray3);
30
- var StyledQuizOptionItem = styled__default.default.div.withConfig({
19
+ })(["display:flex;align-items:", ";gap:0.5rem;overflow-x:auto;min-height:223px;padding:1rem;border-radius:0.5rem;background:", ";outline-color:", ";"], ({
20
+ isCurrentOptionList
21
+ }) => isCurrentOptionList ? 'flex-start' : 'center', designTokens.base.color.gray1, designTokens.base.color.gray3);
22
+ const StyledQuizOptionItem = styled.div.withConfig({
31
23
  componentId: "sc-bftjpj-2"
32
24
  })(["&:hover{cursor:pointer;}"]);
33
- var StyledBottomSheetWrapper = styled__default.default(StyledQuizOptionList).withConfig({
25
+ const StyledBottomSheetWrapper = styled(StyledQuizOptionList).withConfig({
34
26
  componentId: "sc-bftjpj-3"
35
- })(["align-items:", ";padding:0.5rem;"], function (_ref2) {
36
- var vertical = _ref2.vertical,
37
- isCurrentOptionList = _ref2.isCurrentOptionList;
38
- return vertical && isCurrentOptionList ? 'flex-start' : 'center';
39
- });
40
- var MaterialQuizGroupMobile = function MaterialQuizGroupMobile() {
41
- var intl$1 = intl.useRawEliceIntl();
27
+ })(["align-items:", ";padding:0.5rem;"], ({
28
+ vertical,
29
+ isCurrentOptionList
30
+ }) => vertical && isCurrentOptionList ? 'flex-start' : 'center');
31
+ const MaterialQuizGroupMobile = () => {
32
+ const intl$1 = intl.useRawEliceIntl();
42
33
  // context
43
- var _useMaterialQuizState = MaterialQuizContext.useMaterialQuizState(),
44
- materialQuiz = _useMaterialQuizState.materialQuiz,
45
- userId = _useMaterialQuizState.userId,
46
- vertical = _useMaterialQuizState.vertical;
47
- var _React$useContext = React__default.default.useContext(context.default),
48
- currentOptionList = _React$useContext.currentOptionList,
49
- currentAnswerList = _React$useContext.currentAnswerList,
50
- updateCurrentAnswer = _React$useContext.updateCurrentAnswer,
51
- updateCurrentOption = _React$useContext.updateCurrentOption,
52
- handleAnswerReset = _React$useContext.handleAnswerReset;
53
- var _React$useState = React__default.default.useState(null),
54
- _React$useState2 = _rollupPluginBabelHelpers.slicedToArray(_React$useState, 2),
55
- dropzoneIndex = _React$useState2[0],
56
- setDropzoneIndex = _React$useState2[1];
34
+ const {
35
+ materialQuiz,
36
+ userId,
37
+ vertical
38
+ } = MaterialQuizContext.useMaterialQuizState();
39
+ const {
40
+ currentOptionList,
41
+ currentAnswerList,
42
+ updateCurrentAnswer,
43
+ updateCurrentOption,
44
+ handleAnswerReset
45
+ } = React.useContext(context.default);
46
+ const [dropzoneIndex, setDropzoneIndex] = React.useState(null);
57
47
  /**
58
48
  *
59
49
  */
60
- var renderResetButton = function renderResetButton() {
61
- return jsxRuntime.jsxs(jsxRuntime.Fragment, {
62
- children: [jsxRuntime.jsx(blocks.Button, {
63
- role: "white",
64
- size: "small",
65
- disabled: !!userId,
66
- onClick: handleAnswerReset,
67
- block: true,
68
- children: intl$1.formatMessage({
69
- id: 'materialQuiz.dropzone.optionReset'
70
- })
71
- }), jsxRuntime.jsx(blocks.Vspace, {
72
- height: 1
73
- })]
74
- });
50
+ const renderResetButton = () => {
51
+ return React.createElement(React.Fragment, null, React.createElement(blocks.Button, {
52
+ role: "white",
53
+ size: "small",
54
+ disabled: !!userId,
55
+ onClick: handleAnswerReset,
56
+ block: true
57
+ }, intl$1.formatMessage({
58
+ id: 'materialQuiz.dropzone.optionReset'
59
+ })), React.createElement(blocks.Vspace, {
60
+ height: 1
61
+ }));
75
62
  };
76
63
  /**
77
64
  *
78
65
  */
79
- var renderGroupList = function renderGroupList() {
66
+ const renderGroupList = () => {
80
67
  var _a;
81
- return jsxRuntime.jsx(jsxRuntime.Fragment, {
82
- children: (_a = materialQuiz === null || materialQuiz === void 0 ? void 0 : materialQuiz.groups) === null || _a === void 0 ? void 0 : _a.map(function (group, index) {
83
- var _a;
84
- var isCurrentOptionList = Boolean((_a = currentAnswerList === null || currentAnswerList === void 0 ? void 0 : currentAnswerList[index]) === null || _a === void 0 ? void 0 : _a.length);
85
- return jsxRuntime.jsxs(StyledQuizGroupWrapper, {
86
- onClick: function onClick() {
87
- return setDropzoneIndex(index);
88
- },
89
- children: [jsxRuntime.jsx(blocks.Text, {
90
- size: "small",
91
- bold: true,
92
- children: group
93
- }), jsxRuntime.jsx(blocks.Vspace, {
94
- height: 0.5
95
- }), jsxRuntime.jsx(StyledQuizOptionList, {
96
- isCurrentOptionList: isCurrentOptionList,
97
- children: isCurrentOptionList ? currentAnswerList[index].map(function (answer) {
98
- return jsxRuntime.jsx(MaterialQuizGroupOptionItem.default, {
99
- option: answer,
100
- onClose: function onClose() {
101
- var targetId = answer.order;
102
- updateCurrentOption(targetId);
103
- }
104
- }, answer.order);
105
- }) : jsxRuntime.jsx(blocks.Text, {
106
- role: "gray6",
107
- size: "small",
108
- textAlign: "center",
109
- bold: true,
110
- block: true,
111
- children: intl$1.formatMessage({
112
- id: 'materialQuiz.dropzone.mobile.answerEmpty'
113
- })
114
- })
115
- })]
116
- }, index);
117
- })
118
- });
68
+ return React.createElement(React.Fragment, null, (_a = materialQuiz === null || materialQuiz === void 0 ? void 0 : materialQuiz.groups) === null || _a === void 0 ? void 0 : _a.map((group, index) => {
69
+ var _a;
70
+ const isCurrentOptionList = Boolean((_a = currentAnswerList === null || currentAnswerList === void 0 ? void 0 : currentAnswerList[index]) === null || _a === void 0 ? void 0 : _a.length);
71
+ return React.createElement(StyledQuizGroupWrapper, {
72
+ key: index,
73
+ onClick: () => setDropzoneIndex(index)
74
+ }, React.createElement(blocks.Text, {
75
+ size: "small",
76
+ bold: true
77
+ }, group), React.createElement(blocks.Vspace, {
78
+ height: 0.5
79
+ }), React.createElement(StyledQuizOptionList, {
80
+ isCurrentOptionList: isCurrentOptionList
81
+ }, isCurrentOptionList ? currentAnswerList[index].map(answer => React.createElement(MaterialQuizGroupOptionItem.default, {
82
+ key: answer.order,
83
+ option: answer,
84
+ onClose: () => {
85
+ const targetId = answer.order;
86
+ updateCurrentOption(targetId);
87
+ }
88
+ })) : React.createElement(blocks.Text, {
89
+ role: "gray6",
90
+ size: "small",
91
+ textAlign: "center",
92
+ bold: true,
93
+ block: true
94
+ }, intl$1.formatMessage({
95
+ id: 'materialQuiz.dropzone.mobile.answerEmpty'
96
+ }))));
97
+ }));
119
98
  };
120
99
  /**
121
100
  *
122
101
  */
123
- var renderOptionListBottomSheet = function renderOptionListBottomSheet() {
124
- var isCurrentOptionList = Boolean(currentOptionList.length);
125
- return jsxRuntime.jsx(blocks.BottomSheet, {
102
+ const renderOptionListBottomSheet = () => {
103
+ const isCurrentOptionList = Boolean(currentOptionList.length);
104
+ return React.createElement(blocks.BottomSheet, {
126
105
  show: dropzoneIndex !== null,
127
106
  title: intl$1.formatMessage({
128
107
  id: 'materialQuiz.bottomSheet.title'
129
108
  }),
130
109
  contentsText: "",
131
110
  disableSwipeGesture: true,
132
- onClose: function onClose() {
133
- return setDropzoneIndex(null);
134
- },
135
- children: jsxRuntime.jsx(StyledBottomSheetWrapper, {
136
- vertical: vertical,
137
- isCurrentOptionList: isCurrentOptionList,
138
- children: isCurrentOptionList ? currentOptionList === null || currentOptionList === void 0 ? void 0 : currentOptionList.map(function (option, index) {
139
- return jsxRuntime.jsx(StyledQuizOptionItem, {
140
- onClick: function onClick() {
141
- var targetId = option.order;
142
- if (dropzoneIndex === null) {
143
- return;
144
- }
145
- if (!!userId) {
146
- return;
147
- }
148
- updateCurrentAnswer(targetId, dropzoneIndex);
149
- },
150
- children: jsxRuntime.jsx(MaterialQuizGroupOptionItem.default, {
151
- option: option
152
- }, index)
153
- }, index);
154
- }) : jsxRuntime.jsx(blocks.Text, {
155
- role: "gray6",
156
- size: "small",
157
- textAlign: "center",
158
- bold: true,
159
- block: true,
160
- children: intl$1.formatMessage({
161
- id: 'materialQuiz.bottomSheet.optionEmpty'
162
- })
163
- })
164
- })
165
- });
111
+ onClose: () => setDropzoneIndex(null)
112
+ }, React.createElement(StyledBottomSheetWrapper, {
113
+ vertical: vertical,
114
+ isCurrentOptionList: isCurrentOptionList
115
+ }, isCurrentOptionList ? currentOptionList === null || currentOptionList === void 0 ? void 0 : currentOptionList.map((option, index) => React.createElement(StyledQuizOptionItem, {
116
+ key: index,
117
+ onClick: () => {
118
+ const targetId = option.order;
119
+ if (dropzoneIndex === null) {
120
+ return;
121
+ }
122
+ if (!!userId) {
123
+ return;
124
+ }
125
+ updateCurrentAnswer(targetId, dropzoneIndex);
126
+ }
127
+ }, React.createElement(MaterialQuizGroupOptionItem.default, {
128
+ key: index,
129
+ option: option
130
+ }))) : React.createElement(blocks.Text, {
131
+ role: "gray6",
132
+ size: "small",
133
+ textAlign: "center",
134
+ bold: true,
135
+ block: true
136
+ }, intl$1.formatMessage({
137
+ id: 'materialQuiz.bottomSheet.optionEmpty'
138
+ }))));
166
139
  };
167
140
  //
168
141
  //
169
142
  //
170
- return jsxRuntime.jsxs(jsxRuntime.Fragment, {
171
- children: [renderResetButton(), renderGroupList(), renderOptionListBottomSheet()]
172
- });
143
+ return React.createElement(React.Fragment, null, renderResetButton(), renderGroupList(), renderOptionListBottomSheet());
173
144
  };
174
145
 
175
146
  exports.default = MaterialQuizGroupMobile;