@tipp/ui 2.10.2 → 2.10.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app/index.cjs +385 -359
- package/dist/app/index.cjs.map +1 -1
- package/dist/app/index.js +40 -38
- package/dist/app/platform/coach-question-list.cjs +58 -35
- package/dist/app/platform/coach-question-list.cjs.map +1 -1
- package/dist/app/platform/coach-question-list.js +3 -2
- package/dist/app/platform/contents-card.cjs +120 -97
- package/dist/app/platform/contents-card.cjs.map +1 -1
- package/dist/app/platform/contents-card.js +3 -2
- package/dist/app/platform/curriculum-card.cjs +39 -16
- package/dist/app/platform/curriculum-card.cjs.map +1 -1
- package/dist/app/platform/curriculum-card.js +3 -2
- package/dist/app/platform/edit-coaching-time.cjs +160 -134
- package/dist/app/platform/edit-coaching-time.cjs.map +1 -1
- package/dist/app/platform/edit-coaching-time.js +30 -28
- package/dist/app/platform/edit-service-type.cjs +152 -126
- package/dist/app/platform/edit-service-type.cjs.map +1 -1
- package/dist/app/platform/edit-service-type.js +30 -28
- package/dist/app/platform/goal-manage-card-edit.cjs +162 -136
- package/dist/app/platform/goal-manage-card-edit.cjs.map +1 -1
- package/dist/app/platform/goal-manage-card-edit.js +30 -28
- package/dist/app/platform/goal-manage-card-read.cjs +88 -65
- package/dist/app/platform/goal-manage-card-read.cjs.map +1 -1
- package/dist/app/platform/goal-manage-card-read.js +3 -2
- package/dist/app/platform/on-offline-radio-card.cjs +303 -277
- package/dist/app/platform/on-offline-radio-card.cjs.map +1 -1
- package/dist/app/platform/on-offline-radio-card.js +30 -28
- package/dist/app/platform/report-card.cjs +61 -38
- package/dist/app/platform/report-card.cjs.map +1 -1
- package/dist/app/platform/report-card.js +3 -2
- package/dist/app/platform/reservation-card.cjs +176 -150
- package/dist/app/platform/reservation-card.cjs.map +1 -1
- package/dist/app/platform/reservation-card.js +30 -28
- package/dist/app/platform/session-card.cjs +205 -179
- package/dist/app/platform/session-card.cjs.map +1 -1
- package/dist/app/platform/session-card.js +30 -28
- package/dist/app/platform/session-review-simple-read.cjs +59 -36
- package/dist/app/platform/session-review-simple-read.cjs.map +1 -1
- package/dist/app/platform/session-review-simple-read.js +3 -2
- package/dist/app/platform/userInfos/coaching-customer-info/index.cjs +92 -69
- package/dist/app/platform/userInfos/coaching-customer-info/index.cjs.map +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/index.js +7 -6
- package/dist/app/platform/userInfos/coaching-customer-info/large.cjs +69 -46
- package/dist/app/platform/userInfos/coaching-customer-info/large.cjs.map +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/large.js +3 -2
- package/dist/app/platform/userInfos/coaching-customer-info/medium.cjs +72 -49
- package/dist/app/platform/userInfos/coaching-customer-info/medium.cjs.map +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/medium.js +3 -2
- package/dist/app/platform/userInfos/coaching-customer-info/small.cjs +58 -35
- package/dist/app/platform/userInfos/coaching-customer-info/small.cjs.map +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/small.js +3 -2
- package/dist/app/platform/userInfos/session-user-info-detail.cjs +68 -45
- package/dist/app/platform/userInfos/session-user-info-detail.cjs.map +1 -1
- package/dist/app/platform/userInfos/session-user-info-detail.js +3 -2
- package/dist/app/platform/userInfos/utils.cjs +60 -37
- package/dist/app/platform/userInfos/utils.cjs.map +1 -1
- package/dist/app/platform/userInfos/utils.js +3 -2
- package/dist/app/roleplay/index.cjs +460 -389
- package/dist/app/roleplay/index.cjs.map +1 -1
- package/dist/app/roleplay/index.js +38 -36
- package/dist/app/roleplay/parts/analysis-section.cjs +64 -41
- package/dist/app/roleplay/parts/analysis-section.cjs.map +1 -1
- package/dist/app/roleplay/parts/analysis-section.js +3 -2
- package/dist/app/roleplay/parts/coaching-panel.cjs +65 -42
- package/dist/app/roleplay/parts/coaching-panel.cjs.map +1 -1
- package/dist/app/roleplay/parts/coaching-panel.js +3 -2
- package/dist/app/roleplay/parts/content.cjs +385 -314
- package/dist/app/roleplay/parts/content.cjs.map +1 -1
- package/dist/app/roleplay/parts/content.js +34 -32
- package/dist/app/roleplay/parts/header.cjs +83 -60
- package/dist/app/roleplay/parts/header.cjs.map +1 -1
- package/dist/app/roleplay/parts/header.js +4 -3
- package/dist/app/roleplay/parts/score-summary.cjs +77 -54
- package/dist/app/roleplay/parts/score-summary.cjs.map +1 -1
- package/dist/app/roleplay/parts/score-summary.js +3 -2
- package/dist/app/roleplay/parts/score-trend-section.cjs +228 -157
- package/dist/app/roleplay/parts/score-trend-section.cjs.map +1 -1
- package/dist/app/roleplay/parts/score-trend-section.js +31 -29
- package/dist/app/roleplay/parts/script-transcript.cjs +73 -50
- package/dist/app/roleplay/parts/script-transcript.cjs.map +1 -1
- package/dist/app/roleplay/parts/script-transcript.js +3 -2
- package/dist/app/roleplay/parts/section-nav.cjs +94 -71
- package/dist/app/roleplay/parts/section-nav.cjs.map +1 -1
- package/dist/app/roleplay/parts/section-nav.js +3 -2
- package/dist/app/roleplay/parts/session-replay-dialog.cjs +83 -60
- package/dist/app/roleplay/parts/session-replay-dialog.cjs.map +1 -1
- package/dist/app/roleplay/parts/session-replay-dialog.js +3 -2
- package/dist/app/roleplay/parts/speech-share-bar.cjs +60 -37
- package/dist/app/roleplay/parts/speech-share-bar.cjs.map +1 -1
- package/dist/app/roleplay/parts/speech-share-bar.js +3 -2
- package/dist/app/roleplay/parts/step-detail.cjs +78 -55
- package/dist/app/roleplay/parts/step-detail.cjs.map +1 -1
- package/dist/app/roleplay/parts/step-detail.js +3 -2
- package/dist/app/roleplay/parts/step-summary.cjs +78 -55
- package/dist/app/roleplay/parts/step-summary.cjs.map +1 -1
- package/dist/app/roleplay/parts/step-summary.js +3 -2
- package/dist/app/roleplay/rp-session-detail.cjs +460 -389
- package/dist/app/roleplay/rp-session-detail.cjs.map +1 -1
- package/dist/app/roleplay/rp-session-detail.js +38 -36
- package/dist/atoms/index.cjs +82 -59
- package/dist/atoms/index.cjs.map +1 -1
- package/dist/atoms/index.js +3 -2
- package/dist/atoms/pagination.cjs +38 -15
- package/dist/atoms/pagination.cjs.map +1 -1
- package/dist/atoms/pagination.js +3 -2
- package/dist/chunk-2EPKY2VT.js +70 -0
- package/dist/chunk-2EPKY2VT.js.map +1 -0
- package/dist/chunk-2PPLSZ4P.js +1 -0
- package/dist/chunk-5DRITHNR.js +1 -0
- package/dist/{chunk-5RIAIE2J.js → chunk-73PHGHPI.js} +5 -2
- package/dist/chunk-73PHGHPI.js.map +1 -0
- package/dist/{chunk-IIZ7I7NS.js → chunk-AYWCLLQ2.js} +7 -7
- package/dist/{chunk-RRC4WFG3.js → chunk-DIFGHMGI.js} +2 -2
- package/dist/{chunk-P2H3VCIB.js → chunk-HL3MGRAC.js} +4 -4
- package/dist/chunk-IAKMJR72.js +33 -0
- package/dist/chunk-IAKMJR72.js.map +1 -0
- package/dist/{chunk-YFR3HXSV.js → chunk-IHLFOJD5.js} +2 -2
- package/dist/{chunk-A32HLL53.js → chunk-KQ3ME6XY.js} +7 -7
- package/dist/{chunk-SZAU7YP3.js → chunk-L7ZHSQES.js} +5 -5
- package/dist/{chunk-MD64AUR6.js → chunk-LGILQRJM.js} +8 -8
- package/dist/{chunk-FJEDSUGU.js → chunk-NEJCZABQ.js} +7 -7
- package/dist/{chunk-NSDVLCCW.js → chunk-RJ62VZ6O.js} +2 -2
- package/dist/{chunk-UK3LP7VH.js → chunk-TYM6T7JT.js} +2 -2
- package/dist/{chunk-RZW6FVML.js → chunk-UCTSCSQR.js} +2 -2
- package/dist/{chunk-JCZXPONS.js → chunk-VBYXXISC.js} +4 -4
- package/dist/{chunk-VM2PEQLQ.js → chunk-VJREZH2Z.js} +2 -2
- package/dist/chunk-VJREZH2Z.js.map +1 -0
- package/dist/icon.cjs +25 -0
- package/dist/icon.cjs.map +1 -1
- package/dist/icon.d.cts +1 -0
- package/dist/icon.d.ts +1 -0
- package/dist/icon.js +7 -3
- package/dist/icons/empty-box.cjs +90 -0
- package/dist/icons/empty-box.cjs.map +1 -0
- package/dist/icons/empty-box.d.cts +13 -0
- package/dist/icons/empty-box.d.ts +13 -0
- package/dist/icons/empty-box.js +8 -0
- package/dist/icons/empty-box.js.map +1 -0
- package/dist/icons/index.cjs +25 -0
- package/dist/icons/index.cjs.map +1 -1
- package/dist/icons/index.d.cts +1 -0
- package/dist/icons/index.d.ts +1 -0
- package/dist/icons/index.js +7 -3
- package/dist/index.cjs +959 -884
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +62 -54
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/index.cjs +95 -72
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/index.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/index.js +8 -7
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-comp.cjs +29 -6
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-comp.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-comp.js +3 -2
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-body.cjs +71 -48
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-body.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-body.js +6 -5
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-footer.cjs +32 -9
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-footer.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-footer.js +3 -2
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-radio.cjs +41 -18
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-radio.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-radio.js +3 -2
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-option.cjs +33 -10
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-option.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-option.js +3 -2
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-text.cjs +33 -10
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-text.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-text.js +3 -2
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-text.cjs +42 -19
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-text.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-text.js +3 -2
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/complete-review.cjs +37 -14
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/complete-review.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/complete-review.js +3 -2
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/index.cjs +153 -130
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/index.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/index.js +9 -8
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/start-review.cjs +45 -22
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/start-review.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/start-review.js +3 -2
- package/dist/molecules/curriculumV2/CurriculumContents/curriculum-ai-traning.cjs +30 -7
- package/dist/molecules/curriculumV2/CurriculumContents/curriculum-ai-traning.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/curriculum-ai-traning.js +3 -2
- package/dist/molecules/curriculumV2/CurriculumContents/curriculum-review.cjs +171 -148
- package/dist/molecules/curriculumV2/CurriculumContents/curriculum-review.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/curriculum-review.js +10 -9
- package/dist/molecules/curriculumV2/CurriculumContents/index.cjs +220 -197
- package/dist/molecules/curriculumV2/CurriculumContents/index.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumContents/index.js +13 -12
- package/dist/molecules/curriculumV2/CurriculumSidebar/Items/section-item.cjs +33 -10
- package/dist/molecules/curriculumV2/CurriculumSidebar/Items/section-item.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumSidebar/Items/section-item.js +3 -2
- package/dist/molecules/curriculumV2/CurriculumSidebar/index.cjs +52 -29
- package/dist/molecules/curriculumV2/CurriculumSidebar/index.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumSidebar/index.js +7 -6
- package/dist/molecules/curriculumV2/CurriculumSidebar/sidebar-item.cjs +44 -21
- package/dist/molecules/curriculumV2/CurriculumSidebar/sidebar-item.cjs.map +1 -1
- package/dist/molecules/curriculumV2/CurriculumSidebar/sidebar-item.js +6 -5
- package/dist/molecules/curriculumV2/curriculum-sub-nav.cjs +36 -13
- package/dist/molecules/curriculumV2/curriculum-sub-nav.cjs.map +1 -1
- package/dist/molecules/curriculumV2/curriculum-sub-nav.js +3 -2
- package/dist/molecules/curriculumV2/index.cjs +264 -241
- package/dist/molecules/curriculumV2/index.cjs.map +1 -1
- package/dist/molecules/curriculumV2/index.js +21 -20
- package/dist/molecules/date-picker/date-picker-button.cjs +52 -29
- package/dist/molecules/date-picker/date-picker-button.cjs.map +1 -1
- package/dist/molecules/date-picker/date-picker-button.js +3 -2
- package/dist/molecules/date-picker/index.cjs +40 -17
- package/dist/molecules/date-picker/index.cjs.map +1 -1
- package/dist/molecules/date-picker/index.js +3 -2
- package/dist/molecules/description-json-render.cjs +31 -8
- package/dist/molecules/description-json-render.cjs.map +1 -1
- package/dist/molecules/description-json-render.js +3 -2
- package/dist/molecules/dynamic-form-editor-field-editor-panel.cjs +138 -115
- package/dist/molecules/dynamic-form-editor-field-editor-panel.cjs.map +1 -1
- package/dist/molecules/dynamic-form-editor-field-editor-panel.js +3 -2
- package/dist/molecules/dynamic-form-editor.cjs +223 -200
- package/dist/molecules/dynamic-form-editor.cjs.map +1 -1
- package/dist/molecules/dynamic-form-editor.js +5 -4
- package/dist/molecules/empty-state.cjs +328 -0
- package/dist/molecules/empty-state.cjs.map +1 -0
- package/dist/molecules/empty-state.d.cts +21 -0
- package/dist/molecules/empty-state.d.ts +21 -0
- package/dist/molecules/empty-state.js +16 -0
- package/dist/molecules/empty-state.js.map +1 -0
- package/dist/molecules/expand-table/index.cjs +193 -58
- package/dist/molecules/expand-table/index.cjs.map +1 -1
- package/dist/molecules/expand-table/index.js +6 -3
- package/dist/molecules/index.cjs +862 -789
- package/dist/molecules/index.cjs.map +1 -1
- package/dist/molecules/index.d.cts +2 -1
- package/dist/molecules/index.d.ts +2 -1
- package/dist/molecules/index.js +43 -38
- package/dist/molecules/stepper.cjs +43 -20
- package/dist/molecules/stepper.cjs.map +1 -1
- package/dist/molecules/stepper.js +3 -2
- package/dist/molecules/tag-selector.cjs +43 -20
- package/dist/molecules/tag-selector.cjs.map +1 -1
- package/dist/molecules/tag-selector.js +3 -2
- package/dist/molecules/time-select.cjs +28 -5
- package/dist/molecules/time-select.cjs.map +1 -1
- package/dist/molecules/time-select.js +4 -3
- package/dist/utils/curriculum.utils.cjs +23 -0
- package/dist/utils/curriculum.utils.cjs.map +1 -1
- package/dist/utils/curriculum.utils.js +3 -2
- package/dist/utils/get-callout-icon-component.cjs +23 -0
- package/dist/utils/get-callout-icon-component.cjs.map +1 -1
- package/dist/utils/get-callout-icon-component.js +3 -2
- package/dist/utils/index.cjs +23 -0
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.js +6 -5
- package/package.json +1 -1
- package/src/app/roleplay/parts/header.tsx +2 -1
- package/src/icons/empty-box.tsx +29 -0
- package/src/icons/index.ts +2 -1
- package/src/molecules/empty-state.tsx +79 -0
- package/src/molecules/expand-table/index.tsx +2 -3
- package/src/molecules/index.ts +1 -0
- package/dist/chunk-5RIAIE2J.js.map +0 -1
- package/dist/chunk-JVXATVAC.js +0 -1
- package/dist/chunk-SYMOHU2B.js +0 -1
- package/dist/chunk-VM2PEQLQ.js.map +0 -1
- /package/dist/{chunk-JVXATVAC.js.map → chunk-2PPLSZ4P.js.map} +0 -0
- /package/dist/{chunk-SYMOHU2B.js.map → chunk-5DRITHNR.js.map} +0 -0
- /package/dist/{chunk-IIZ7I7NS.js.map → chunk-AYWCLLQ2.js.map} +0 -0
- /package/dist/{chunk-RRC4WFG3.js.map → chunk-DIFGHMGI.js.map} +0 -0
- /package/dist/{chunk-P2H3VCIB.js.map → chunk-HL3MGRAC.js.map} +0 -0
- /package/dist/{chunk-YFR3HXSV.js.map → chunk-IHLFOJD5.js.map} +0 -0
- /package/dist/{chunk-A32HLL53.js.map → chunk-KQ3ME6XY.js.map} +0 -0
- /package/dist/{chunk-SZAU7YP3.js.map → chunk-L7ZHSQES.js.map} +0 -0
- /package/dist/{chunk-MD64AUR6.js.map → chunk-LGILQRJM.js.map} +0 -0
- /package/dist/{chunk-FJEDSUGU.js.map → chunk-NEJCZABQ.js.map} +0 -0
- /package/dist/{chunk-NSDVLCCW.js.map → chunk-RJ62VZ6O.js.map} +0 -0
- /package/dist/{chunk-UK3LP7VH.js.map → chunk-TYM6T7JT.js.map} +0 -0
- /package/dist/{chunk-RZW6FVML.js.map → chunk-UCTSCSQR.js.map} +0 -0
- /package/dist/{chunk-JCZXPONS.js.map → chunk-VBYXXISC.js.map} +0 -0
|
@@ -2229,8 +2229,31 @@ var HeadsetIcon = React34.forwardRef(
|
|
|
2229
2229
|
);
|
|
2230
2230
|
HeadsetIcon.displayName = "HeadsetIcon";
|
|
2231
2231
|
|
|
2232
|
-
// src/
|
|
2232
|
+
// src/icons/empty-box.tsx
|
|
2233
|
+
var React35 = __toESM(require("react"), 1);
|
|
2233
2234
|
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
2235
|
+
var EmptyBoxIcon = React35.forwardRef(
|
|
2236
|
+
(_a, forwardedRef) => {
|
|
2237
|
+
var _b = _a, { color = "currentColor", width = 120, height = 120 } = _b, props = __objRest(_b, ["color", "width", "height"]);
|
|
2238
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
2239
|
+
"svg",
|
|
2240
|
+
__spreadProps(__spreadValues({
|
|
2241
|
+
fill: color,
|
|
2242
|
+
height,
|
|
2243
|
+
viewBox: "0 0 462.035 462.035",
|
|
2244
|
+
width,
|
|
2245
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
2246
|
+
}, props), {
|
|
2247
|
+
ref: forwardedRef,
|
|
2248
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("path", { d: "M457.83,158.441c-0.021-0.028-0.033-0.058-0.057-0.087l-50.184-62.48c-0.564-0.701-1.201-1.305-1.879-1.845c-2.16-2.562-5.355-4.225-8.967-4.225H65.292c-3.615,0-6.804,1.661-8.965,4.225c-0.678,0.54-1.316,1.138-1.885,1.845l-50.178,62.48c-0.023,0.029-0.034,0.059-0.057,0.087C1.655,160.602,0,163.787,0,167.39v193.07c0,6.5,5.27,11.771,11.77,11.771h438.496c6.5,0,11.77-5.271,11.77-11.771V167.39C462.037,163.787,460.381,160.602,457.83,158.441z M408.516,134.615l16.873,21.005h-16.873V134.615z M384.975,113.345v42.274H296.84c-2.514,0-4.955,0.805-6.979,2.293l-58.837,43.299l-58.849-43.305c-2.023-1.482-4.466-2.287-6.978-2.287H77.061v-42.274H384.975z M53.523,155.62H36.65l16.873-21.005V155.62z M438.498,348.69H23.54V179.16h137.796l62.711,46.148c4.15,3.046,9.805,3.052,13.954-0.005l62.698-46.144h137.799V348.69L438.498,348.69z" })
|
|
2249
|
+
})
|
|
2250
|
+
);
|
|
2251
|
+
}
|
|
2252
|
+
);
|
|
2253
|
+
EmptyBoxIcon.displayName = "EmptyBoxIcon";
|
|
2254
|
+
|
|
2255
|
+
// src/atoms/pagination.tsx
|
|
2256
|
+
var import_jsx_runtime52 = require("react/jsx-runtime");
|
|
2234
2257
|
function Pagination(props) {
|
|
2235
2258
|
const { onChange, count = 0, siblingCount = 2 } = props;
|
|
2236
2259
|
const isControlled = props.page !== void 0;
|
|
@@ -2299,7 +2322,7 @@ function Pagination(props) {
|
|
|
2299
2322
|
const { color: resolvedColor, className: colorClassName } = resolveColor(
|
|
2300
2323
|
props.color
|
|
2301
2324
|
);
|
|
2302
|
-
return /* @__PURE__ */ (0,
|
|
2325
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
|
|
2303
2326
|
import_themes23.Flex,
|
|
2304
2327
|
{
|
|
2305
2328
|
align: "center",
|
|
@@ -2307,18 +2330,18 @@ function Pagination(props) {
|
|
|
2307
2330
|
className: colorClassName ? `tipp-pagination ${colorClassName}` : "tipp-pagination",
|
|
2308
2331
|
"data-accent-color": resolvedColor,
|
|
2309
2332
|
children: [
|
|
2310
|
-
/* @__PURE__ */ (0,
|
|
2333
|
+
/* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
2311
2334
|
IconButton,
|
|
2312
2335
|
__spreadProps(__spreadValues({
|
|
2313
2336
|
disabled: !doublePrev,
|
|
2314
2337
|
onClick: onClickDoublePrev
|
|
2315
2338
|
}, moveButtonProps), {
|
|
2316
|
-
children: /* @__PURE__ */ (0,
|
|
2339
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_react_icons2.DoubleArrowLeftIcon, __spreadValues({}, iconSize))
|
|
2317
2340
|
})
|
|
2318
2341
|
),
|
|
2319
|
-
/* @__PURE__ */ (0,
|
|
2320
|
-
/* @__PURE__ */ (0,
|
|
2321
|
-
return /* @__PURE__ */ (0,
|
|
2342
|
+
/* @__PURE__ */ (0, import_jsx_runtime52.jsx)(IconButton, __spreadProps(__spreadValues({ disabled: !prev, onClick: onClickPrev }, moveButtonProps), { children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_react_icons2.ChevronLeftIcon, __spreadValues({}, iconSize)) })),
|
|
2343
|
+
/* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_themes23.Flex, { gap: "1", children: visibleItems.map((item) => {
|
|
2344
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
2322
2345
|
"button",
|
|
2323
2346
|
{
|
|
2324
2347
|
className: `page-button ${item === page ? "active" : ""}`,
|
|
@@ -2326,19 +2349,19 @@ function Pagination(props) {
|
|
|
2326
2349
|
goToPage(item);
|
|
2327
2350
|
},
|
|
2328
2351
|
type: "button",
|
|
2329
|
-
children: /* @__PURE__ */ (0,
|
|
2352
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(Typo, { variant: "body", children: item })
|
|
2330
2353
|
},
|
|
2331
2354
|
item
|
|
2332
2355
|
);
|
|
2333
2356
|
}) }),
|
|
2334
|
-
/* @__PURE__ */ (0,
|
|
2335
|
-
/* @__PURE__ */ (0,
|
|
2357
|
+
/* @__PURE__ */ (0, import_jsx_runtime52.jsx)(IconButton, __spreadProps(__spreadValues({ disabled: !next, onClick: onClickNext }, moveButtonProps), { children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_react_icons2.ChevronRightIcon, __spreadValues({}, iconSize)) })),
|
|
2358
|
+
/* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
2336
2359
|
IconButton,
|
|
2337
2360
|
__spreadProps(__spreadValues({
|
|
2338
2361
|
disabled: !doubleNext,
|
|
2339
2362
|
onClick: onClickDoubleNext
|
|
2340
2363
|
}, moveButtonProps), {
|
|
2341
|
-
children: /* @__PURE__ */ (0,
|
|
2364
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_react_icons2.DoubleArrowRightIcon, __spreadValues({}, iconSize))
|
|
2342
2365
|
})
|
|
2343
2366
|
)
|
|
2344
2367
|
]
|
|
@@ -2347,23 +2370,23 @@ function Pagination(props) {
|
|
|
2347
2370
|
}
|
|
2348
2371
|
|
|
2349
2372
|
// src/atoms/field-error-wrapper.tsx
|
|
2350
|
-
var
|
|
2373
|
+
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
2351
2374
|
|
|
2352
2375
|
// src/atoms/ellipsis-tooltip.tsx
|
|
2353
2376
|
var import_react37 = require("react");
|
|
2354
|
-
var
|
|
2377
|
+
var import_jsx_runtime54 = require("react/jsx-runtime");
|
|
2355
2378
|
|
|
2356
2379
|
// src/atoms/drawer.tsx
|
|
2357
2380
|
var Dialog2 = __toESM(require("@radix-ui/react-dialog"), 1);
|
|
2358
2381
|
var import_themes51 = require("@radix-ui/themes");
|
|
2359
2382
|
|
|
2360
2383
|
// src/icons/close-panel-arrow.tsx
|
|
2361
|
-
var
|
|
2362
|
-
var
|
|
2363
|
-
var ClosePanelArrowIcon =
|
|
2384
|
+
var React38 = __toESM(require("react"), 1);
|
|
2385
|
+
var import_jsx_runtime55 = require("react/jsx-runtime");
|
|
2386
|
+
var ClosePanelArrowIcon = React38.forwardRef(
|
|
2364
2387
|
(_a, forwardedRef) => {
|
|
2365
2388
|
var _b = _a, { color = "currentColor" } = _b, props = __objRest(_b, ["color"]);
|
|
2366
|
-
return /* @__PURE__ */ (0,
|
|
2389
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(
|
|
2367
2390
|
"svg",
|
|
2368
2391
|
__spreadProps(__spreadValues({
|
|
2369
2392
|
fill: "none",
|
|
@@ -2374,7 +2397,7 @@ var ClosePanelArrowIcon = React37.forwardRef(
|
|
|
2374
2397
|
}, props), {
|
|
2375
2398
|
ref: forwardedRef,
|
|
2376
2399
|
children: [
|
|
2377
|
-
/* @__PURE__ */ (0,
|
|
2400
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
2378
2401
|
"path",
|
|
2379
2402
|
{
|
|
2380
2403
|
clipRule: "evenodd",
|
|
@@ -2383,7 +2406,7 @@ var ClosePanelArrowIcon = React37.forwardRef(
|
|
|
2383
2406
|
fillRule: "evenodd"
|
|
2384
2407
|
}
|
|
2385
2408
|
),
|
|
2386
|
-
/* @__PURE__ */ (0,
|
|
2409
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
2387
2410
|
"path",
|
|
2388
2411
|
{
|
|
2389
2412
|
clipRule: "evenodd",
|
|
@@ -2400,11 +2423,11 @@ var ClosePanelArrowIcon = React37.forwardRef(
|
|
|
2400
2423
|
ClosePanelArrowIcon.displayName = "ArrowDownIcon";
|
|
2401
2424
|
|
|
2402
2425
|
// src/atoms/drawer.tsx
|
|
2403
|
-
var
|
|
2426
|
+
var import_jsx_runtime56 = require("react/jsx-runtime");
|
|
2404
2427
|
|
|
2405
2428
|
// src/atoms/toast.tsx
|
|
2406
2429
|
var import_sonner = require("sonner");
|
|
2407
|
-
var
|
|
2430
|
+
var import_jsx_runtime57 = require("react/jsx-runtime");
|
|
2408
2431
|
var toast = Object.assign(import_sonner.toast, {
|
|
2409
2432
|
warn: import_sonner.toast.warning
|
|
2410
2433
|
});
|
|
@@ -2412,11 +2435,11 @@ var toast = Object.assign(import_sonner.toast, {
|
|
|
2412
2435
|
// src/molecules/form/form.tsx
|
|
2413
2436
|
var RadixForm = __toESM(require("@radix-ui/react-form"), 1);
|
|
2414
2437
|
var import_react38 = require("react");
|
|
2415
|
-
var
|
|
2438
|
+
var import_jsx_runtime58 = require("react/jsx-runtime");
|
|
2416
2439
|
var Root15 = (0, import_react38.forwardRef)(
|
|
2417
2440
|
(_a, ref) => {
|
|
2418
2441
|
var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
|
|
2419
|
-
return /* @__PURE__ */ (0,
|
|
2442
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
2420
2443
|
RadixForm.Root,
|
|
2421
2444
|
__spreadProps(__spreadValues({}, rest), {
|
|
2422
2445
|
className: `FormRoot ${className || ""}`,
|
|
@@ -2433,25 +2456,25 @@ var FieldContext = (0, import_react38.createContext)({
|
|
|
2433
2456
|
var Field2 = (0, import_react38.forwardRef)(
|
|
2434
2457
|
(_a, ref) => {
|
|
2435
2458
|
var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
|
|
2436
|
-
return /* @__PURE__ */ (0,
|
|
2459
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
2437
2460
|
RadixForm.Field,
|
|
2438
2461
|
__spreadProps(__spreadValues({}, rest), {
|
|
2439
2462
|
className: `FormField ${className || ""}`,
|
|
2440
2463
|
ref,
|
|
2441
|
-
children: /* @__PURE__ */ (0,
|
|
2464
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(FieldContext.Provider, { value: rest, children })
|
|
2442
2465
|
})
|
|
2443
2466
|
);
|
|
2444
2467
|
}
|
|
2445
2468
|
);
|
|
2446
2469
|
Field2.displayName = "FORM_FIELD";
|
|
2447
2470
|
function HeadingLabel(props) {
|
|
2448
|
-
return /* @__PURE__ */ (0,
|
|
2471
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Heading2, __spreadProps(__spreadValues({ variant: "heading5" }, props), { children: props.children }));
|
|
2449
2472
|
}
|
|
2450
2473
|
function CaptionLabel(props) {
|
|
2451
|
-
return /* @__PURE__ */ (0,
|
|
2474
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Typo, __spreadProps(__spreadValues({ color: "gray", variant: "caption", weight: "bold" }, props), { children: props.children }));
|
|
2452
2475
|
}
|
|
2453
2476
|
function BodyLabel(props) {
|
|
2454
|
-
return /* @__PURE__ */ (0,
|
|
2477
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Typo, __spreadProps(__spreadValues({ variant: "body", weight: "bold" }, props), { children: props.children }));
|
|
2455
2478
|
}
|
|
2456
2479
|
var Label3 = (0, import_react38.forwardRef)(
|
|
2457
2480
|
(_a, ref) => {
|
|
@@ -2468,15 +2491,15 @@ var Label3 = (0, import_react38.forwardRef)(
|
|
|
2468
2491
|
}
|
|
2469
2492
|
}, [variant]);
|
|
2470
2493
|
const fieldProps = (0, import_react38.useContext)(FieldContext);
|
|
2471
|
-
return /* @__PURE__ */ (0,
|
|
2494
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
2472
2495
|
RadixForm.Label,
|
|
2473
2496
|
__spreadProps(__spreadValues({}, rest), {
|
|
2474
2497
|
asChild: true,
|
|
2475
2498
|
className: `FormLabel ${className || ""}`,
|
|
2476
2499
|
ref,
|
|
2477
|
-
children: /* @__PURE__ */ (0,
|
|
2500
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(Comp, { children: [
|
|
2478
2501
|
children,
|
|
2479
|
-
fieldProps.required ? /* @__PURE__ */ (0,
|
|
2502
|
+
fieldProps.required ? /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Typo, { as: "span", color: "tomato", children: ` *` }) : null
|
|
2480
2503
|
] })
|
|
2481
2504
|
})
|
|
2482
2505
|
);
|
|
@@ -2486,13 +2509,13 @@ Label3.displayName = "FORM_Label";
|
|
|
2486
2509
|
var Message2 = (0, import_react38.forwardRef)(
|
|
2487
2510
|
(_a, ref) => {
|
|
2488
2511
|
var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
|
|
2489
|
-
return /* @__PURE__ */ (0,
|
|
2512
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
2490
2513
|
RadixForm.Message,
|
|
2491
2514
|
__spreadProps(__spreadValues({}, rest), {
|
|
2492
2515
|
asChild: true,
|
|
2493
2516
|
className: `FormMessage ${className || ""}`,
|
|
2494
2517
|
ref,
|
|
2495
|
-
children: /* @__PURE__ */ (0,
|
|
2518
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Typo, { color: "red", children })
|
|
2496
2519
|
})
|
|
2497
2520
|
);
|
|
2498
2521
|
}
|
|
@@ -2502,7 +2525,7 @@ var Control2 = (0, import_react38.forwardRef)(
|
|
|
2502
2525
|
(_a, ref) => {
|
|
2503
2526
|
var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
|
|
2504
2527
|
const fieldProps = (0, import_react38.useContext)(FieldContext);
|
|
2505
|
-
return /* @__PURE__ */ (0,
|
|
2528
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
2506
2529
|
RadixForm.Control,
|
|
2507
2530
|
__spreadProps(__spreadValues({}, rest), {
|
|
2508
2531
|
className: `FormControl ${className || ""}`,
|
|
@@ -2517,7 +2540,7 @@ Control2.displayName = "FORM_Control";
|
|
|
2517
2540
|
// src/atoms/auto-sizing-input.tsx
|
|
2518
2541
|
var import_themes52 = require("@radix-ui/themes");
|
|
2519
2542
|
var import_react39 = require("react");
|
|
2520
|
-
var
|
|
2543
|
+
var import_jsx_runtime59 = require("react/jsx-runtime");
|
|
2521
2544
|
var useTextWidth = (text, font) => {
|
|
2522
2545
|
const [textWidth, setTextWidth] = (0, import_react39.useState)(0);
|
|
2523
2546
|
(0, import_react39.useEffect)(() => {
|
|
@@ -2617,7 +2640,7 @@ var AutoSizingInput = (0, import_react39.forwardRef)(
|
|
|
2617
2640
|
(_a2 = inputRef.current) == null ? void 0 : _a2.focus();
|
|
2618
2641
|
}
|
|
2619
2642
|
}, [inputRef]);
|
|
2620
|
-
return /* @__PURE__ */ (0,
|
|
2643
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
2621
2644
|
import_themes52.Box,
|
|
2622
2645
|
{
|
|
2623
2646
|
className: "auto-sizing-input wrapper",
|
|
@@ -2625,7 +2648,7 @@ var AutoSizingInput = (0, import_react39.forwardRef)(
|
|
|
2625
2648
|
minWidth,
|
|
2626
2649
|
onClick,
|
|
2627
2650
|
style: { width: dynamicWidth },
|
|
2628
|
-
children: /* @__PURE__ */ (0,
|
|
2651
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("input", __spreadValues({ onChange: handleChange, ref: inputRef, value }, rest))
|
|
2629
2652
|
}
|
|
2630
2653
|
);
|
|
2631
2654
|
}
|
|
@@ -2633,12 +2656,12 @@ var AutoSizingInput = (0, import_react39.forwardRef)(
|
|
|
2633
2656
|
AutoSizingInput.displayName = "AutoSizingInput";
|
|
2634
2657
|
|
|
2635
2658
|
// src/atoms/bullet-text.tsx
|
|
2636
|
-
var
|
|
2659
|
+
var import_jsx_runtime60 = require("react/jsx-runtime");
|
|
2637
2660
|
|
|
2638
2661
|
// src/atoms/list.tsx
|
|
2639
2662
|
var import_react40 = require("react");
|
|
2640
2663
|
var import_clsx28 = require("clsx");
|
|
2641
|
-
var
|
|
2664
|
+
var import_jsx_runtime61 = require("react/jsx-runtime");
|
|
2642
2665
|
var ListContext = (0, import_react40.createContext)({
|
|
2643
2666
|
size: "large"
|
|
2644
2667
|
});
|
|
@@ -2782,15 +2805,15 @@ function statusLabelOf(status) {
|
|
|
2782
2805
|
}
|
|
2783
2806
|
|
|
2784
2807
|
// src/app/roleplay/parts/analysis-section.tsx
|
|
2785
|
-
var
|
|
2808
|
+
var import_jsx_runtime62 = require("react/jsx-runtime");
|
|
2786
2809
|
function Section2({
|
|
2787
2810
|
title,
|
|
2788
2811
|
desc,
|
|
2789
2812
|
children
|
|
2790
2813
|
}) {
|
|
2791
|
-
return /* @__PURE__ */ (0,
|
|
2792
|
-
/* @__PURE__ */ (0,
|
|
2793
|
-
/* @__PURE__ */ (0,
|
|
2814
|
+
return /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("section", { children: [
|
|
2815
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_themes7.Box, { mb: "3", children: [
|
|
2816
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
|
|
2794
2817
|
Heading2,
|
|
2795
2818
|
{
|
|
2796
2819
|
size: { initial: "4", md: "5" },
|
|
@@ -2799,7 +2822,7 @@ function Section2({
|
|
|
2799
2822
|
children: title
|
|
2800
2823
|
}
|
|
2801
2824
|
),
|
|
2802
|
-
desc ? /* @__PURE__ */ (0,
|
|
2825
|
+
desc ? /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_themes7.Box, { mt: "1", style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Typo, { as: "p", color: "gray", variant: "body", children: desc }) }) : null
|
|
2803
2826
|
] }),
|
|
2804
2827
|
children
|
|
2805
2828
|
] });
|
|
@@ -2813,9 +2836,9 @@ function AnalysisSection({
|
|
|
2813
2836
|
if (items.length === 0) return null;
|
|
2814
2837
|
const accentBorder = tone === "good" ? "var(--green-a6)" : "var(--amber-a6)";
|
|
2815
2838
|
const numColor = tone === "good" ? "var(--green-11)" : "var(--amber-11)";
|
|
2816
|
-
return /* @__PURE__ */ (0,
|
|
2817
|
-
index > 0 && /* @__PURE__ */ (0,
|
|
2818
|
-
/* @__PURE__ */ (0,
|
|
2839
|
+
return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Section2, { desc, title, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_themes23.Flex, { direction: "column", children: items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_themes7.Box, { children: [
|
|
2840
|
+
index > 0 && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_themes40.Separator, { size: "4" }),
|
|
2841
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(
|
|
2819
2842
|
import_themes23.Flex,
|
|
2820
2843
|
{
|
|
2821
2844
|
gap: "3",
|
|
@@ -2823,7 +2846,7 @@ function AnalysisSection({
|
|
|
2823
2846
|
py: "3",
|
|
2824
2847
|
style: { borderLeft: `2px solid ${accentBorder}` },
|
|
2825
2848
|
children: [
|
|
2826
|
-
/* @__PURE__ */ (0,
|
|
2849
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
|
|
2827
2850
|
Typo,
|
|
2828
2851
|
{
|
|
2829
2852
|
as: "span",
|
|
@@ -2834,9 +2857,9 @@ function AnalysisSection({
|
|
|
2834
2857
|
children: index + 1
|
|
2835
2858
|
}
|
|
2836
2859
|
),
|
|
2837
|
-
/* @__PURE__ */ (0,
|
|
2838
|
-
/* @__PURE__ */ (0,
|
|
2839
|
-
/* @__PURE__ */ (0,
|
|
2860
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_themes7.Box, { style: { minWidth: 0 }, children: [
|
|
2861
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Typo, { as: "p", variant: "body", weight: "medium", children: item.title }),
|
|
2862
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_themes7.Box, { mt: "1", style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Typo, { as: "p", variant: "body", children: item.detail }) })
|
|
2840
2863
|
] })
|
|
2841
2864
|
]
|
|
2842
2865
|
}
|
|
@@ -2845,15 +2868,15 @@ function AnalysisSection({
|
|
|
2845
2868
|
}
|
|
2846
2869
|
|
|
2847
2870
|
// src/app/roleplay/parts/coaching-panel.tsx
|
|
2848
|
-
var
|
|
2871
|
+
var import_jsx_runtime63 = require("react/jsx-runtime");
|
|
2849
2872
|
function Section3({
|
|
2850
2873
|
title,
|
|
2851
2874
|
desc,
|
|
2852
2875
|
children
|
|
2853
2876
|
}) {
|
|
2854
|
-
return /* @__PURE__ */ (0,
|
|
2855
|
-
/* @__PURE__ */ (0,
|
|
2856
|
-
/* @__PURE__ */ (0,
|
|
2877
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("section", { children: [
|
|
2878
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_themes7.Box, { mb: "3", children: [
|
|
2879
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
2857
2880
|
Heading2,
|
|
2858
2881
|
{
|
|
2859
2882
|
size: { initial: "4", md: "5" },
|
|
@@ -2862,21 +2885,21 @@ function Section3({
|
|
|
2862
2885
|
children: title
|
|
2863
2886
|
}
|
|
2864
2887
|
),
|
|
2865
|
-
desc ? /* @__PURE__ */ (0,
|
|
2888
|
+
desc ? /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_themes7.Box, { mt: "1", style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Typo, { as: "p", color: "gray", variant: "body", children: desc }) }) : null
|
|
2866
2889
|
] }),
|
|
2867
2890
|
children
|
|
2868
2891
|
] });
|
|
2869
2892
|
}
|
|
2870
2893
|
function CoachingPanel({ skills }) {
|
|
2871
2894
|
if (skills.length === 0) return null;
|
|
2872
|
-
return /* @__PURE__ */ (0,
|
|
2895
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Section3, { desc: "\uB2E4\uC74C \uC7AC\uB3C4\uC804\uC5D0 \uBC14\uB85C \uC4F8 \uB300\uD654 \uAE30\uC220", title: "\uC989\uC2DC \uC801\uC6A9 \uC2A4\uD0AC", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_themes24.Grid, { columns: "1", gap: "6", children: skills.map((skill, index) => /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
|
|
2873
2896
|
Card,
|
|
2874
2897
|
{
|
|
2875
2898
|
style: { padding: "var(--space-3)" },
|
|
2876
2899
|
variant: "surface",
|
|
2877
2900
|
children: [
|
|
2878
|
-
/* @__PURE__ */ (0,
|
|
2879
|
-
/* @__PURE__ */ (0,
|
|
2901
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_themes23.Flex, { align: "center", gap: "2", children: [
|
|
2902
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
2880
2903
|
import_themes23.Flex,
|
|
2881
2904
|
{
|
|
2882
2905
|
align: "center",
|
|
@@ -2888,7 +2911,7 @@ function CoachingPanel({ skills }) {
|
|
|
2888
2911
|
background: "var(--accent-9)",
|
|
2889
2912
|
flexShrink: 0
|
|
2890
2913
|
},
|
|
2891
|
-
children: /* @__PURE__ */ (0,
|
|
2914
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
2892
2915
|
Typo,
|
|
2893
2916
|
{
|
|
2894
2917
|
as: "span",
|
|
@@ -2901,10 +2924,10 @@ function CoachingPanel({ skills }) {
|
|
|
2901
2924
|
)
|
|
2902
2925
|
}
|
|
2903
2926
|
),
|
|
2904
|
-
/* @__PURE__ */ (0,
|
|
2927
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Typo, { as: "span", variant: "body", weight: "medium", children: skill.title })
|
|
2905
2928
|
] }),
|
|
2906
|
-
/* @__PURE__ */ (0,
|
|
2907
|
-
/* @__PURE__ */ (0,
|
|
2929
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_themes7.Box, { mt: "2", style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Typo, { as: "p", variant: "body", children: skill.description }) }),
|
|
2930
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
2908
2931
|
import_themes7.Box,
|
|
2909
2932
|
{
|
|
2910
2933
|
mt: "2",
|
|
@@ -2913,7 +2936,7 @@ function CoachingPanel({ skills }) {
|
|
|
2913
2936
|
borderRadius: "var(--radius-2)",
|
|
2914
2937
|
background: "var(--accent-a2)"
|
|
2915
2938
|
},
|
|
2916
|
-
children: /* @__PURE__ */ (0,
|
|
2939
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Typo, { as: "p", style: { color: "var(--accent-11)" }, variant: "body", children: skill.example })
|
|
2917
2940
|
}
|
|
2918
2941
|
)
|
|
2919
2942
|
]
|
|
@@ -2923,14 +2946,14 @@ function CoachingPanel({ skills }) {
|
|
|
2923
2946
|
}
|
|
2924
2947
|
|
|
2925
2948
|
// src/app/roleplay/parts/speech-share-bar.tsx
|
|
2926
|
-
var
|
|
2949
|
+
var import_jsx_runtime64 = require("react/jsx-runtime");
|
|
2927
2950
|
function SpeechShareBar({
|
|
2928
2951
|
share
|
|
2929
2952
|
}) {
|
|
2930
2953
|
const isOvertalking = share.userPct > SPEECH_OVERTALK_THRESHOLD;
|
|
2931
|
-
return /* @__PURE__ */ (0,
|
|
2932
|
-
/* @__PURE__ */ (0,
|
|
2933
|
-
/* @__PURE__ */ (0,
|
|
2954
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_themes7.Box, { children: [
|
|
2955
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_themes23.Flex, { align: "center", justify: "between", mb: "1", children: [
|
|
2956
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
|
|
2934
2957
|
Typo,
|
|
2935
2958
|
{
|
|
2936
2959
|
as: "span",
|
|
@@ -2946,13 +2969,13 @@ function SpeechShareBar({
|
|
|
2946
2969
|
]
|
|
2947
2970
|
}
|
|
2948
2971
|
),
|
|
2949
|
-
/* @__PURE__ */ (0,
|
|
2972
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Typo, { as: "span", color: "gray", variant: "caption", children: [
|
|
2950
2973
|
"\uC0C1\uB300 ",
|
|
2951
2974
|
share.partnerPct,
|
|
2952
2975
|
"%"
|
|
2953
2976
|
] })
|
|
2954
2977
|
] }),
|
|
2955
|
-
/* @__PURE__ */ (0,
|
|
2978
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
2956
2979
|
import_themes23.Flex,
|
|
2957
2980
|
{
|
|
2958
2981
|
style: {
|
|
@@ -2961,7 +2984,7 @@ function SpeechShareBar({
|
|
|
2961
2984
|
overflow: "hidden",
|
|
2962
2985
|
background: "var(--gray-4)"
|
|
2963
2986
|
},
|
|
2964
|
-
children: /* @__PURE__ */ (0,
|
|
2987
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
2965
2988
|
import_themes7.Box,
|
|
2966
2989
|
{
|
|
2967
2990
|
style: {
|
|
@@ -2972,12 +2995,12 @@ function SpeechShareBar({
|
|
|
2972
2995
|
)
|
|
2973
2996
|
}
|
|
2974
2997
|
),
|
|
2975
|
-
isOvertalking ? /* @__PURE__ */ (0,
|
|
2998
|
+
isOvertalking ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Typo, { as: "p", color: "red", mt: "1", variant: "caption", children: "\uC0C1\uB300\uC758 \uB9D0\uC744 \uB354 \uB4E3\uACE0 \uC9C8\uBB38\xB7\uACBD\uCCAD\uC758 \uBE44\uC911\uC744 \uB192\uC5EC \uBCF4\uC138\uC694" }) : null
|
|
2976
2999
|
] });
|
|
2977
3000
|
}
|
|
2978
3001
|
|
|
2979
3002
|
// src/app/roleplay/parts/score-summary.tsx
|
|
2980
|
-
var
|
|
3003
|
+
var import_jsx_runtime65 = require("react/jsx-runtime");
|
|
2981
3004
|
function ScoreSummary({
|
|
2982
3005
|
detail,
|
|
2983
3006
|
report,
|
|
@@ -2986,18 +3009,18 @@ function ScoreSummary({
|
|
|
2986
3009
|
var _a;
|
|
2987
3010
|
const scoreValue = (_a = detail.totalScore) != null ? _a : report.totalScore;
|
|
2988
3011
|
const comment = report.comment;
|
|
2989
|
-
return /* @__PURE__ */ (0,
|
|
3012
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
|
|
2990
3013
|
import_themes24.Grid,
|
|
2991
3014
|
{
|
|
2992
3015
|
align: "start",
|
|
2993
3016
|
columns: comment ? { initial: "1", md: "minmax(0, 240px) 1fr" } : "1",
|
|
2994
3017
|
gap: "5",
|
|
2995
3018
|
children: [
|
|
2996
|
-
/* @__PURE__ */ (0,
|
|
2997
|
-
/* @__PURE__ */ (0,
|
|
2998
|
-
/* @__PURE__ */ (0,
|
|
2999
|
-
/* @__PURE__ */ (0,
|
|
3000
|
-
/* @__PURE__ */ (0,
|
|
3019
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(Card, { variant: "surface", children: [
|
|
3020
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_themes23.Flex, { align: "center", direction: "column", gap: "2", py: "3", children: [
|
|
3021
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Typo, { as: "p", color: "gray", variant: "body", weight: "medium", children: "\uC885\uD569 \uC810\uC218" }),
|
|
3022
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_themes23.Flex, { align: "baseline", gap: "1", children: [
|
|
3023
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
3001
3024
|
Typo,
|
|
3002
3025
|
{
|
|
3003
3026
|
as: "span",
|
|
@@ -3011,18 +3034,18 @@ function ScoreSummary({
|
|
|
3011
3034
|
children: scoreValue != null ? scoreValue : "\u2014"
|
|
3012
3035
|
}
|
|
3013
3036
|
),
|
|
3014
|
-
/* @__PURE__ */ (0,
|
|
3037
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Typo, { as: "span", color: "gray", mono: true, variant: "subtitle", children: "/100" })
|
|
3015
3038
|
] })
|
|
3016
3039
|
] }),
|
|
3017
|
-
speechShare ? /* @__PURE__ */ (0,
|
|
3018
|
-
/* @__PURE__ */ (0,
|
|
3019
|
-
/* @__PURE__ */ (0,
|
|
3040
|
+
speechShare ? /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
|
|
3041
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_themes40.Separator, { my: "3", size: "4" }),
|
|
3042
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(SpeechShareBar, { share: speechShare })
|
|
3020
3043
|
] }) : null
|
|
3021
3044
|
] }),
|
|
3022
|
-
comment ? /* @__PURE__ */ (0,
|
|
3023
|
-
/* @__PURE__ */ (0,
|
|
3024
|
-
/* @__PURE__ */ (0,
|
|
3025
|
-
report.deduction ? /* @__PURE__ */ (0,
|
|
3045
|
+
comment ? /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_themes23.Flex, { direction: "column", gap: "3", children: [
|
|
3046
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Typo, { as: "p", variant: "body", weight: "medium", children: "\uC885\uD569 \uBD84\uC11D" }),
|
|
3047
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_themes7.Box, { style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Typo, { as: "p", variant: "body", children: comment }) }),
|
|
3048
|
+
report.deduction ? /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
|
|
3026
3049
|
import_themes7.Box,
|
|
3027
3050
|
{
|
|
3028
3051
|
pl: "3",
|
|
@@ -3034,7 +3057,7 @@ function ScoreSummary({
|
|
|
3034
3057
|
borderRadius: "var(--radius-2)"
|
|
3035
3058
|
},
|
|
3036
3059
|
children: [
|
|
3037
|
-
/* @__PURE__ */ (0,
|
|
3060
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
|
|
3038
3061
|
Typo,
|
|
3039
3062
|
{
|
|
3040
3063
|
as: "p",
|
|
@@ -3049,7 +3072,7 @@ function ScoreSummary({
|
|
|
3049
3072
|
]
|
|
3050
3073
|
}
|
|
3051
3074
|
),
|
|
3052
|
-
/* @__PURE__ */ (0,
|
|
3075
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_themes7.Box, { mt: "1", style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
3053
3076
|
Typo,
|
|
3054
3077
|
{
|
|
3055
3078
|
as: "p",
|
|
@@ -3076,10 +3099,58 @@ var import_react_table2 = require("@tanstack/react-table");
|
|
|
3076
3099
|
var import_react42 = require("react");
|
|
3077
3100
|
var import_themes53 = require("@radix-ui/themes");
|
|
3078
3101
|
|
|
3102
|
+
// src/molecules/empty-state.tsx
|
|
3103
|
+
var import_jsx_runtime66 = require("react/jsx-runtime");
|
|
3104
|
+
var ICON_SIZE = {
|
|
3105
|
+
illustration: 120,
|
|
3106
|
+
compact: 56
|
|
3107
|
+
};
|
|
3108
|
+
function EmptyState(_a) {
|
|
3109
|
+
var _b = _a, {
|
|
3110
|
+
size = "illustration",
|
|
3111
|
+
heading,
|
|
3112
|
+
body,
|
|
3113
|
+
icon
|
|
3114
|
+
} = _b, flexProps = __objRest(_b, [
|
|
3115
|
+
"size",
|
|
3116
|
+
"heading",
|
|
3117
|
+
"body",
|
|
3118
|
+
"icon"
|
|
3119
|
+
]);
|
|
3120
|
+
const isCompact = size === "compact";
|
|
3121
|
+
const iconSize = ICON_SIZE[size];
|
|
3122
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
|
|
3123
|
+
import_themes23.Flex,
|
|
3124
|
+
__spreadProps(__spreadValues({
|
|
3125
|
+
align: "center",
|
|
3126
|
+
direction: "column",
|
|
3127
|
+
gap: isCompact ? "2" : "3",
|
|
3128
|
+
justify: "center",
|
|
3129
|
+
py: isCompact ? "5" : "9",
|
|
3130
|
+
width: "100%"
|
|
3131
|
+
}, flexProps), {
|
|
3132
|
+
children: [
|
|
3133
|
+
icon != null ? icon : /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
3134
|
+
EmptyBoxIcon,
|
|
3135
|
+
{
|
|
3136
|
+
color: "var(--gray-8)",
|
|
3137
|
+
height: iconSize,
|
|
3138
|
+
width: iconSize
|
|
3139
|
+
}
|
|
3140
|
+
),
|
|
3141
|
+
heading || body ? /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_themes23.Flex, { align: "center", direction: "column", gap: "1", children: [
|
|
3142
|
+
heading ? isCompact ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Typo, { color: "gray", variant: "subtitle", children: heading }) : /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Heading2, { color: "gray", variant: "heading5", children: heading }) : null,
|
|
3143
|
+
body ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Typo, { color: "gray", variant: isCompact ? "caption" : "body", children: body }) : null
|
|
3144
|
+
] }) : null
|
|
3145
|
+
]
|
|
3146
|
+
})
|
|
3147
|
+
);
|
|
3148
|
+
}
|
|
3149
|
+
|
|
3079
3150
|
// src/molecules/expand-table/row.tsx
|
|
3080
3151
|
var import_react_table = require("@tanstack/react-table");
|
|
3081
3152
|
var import_react41 = require("react");
|
|
3082
|
-
var
|
|
3153
|
+
var import_jsx_runtime67 = require("react/jsx-runtime");
|
|
3083
3154
|
function Row(props) {
|
|
3084
3155
|
const { row, ExpandComp, gridTemplateColumns, getRowStyle, getCellStyle } = props;
|
|
3085
3156
|
const [open, setOpen] = (0, import_react41.useState)(false);
|
|
@@ -3098,8 +3169,8 @@ function Row(props) {
|
|
|
3098
3169
|
}
|
|
3099
3170
|
return baseCls.join(" ");
|
|
3100
3171
|
}, [ExpandComp, props.onRowClick]);
|
|
3101
|
-
return /* @__PURE__ */ (0,
|
|
3102
|
-
/* @__PURE__ */ (0,
|
|
3172
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: rowClassName, children: [
|
|
3173
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
3103
3174
|
"button",
|
|
3104
3175
|
{
|
|
3105
3176
|
className: "tr",
|
|
@@ -3112,7 +3183,7 @@ function Row(props) {
|
|
|
3112
3183
|
var _a, _b, _c;
|
|
3113
3184
|
const autoSize = (_a = cell.column.columnDef.meta) == null ? void 0 : _a.autoSize;
|
|
3114
3185
|
const justifyContent = ((_b = cell.column.columnDef.meta) == null ? void 0 : _b.align) || props.defaultAlign;
|
|
3115
|
-
return /* @__PURE__ */ (0,
|
|
3186
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
|
|
3116
3187
|
"div",
|
|
3117
3188
|
{
|
|
3118
3189
|
className: "td",
|
|
@@ -3123,7 +3194,7 @@ function Row(props) {
|
|
|
3123
3194
|
}, (getCellStyle == null ? void 0 : getCellStyle(row.original)) || {}),
|
|
3124
3195
|
children: [
|
|
3125
3196
|
(0, import_react_table.flexRender)(cell.column.columnDef.cell, cell.getContext()),
|
|
3126
|
-
((_c = cell.column.columnDef.meta) == null ? void 0 : _c.OpenBtn) ? /* @__PURE__ */ (0,
|
|
3197
|
+
((_c = cell.column.columnDef.meta) == null ? void 0 : _c.OpenBtn) ? /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
3127
3198
|
cell.column.columnDef.meta.OpenBtn,
|
|
3128
3199
|
{
|
|
3129
3200
|
data: row.original,
|
|
@@ -3139,12 +3210,12 @@ function Row(props) {
|
|
|
3139
3210
|
},
|
|
3140
3211
|
`tr_${row.id}`
|
|
3141
3212
|
),
|
|
3142
|
-
ExpandComp ? /* @__PURE__ */ (0,
|
|
3213
|
+
ExpandComp ? /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Collapse, { open, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "expand-comp-wrapper", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ExpandComp, { row }) }) }) : null
|
|
3143
3214
|
] }, `tr-wrapper_${row.id}`);
|
|
3144
3215
|
}
|
|
3145
3216
|
|
|
3146
3217
|
// src/molecules/expand-table/index.tsx
|
|
3147
|
-
var
|
|
3218
|
+
var import_jsx_runtime68 = require("react/jsx-runtime");
|
|
3148
3219
|
var sortButtonColorMapper = {
|
|
3149
3220
|
card: {
|
|
3150
3221
|
selected: "var(--iris-10)",
|
|
@@ -3225,7 +3296,7 @@ function ExpandTable(props) {
|
|
|
3225
3296
|
const helpCompRender = (0, import_react42.useCallback)(
|
|
3226
3297
|
(rowLength) => {
|
|
3227
3298
|
if (isLoading) {
|
|
3228
|
-
return /* @__PURE__ */ (0,
|
|
3299
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
3229
3300
|
import_themes23.Flex,
|
|
3230
3301
|
{
|
|
3231
3302
|
align: "center",
|
|
@@ -3233,12 +3304,12 @@ function ExpandTable(props) {
|
|
|
3233
3304
|
justify: "center",
|
|
3234
3305
|
p: "5",
|
|
3235
3306
|
width: "100%",
|
|
3236
|
-
children: /* @__PURE__ */ (0,
|
|
3307
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_themes50.Spinner, {})
|
|
3237
3308
|
}
|
|
3238
3309
|
);
|
|
3239
3310
|
}
|
|
3240
3311
|
if (rowLength === 0) {
|
|
3241
|
-
return /* @__PURE__ */ (0,
|
|
3312
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "tr", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_themes23.Flex, { align: "center", justify: "center", children: placeholder || /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(EmptyState, { heading: "\uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4", size: "compact" }) }) }, "expand_placeholder");
|
|
3242
3313
|
}
|
|
3243
3314
|
return null;
|
|
3244
3315
|
},
|
|
@@ -3248,9 +3319,9 @@ function ExpandTable(props) {
|
|
|
3248
3319
|
if (!data) return 0;
|
|
3249
3320
|
return Math.ceil(data.length / pageSize);
|
|
3250
3321
|
}, [data, pageSize]);
|
|
3251
|
-
return /* @__PURE__ */ (0,
|
|
3252
|
-
/* @__PURE__ */ (0,
|
|
3253
|
-
/* @__PURE__ */ (0,
|
|
3322
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: `expand-table-wrapper ${variant}${slim ? " slim" : ""}`, children: [
|
|
3323
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "expand-table", style: tableStyle, children: [
|
|
3324
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "thead", children: getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
3254
3325
|
"div",
|
|
3255
3326
|
{
|
|
3256
3327
|
className: "tr",
|
|
@@ -3261,36 +3332,36 @@ function ExpandTable(props) {
|
|
|
3261
3332
|
const sortedState = header.column.getIsSorted();
|
|
3262
3333
|
const justifyContent = ((_a = header.column.columnDef.meta) == null ? void 0 : _a.align) || defaultAlign;
|
|
3263
3334
|
if (sortable) {
|
|
3264
|
-
return /* @__PURE__ */ (0,
|
|
3335
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: `${justifyContent} th`, children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
|
|
3265
3336
|
"button",
|
|
3266
3337
|
{
|
|
3267
3338
|
onClick: header.column.getToggleSortingHandler(),
|
|
3268
3339
|
style: { cursor: "pointer" },
|
|
3269
3340
|
type: "button",
|
|
3270
3341
|
children: [
|
|
3271
|
-
/* @__PURE__ */ (0,
|
|
3342
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Typo, { as: "div", variant: "body", children: (0, import_react_table2.flexRender)(
|
|
3272
3343
|
header.column.columnDef.header,
|
|
3273
3344
|
header.getContext()
|
|
3274
3345
|
) }),
|
|
3275
|
-
/* @__PURE__ */ (0,
|
|
3346
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
|
|
3276
3347
|
import_themes23.Flex,
|
|
3277
3348
|
{
|
|
3278
3349
|
direction: "column",
|
|
3279
3350
|
style: { marginLeft: "var(--space-2)" },
|
|
3280
3351
|
children: [
|
|
3281
|
-
sortedState === false && /* @__PURE__ */ (0,
|
|
3352
|
+
sortedState === false && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
3282
3353
|
TriangleArrowDownIcon,
|
|
3283
3354
|
{
|
|
3284
3355
|
color: sortButtonColorMapper[variant].unselected
|
|
3285
3356
|
}
|
|
3286
3357
|
),
|
|
3287
|
-
sortedState === "asc" && /* @__PURE__ */ (0,
|
|
3358
|
+
sortedState === "asc" && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
3288
3359
|
TriangleArrowUpIcon,
|
|
3289
3360
|
{
|
|
3290
3361
|
color: sortButtonColorMapper[variant].selected
|
|
3291
3362
|
}
|
|
3292
3363
|
),
|
|
3293
|
-
sortedState === "desc" && /* @__PURE__ */ (0,
|
|
3364
|
+
sortedState === "desc" && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
3294
3365
|
TriangleArrowDownIcon,
|
|
3295
3366
|
{
|
|
3296
3367
|
color: sortButtonColorMapper[variant].selected
|
|
@@ -3303,7 +3374,7 @@ function ExpandTable(props) {
|
|
|
3303
3374
|
}
|
|
3304
3375
|
) }, header.id);
|
|
3305
3376
|
}
|
|
3306
|
-
return /* @__PURE__ */ (0,
|
|
3377
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: `${justifyContent} th`, children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Typo, { as: "div", variant: "body", children: (0, import_react_table2.flexRender)(
|
|
3307
3378
|
header.column.columnDef.header,
|
|
3308
3379
|
header.getContext()
|
|
3309
3380
|
) }) }, header.id);
|
|
@@ -3311,8 +3382,8 @@ function ExpandTable(props) {
|
|
|
3311
3382
|
},
|
|
3312
3383
|
headerGroup.id
|
|
3313
3384
|
)) }),
|
|
3314
|
-
/* @__PURE__ */ (0,
|
|
3315
|
-
return /* @__PURE__ */ (0,
|
|
3385
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_themes53.ScrollArea, { className: "tbody", children: helpCompRender(rowModels.rows.length) || rowModels.rows.map((row) => {
|
|
3386
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
3316
3387
|
Row,
|
|
3317
3388
|
{
|
|
3318
3389
|
ExpandComp,
|
|
@@ -3327,7 +3398,7 @@ function ExpandTable(props) {
|
|
|
3327
3398
|
);
|
|
3328
3399
|
}) })
|
|
3329
3400
|
] }),
|
|
3330
|
-
showPagination ? /* @__PURE__ */ (0,
|
|
3401
|
+
showPagination ? /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_themes23.Flex, { justify: "end", pt: "4", width: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
3331
3402
|
Pagination,
|
|
3332
3403
|
{
|
|
3333
3404
|
count: pageCount,
|
|
@@ -3340,13 +3411,13 @@ function ExpandTable(props) {
|
|
|
3340
3411
|
}
|
|
3341
3412
|
|
|
3342
3413
|
// src/molecules/navigation.tsx
|
|
3343
|
-
var
|
|
3414
|
+
var import_jsx_runtime69 = require("react/jsx-runtime");
|
|
3344
3415
|
|
|
3345
3416
|
// src/molecules/date-picker/index.tsx
|
|
3346
3417
|
var import_react43 = require("react");
|
|
3347
3418
|
var import_react_datepicker = __toESM(require("react-datepicker"), 1);
|
|
3348
3419
|
var import_locale = require("date-fns/locale");
|
|
3349
|
-
var
|
|
3420
|
+
var import_jsx_runtime70 = require("react/jsx-runtime");
|
|
3350
3421
|
var DatePicker = (0, import_react43.forwardRef)(
|
|
3351
3422
|
(props, ref) => {
|
|
3352
3423
|
const _a = props, { fullWidth } = _a, rest = __objRest(_a, ["fullWidth"]);
|
|
@@ -3377,7 +3448,7 @@ var DatePicker = (0, import_react43.forwardRef)(
|
|
|
3377
3448
|
setIsMonthDropdownOpen
|
|
3378
3449
|
}));
|
|
3379
3450
|
}, [isMonthDropdownOpen, isYearDropdownOpen, props]);
|
|
3380
|
-
return /* @__PURE__ */ (0,
|
|
3451
|
+
return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_themes23.Flex, { p: "0", width: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
|
|
3381
3452
|
import_react_datepicker.default,
|
|
3382
3453
|
__spreadProps(__spreadValues({
|
|
3383
3454
|
dateFormat: "yyyy/MM/dd h:mm aa",
|
|
@@ -3425,19 +3496,19 @@ function DropdownSelector({
|
|
|
3425
3496
|
});
|
|
3426
3497
|
}
|
|
3427
3498
|
}, [isOpen]);
|
|
3428
|
-
return /* @__PURE__ */ (0,
|
|
3429
|
-
/* @__PURE__ */ (0,
|
|
3499
|
+
return /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(Popover.Root, { modal: true, onOpenChange, open: isOpen, children: [
|
|
3500
|
+
/* @__PURE__ */ (0, import_jsx_runtime70.jsx)(Popover.Trigger, { children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(Button, { className: "react-datepicker_dropdown_header", variant: "ghost", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(Heading2, { variant: "heading4", weight: "regular", children: [
|
|
3430
3501
|
selectedValue,
|
|
3431
3502
|
suffix
|
|
3432
3503
|
] }) }) }),
|
|
3433
|
-
/* @__PURE__ */ (0,
|
|
3504
|
+
/* @__PURE__ */ (0, import_jsx_runtime70.jsx)(Popover.Content, { side: "bottom", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
|
|
3434
3505
|
import_themes7.Box,
|
|
3435
3506
|
{
|
|
3436
3507
|
maxHeight: "200px",
|
|
3437
3508
|
overflowY: "auto",
|
|
3438
3509
|
ref: scrollContainerRef,
|
|
3439
3510
|
style: { scrollbarWidth: "none" },
|
|
3440
|
-
children: /* @__PURE__ */ (0,
|
|
3511
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_themes23.Flex, { direction: "column", gap: "1", children: options.map((item) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
|
|
3441
3512
|
Button,
|
|
3442
3513
|
{
|
|
3443
3514
|
className: "react-datepicker_dropdown_item",
|
|
@@ -3451,7 +3522,7 @@ function DropdownSelector({
|
|
|
3451
3522
|
e.preventDefault();
|
|
3452
3523
|
},
|
|
3453
3524
|
variant: "transparent",
|
|
3454
|
-
children: /* @__PURE__ */ (0,
|
|
3525
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(Typo, { weight: item === selectedValue ? "bold" : void 0, children: [
|
|
3455
3526
|
item,
|
|
3456
3527
|
suffix
|
|
3457
3528
|
] })
|
|
@@ -3482,8 +3553,8 @@ var getRenderCustomHeader = (props) => {
|
|
|
3482
3553
|
} = props;
|
|
3483
3554
|
const year = date ? new Date(date).getFullYear() : "-";
|
|
3484
3555
|
const month = date ? new Date(date).getMonth() + 1 : "-";
|
|
3485
|
-
return /* @__PURE__ */ (0,
|
|
3486
|
-
/* @__PURE__ */ (0,
|
|
3556
|
+
return /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(import_themes23.Flex, { align: "center", justify: "between", pl: "2", pr: "2", children: [
|
|
3557
|
+
/* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
|
|
3487
3558
|
IconButton,
|
|
3488
3559
|
{
|
|
3489
3560
|
className: "react-datepicker_dropdown_header",
|
|
@@ -3491,11 +3562,11 @@ var getRenderCustomHeader = (props) => {
|
|
|
3491
3562
|
onClick: decreaseMonth,
|
|
3492
3563
|
type: "button",
|
|
3493
3564
|
variant: "ghost",
|
|
3494
|
-
children: /* @__PURE__ */ (0,
|
|
3565
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_react_icons2.ChevronLeftIcon, {})
|
|
3495
3566
|
}
|
|
3496
3567
|
),
|
|
3497
|
-
/* @__PURE__ */ (0,
|
|
3498
|
-
/* @__PURE__ */ (0,
|
|
3568
|
+
/* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(import_themes23.Flex, { gap: "3", children: [
|
|
3569
|
+
/* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
|
|
3499
3570
|
DropdownSelector,
|
|
3500
3571
|
{
|
|
3501
3572
|
isOpen: isYearDropdownOpen,
|
|
@@ -3509,7 +3580,7 @@ var getRenderCustomHeader = (props) => {
|
|
|
3509
3580
|
suffix: "\uB144"
|
|
3510
3581
|
}
|
|
3511
3582
|
),
|
|
3512
|
-
/* @__PURE__ */ (0,
|
|
3583
|
+
/* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
|
|
3513
3584
|
DropdownSelector,
|
|
3514
3585
|
{
|
|
3515
3586
|
isOpen: isMonthDropdownOpen,
|
|
@@ -3524,7 +3595,7 @@ var getRenderCustomHeader = (props) => {
|
|
|
3524
3595
|
}
|
|
3525
3596
|
)
|
|
3526
3597
|
] }),
|
|
3527
|
-
/* @__PURE__ */ (0,
|
|
3598
|
+
/* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
|
|
3528
3599
|
IconButton,
|
|
3529
3600
|
{
|
|
3530
3601
|
className: "react-datepicker_dropdown_header",
|
|
@@ -3532,7 +3603,7 @@ var getRenderCustomHeader = (props) => {
|
|
|
3532
3603
|
onClick: increaseMonth,
|
|
3533
3604
|
type: "button",
|
|
3534
3605
|
variant: "ghost",
|
|
3535
|
-
children: /* @__PURE__ */ (0,
|
|
3606
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_react_icons2.ChevronRightIcon, {})
|
|
3536
3607
|
}
|
|
3537
3608
|
)
|
|
3538
3609
|
] });
|
|
@@ -3543,12 +3614,12 @@ var getRenderCustomHeader = (props) => {
|
|
|
3543
3614
|
// src/molecules/dot-navigation.tsx
|
|
3544
3615
|
var import_react44 = require("react");
|
|
3545
3616
|
var import_react_icons3 = require("@radix-ui/react-icons");
|
|
3546
|
-
var
|
|
3617
|
+
var import_jsx_runtime71 = require("react/jsx-runtime");
|
|
3547
3618
|
|
|
3548
3619
|
// src/molecules/stepper.tsx
|
|
3549
3620
|
var import_react45 = require("react");
|
|
3550
3621
|
var import_themes54 = require("@radix-ui/themes");
|
|
3551
|
-
var
|
|
3622
|
+
var import_jsx_runtime72 = require("react/jsx-runtime");
|
|
3552
3623
|
var StepContext = (0, import_react45.createContext)({
|
|
3553
3624
|
active: false,
|
|
3554
3625
|
completed: false,
|
|
@@ -3558,20 +3629,20 @@ var StepContext = (0, import_react45.createContext)({
|
|
|
3558
3629
|
// src/molecules/tag-selector.tsx
|
|
3559
3630
|
var import_react46 = require("react");
|
|
3560
3631
|
var import_react_icons4 = require("@radix-ui/react-icons");
|
|
3561
|
-
var
|
|
3632
|
+
var import_jsx_runtime73 = require("react/jsx-runtime");
|
|
3562
3633
|
|
|
3563
3634
|
// src/molecules/learning-post.tsx
|
|
3564
|
-
var
|
|
3635
|
+
var import_jsx_runtime74 = require("react/jsx-runtime");
|
|
3565
3636
|
|
|
3566
3637
|
// src/molecules/force-refresh.tsx
|
|
3567
3638
|
var import_react_icons5 = require("@radix-ui/react-icons");
|
|
3568
|
-
var
|
|
3639
|
+
var import_jsx_runtime75 = require("react/jsx-runtime");
|
|
3569
3640
|
|
|
3570
3641
|
// src/molecules/date-picker/date-picker-button.tsx
|
|
3571
3642
|
var import_react47 = require("react");
|
|
3572
3643
|
var import_date_fns2 = require("date-fns");
|
|
3573
3644
|
var import_clsx29 = require("clsx");
|
|
3574
|
-
var
|
|
3645
|
+
var import_jsx_runtime76 = require("react/jsx-runtime");
|
|
3575
3646
|
|
|
3576
3647
|
// src/molecules/time-select.tsx
|
|
3577
3648
|
var import_react48 = require("react");
|
|
@@ -3598,34 +3669,34 @@ for (const opt of AI_CALLOUT_ICON_OPTIONS) {
|
|
|
3598
3669
|
}
|
|
3599
3670
|
|
|
3600
3671
|
// src/molecules/time-select.tsx
|
|
3601
|
-
var
|
|
3672
|
+
var import_jsx_runtime77 = require("react/jsx-runtime");
|
|
3602
3673
|
|
|
3603
3674
|
// src/molecules/radio-button-card.tsx
|
|
3604
3675
|
var import_react49 = require("react");
|
|
3605
|
-
var
|
|
3676
|
+
var import_jsx_runtime78 = require("react/jsx-runtime");
|
|
3606
3677
|
var RadioCardContext = (0, import_react49.createContext)({});
|
|
3607
3678
|
|
|
3608
3679
|
// src/molecules/download-card.tsx
|
|
3609
3680
|
var import_react_icons6 = require("@radix-ui/react-icons");
|
|
3610
|
-
var
|
|
3681
|
+
var import_jsx_runtime79 = require("react/jsx-runtime");
|
|
3611
3682
|
|
|
3612
3683
|
// src/molecules/ghost-post.tsx
|
|
3613
|
-
var
|
|
3684
|
+
var import_jsx_runtime80 = require("react/jsx-runtime");
|
|
3614
3685
|
|
|
3615
3686
|
// src/molecules/curriculumV2/curriculum-context.tsx
|
|
3616
3687
|
var import_react50 = require("react");
|
|
3617
|
-
var
|
|
3688
|
+
var import_jsx_runtime81 = require("react/jsx-runtime");
|
|
3618
3689
|
var CurriculumContext = (0, import_react50.createContext)(
|
|
3619
3690
|
void 0
|
|
3620
3691
|
);
|
|
3621
3692
|
|
|
3622
3693
|
// src/molecules/curriculumV2/curriculum-sub-nav.tsx
|
|
3623
3694
|
var import_react51 = require("react");
|
|
3624
|
-
var
|
|
3695
|
+
var import_jsx_runtime82 = require("react/jsx-runtime");
|
|
3625
3696
|
|
|
3626
3697
|
// src/molecules/curriculumV2/CurriculumContents/curriculum-video.tsx
|
|
3627
3698
|
var import_react52 = require("react");
|
|
3628
|
-
var
|
|
3699
|
+
var import_jsx_runtime83 = require("react/jsx-runtime");
|
|
3629
3700
|
|
|
3630
3701
|
// src/molecules/curriculumV2/CurriculumContents/curriculum-review.tsx
|
|
3631
3702
|
var import_react55 = require("react");
|
|
@@ -3636,88 +3707,88 @@ var import_react53 = require("react");
|
|
|
3636
3707
|
var import_formik = require("formik");
|
|
3637
3708
|
var import_lodash_es = require("lodash-es");
|
|
3638
3709
|
var Yup = __toESM(require("yup"), 1);
|
|
3639
|
-
var
|
|
3710
|
+
var import_jsx_runtime84 = require("react/jsx-runtime");
|
|
3640
3711
|
var CurriculumReviewContext = (0, import_react53.createContext)(void 0);
|
|
3641
3712
|
|
|
3642
3713
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/start-review.tsx
|
|
3643
|
-
var
|
|
3714
|
+
var import_jsx_runtime85 = require("react/jsx-runtime");
|
|
3644
3715
|
|
|
3645
3716
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/complete-review.tsx
|
|
3646
|
-
var
|
|
3717
|
+
var import_jsx_runtime86 = require("react/jsx-runtime");
|
|
3647
3718
|
|
|
3648
3719
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-layout.tsx
|
|
3649
|
-
var
|
|
3720
|
+
var import_jsx_runtime87 = require("react/jsx-runtime");
|
|
3650
3721
|
|
|
3651
3722
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-header.tsx
|
|
3652
|
-
var
|
|
3723
|
+
var import_jsx_runtime88 = require("react/jsx-runtime");
|
|
3653
3724
|
|
|
3654
3725
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-footer.tsx
|
|
3655
|
-
var
|
|
3726
|
+
var import_jsx_runtime89 = require("react/jsx-runtime");
|
|
3656
3727
|
|
|
3657
3728
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-radio.tsx
|
|
3658
3729
|
var import_react54 = require("react");
|
|
3659
3730
|
|
|
3660
3731
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-comp.tsx
|
|
3661
|
-
var
|
|
3732
|
+
var import_jsx_runtime90 = require("react/jsx-runtime");
|
|
3662
3733
|
|
|
3663
3734
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-radio.tsx
|
|
3664
|
-
var
|
|
3735
|
+
var import_jsx_runtime91 = require("react/jsx-runtime");
|
|
3665
3736
|
|
|
3666
3737
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-text.tsx
|
|
3667
|
-
var
|
|
3738
|
+
var import_jsx_runtime92 = require("react/jsx-runtime");
|
|
3668
3739
|
|
|
3669
3740
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-option.tsx
|
|
3670
|
-
var
|
|
3741
|
+
var import_jsx_runtime93 = require("react/jsx-runtime");
|
|
3671
3742
|
|
|
3672
3743
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-text.tsx
|
|
3673
|
-
var
|
|
3744
|
+
var import_jsx_runtime94 = require("react/jsx-runtime");
|
|
3674
3745
|
|
|
3675
3746
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-body.tsx
|
|
3676
|
-
var
|
|
3747
|
+
var import_jsx_runtime95 = require("react/jsx-runtime");
|
|
3677
3748
|
|
|
3678
3749
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/index.tsx
|
|
3679
|
-
var
|
|
3750
|
+
var import_jsx_runtime96 = require("react/jsx-runtime");
|
|
3680
3751
|
|
|
3681
3752
|
// src/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/index.tsx
|
|
3682
|
-
var
|
|
3753
|
+
var import_jsx_runtime97 = require("react/jsx-runtime");
|
|
3683
3754
|
|
|
3684
3755
|
// src/molecules/curriculumV2/CurriculumContents/curriculum-review.tsx
|
|
3685
|
-
var
|
|
3756
|
+
var import_jsx_runtime98 = require("react/jsx-runtime");
|
|
3686
3757
|
|
|
3687
3758
|
// src/molecules/curriculumV2/CurriculumContents/curriculum-ai-traning.tsx
|
|
3688
3759
|
var import_react56 = require("react");
|
|
3689
|
-
var
|
|
3760
|
+
var import_jsx_runtime99 = require("react/jsx-runtime");
|
|
3690
3761
|
|
|
3691
3762
|
// src/molecules/curriculumV2/CurriculumContents/curriculum-file-download.tsx
|
|
3692
3763
|
var import_react57 = require("react");
|
|
3693
|
-
var
|
|
3764
|
+
var import_jsx_runtime100 = require("react/jsx-runtime");
|
|
3694
3765
|
|
|
3695
3766
|
// src/molecules/curriculumV2/CurriculumContents/index.tsx
|
|
3696
|
-
var
|
|
3767
|
+
var import_jsx_runtime101 = require("react/jsx-runtime");
|
|
3697
3768
|
|
|
3698
3769
|
// src/molecules/curriculumV2/CurriculumSidebar/index.tsx
|
|
3699
3770
|
var import_react58 = require("react");
|
|
3700
3771
|
|
|
3701
3772
|
// src/molecules/curriculumV2/CurriculumSidebar/Items/section-title.tsx
|
|
3702
|
-
var
|
|
3773
|
+
var import_jsx_runtime102 = require("react/jsx-runtime");
|
|
3703
3774
|
|
|
3704
3775
|
// src/molecules/curriculumV2/CurriculumSidebar/Items/curriculum-sidebar-item-wrapper.tsx
|
|
3705
|
-
var
|
|
3776
|
+
var import_jsx_runtime103 = require("react/jsx-runtime");
|
|
3706
3777
|
|
|
3707
3778
|
// src/molecules/curriculumV2/CurriculumSidebar/Items/curriculum-item-title.tsx
|
|
3708
|
-
var
|
|
3779
|
+
var import_jsx_runtime104 = require("react/jsx-runtime");
|
|
3709
3780
|
|
|
3710
3781
|
// src/molecules/curriculumV2/CurriculumSidebar/Items/section-item.tsx
|
|
3711
|
-
var
|
|
3782
|
+
var import_jsx_runtime105 = require("react/jsx-runtime");
|
|
3712
3783
|
|
|
3713
3784
|
// src/molecules/curriculumV2/CurriculumSidebar/sidebar-item.tsx
|
|
3714
|
-
var
|
|
3785
|
+
var import_jsx_runtime106 = require("react/jsx-runtime");
|
|
3715
3786
|
|
|
3716
3787
|
// src/molecules/curriculumV2/CurriculumSidebar/index.tsx
|
|
3717
|
-
var
|
|
3788
|
+
var import_jsx_runtime107 = require("react/jsx-runtime");
|
|
3718
3789
|
|
|
3719
3790
|
// src/molecules/curriculumV2/curriculum-v2-layout.tsx
|
|
3720
|
-
var
|
|
3791
|
+
var import_jsx_runtime108 = require("react/jsx-runtime");
|
|
3721
3792
|
|
|
3722
3793
|
// src/molecules/dynamic-form.tsx
|
|
3723
3794
|
var import_react60 = require("react");
|
|
@@ -3727,26 +3798,26 @@ var import_themes55 = require("@radix-ui/themes");
|
|
|
3727
3798
|
|
|
3728
3799
|
// src/context/dynamic-form-context.tsx
|
|
3729
3800
|
var import_react59 = require("react");
|
|
3730
|
-
var
|
|
3801
|
+
var import_jsx_runtime109 = require("react/jsx-runtime");
|
|
3731
3802
|
var DynamicFormContext = (0, import_react59.createContext)(null);
|
|
3732
3803
|
|
|
3733
3804
|
// src/molecules/dynamic-field.tsx
|
|
3734
|
-
var
|
|
3805
|
+
var import_jsx_runtime110 = require("react/jsx-runtime");
|
|
3735
3806
|
|
|
3736
3807
|
// src/molecules/dynamic-form.tsx
|
|
3737
|
-
var
|
|
3808
|
+
var import_jsx_runtime111 = require("react/jsx-runtime");
|
|
3738
3809
|
|
|
3739
3810
|
// src/molecules/one-on-one-guide-list.tsx
|
|
3740
3811
|
var import_react61 = require("react");
|
|
3741
|
-
var
|
|
3812
|
+
var import_jsx_runtime112 = require("react/jsx-runtime");
|
|
3742
3813
|
|
|
3743
3814
|
// src/molecules/description-json-render.tsx
|
|
3744
|
-
var
|
|
3815
|
+
var import_jsx_runtime113 = require("react/jsx-runtime");
|
|
3745
3816
|
|
|
3746
3817
|
// src/molecules/training-info-guideline.tsx
|
|
3747
3818
|
var import_react62 = require("react");
|
|
3748
3819
|
var import_react_icons8 = require("@radix-ui/react-icons");
|
|
3749
|
-
var
|
|
3820
|
+
var import_jsx_runtime114 = require("react/jsx-runtime");
|
|
3750
3821
|
|
|
3751
3822
|
// src/molecules/dynamic-form-editor.tsx
|
|
3752
3823
|
var import_react65 = require("react");
|
|
@@ -3754,26 +3825,26 @@ var import_react65 = require("react");
|
|
|
3754
3825
|
// src/molecules/dynamic-form-editor-field-editor-panel.tsx
|
|
3755
3826
|
var import_react63 = require("react");
|
|
3756
3827
|
var import_themes56 = require("@radix-ui/themes");
|
|
3757
|
-
var
|
|
3828
|
+
var import_jsx_runtime115 = require("react/jsx-runtime");
|
|
3758
3829
|
|
|
3759
3830
|
// src/molecules/dynamic-form-editor-field-list-panel.tsx
|
|
3760
3831
|
var import_react64 = require("react");
|
|
3761
3832
|
var import_themes57 = require("@radix-ui/themes");
|
|
3762
|
-
var
|
|
3833
|
+
var import_jsx_runtime116 = require("react/jsx-runtime");
|
|
3763
3834
|
|
|
3764
3835
|
// src/molecules/dynamic-form-editor-issues-panel.tsx
|
|
3765
|
-
var
|
|
3836
|
+
var import_jsx_runtime117 = require("react/jsx-runtime");
|
|
3766
3837
|
|
|
3767
3838
|
// src/molecules/dynamic-form-editor-preview-panel.tsx
|
|
3768
|
-
var
|
|
3839
|
+
var import_jsx_runtime118 = require("react/jsx-runtime");
|
|
3769
3840
|
|
|
3770
3841
|
// src/molecules/dynamic-form-editor.tsx
|
|
3771
|
-
var
|
|
3842
|
+
var import_jsx_runtime119 = require("react/jsx-runtime");
|
|
3772
3843
|
|
|
3773
3844
|
// src/molecules/autocomplete-textfield.tsx
|
|
3774
3845
|
var import_react66 = require("react");
|
|
3775
3846
|
var import_themes58 = require("@radix-ui/themes");
|
|
3776
|
-
var
|
|
3847
|
+
var import_jsx_runtime120 = require("react/jsx-runtime");
|
|
3777
3848
|
var AutocompleteTextfield = (0, import_react66.forwardRef)(
|
|
3778
3849
|
(_a, ref) => {
|
|
3779
3850
|
var _b = _a, {
|
|
@@ -3899,8 +3970,8 @@ var AutocompleteTextfield = (0, import_react66.forwardRef)(
|
|
|
3899
3970
|
const item = listRef.current.children[highlightedIndex];
|
|
3900
3971
|
item.scrollIntoView({ block: "nearest" });
|
|
3901
3972
|
}, [highlightedIndex]);
|
|
3902
|
-
return /* @__PURE__ */ (0,
|
|
3903
|
-
/* @__PURE__ */ (0,
|
|
3973
|
+
return /* @__PURE__ */ (0, import_jsx_runtime120.jsxs)(import_themes58.Box, { position: "relative", style: { width: "100%" }, children: [
|
|
3974
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsxs)(
|
|
3904
3975
|
TextField.Root,
|
|
3905
3976
|
__spreadProps(__spreadValues({
|
|
3906
3977
|
"aria-activedescendant": open && highlightedIndex >= 0 ? `${listboxId}-option-${highlightedIndex}` : void 0,
|
|
@@ -3926,12 +3997,12 @@ var AutocompleteTextfield = (0, import_react66.forwardRef)(
|
|
|
3926
3997
|
value: inputValue
|
|
3927
3998
|
}, rest), {
|
|
3928
3999
|
children: [
|
|
3929
|
-
slotLeft && /* @__PURE__ */ (0,
|
|
3930
|
-
slotRight && /* @__PURE__ */ (0,
|
|
4000
|
+
slotLeft && /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(TextField.Slot, { side: "left", children: slotLeft }),
|
|
4001
|
+
slotRight && /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(TextField.Slot, { side: "right", children: slotRight })
|
|
3931
4002
|
]
|
|
3932
4003
|
})
|
|
3933
4004
|
),
|
|
3934
|
-
/* @__PURE__ */ (0,
|
|
4005
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsxs)(
|
|
3935
4006
|
DropdownMenu.Root,
|
|
3936
4007
|
{
|
|
3937
4008
|
modal: false,
|
|
@@ -3943,7 +4014,7 @@ var AutocompleteTextfield = (0, import_react66.forwardRef)(
|
|
|
3943
4014
|
},
|
|
3944
4015
|
open,
|
|
3945
4016
|
children: [
|
|
3946
|
-
/* @__PURE__ */ (0,
|
|
4017
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsx)(DropdownMenu.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
|
|
3947
4018
|
"span",
|
|
3948
4019
|
{
|
|
3949
4020
|
"aria-hidden": "true",
|
|
@@ -3958,7 +4029,7 @@ var AutocompleteTextfield = (0, import_react66.forwardRef)(
|
|
|
3958
4029
|
}
|
|
3959
4030
|
}
|
|
3960
4031
|
) }),
|
|
3961
|
-
/* @__PURE__ */ (0,
|
|
4032
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
|
|
3962
4033
|
DropdownMenu.Content,
|
|
3963
4034
|
{
|
|
3964
4035
|
align: "start",
|
|
@@ -3975,7 +4046,7 @@ var AutocompleteTextfield = (0, import_react66.forwardRef)(
|
|
|
3975
4046
|
padding: 0,
|
|
3976
4047
|
width: "var(--radix-dropdown-menu-trigger-width)"
|
|
3977
4048
|
},
|
|
3978
|
-
children: filtered.length === 0 && emptyMessage !== null ? /* @__PURE__ */ (0,
|
|
4049
|
+
children: filtered.length === 0 && emptyMessage !== null ? /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(import_themes58.Box, { px: "2", py: "2", children: /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(Typo, { color: "gray", children: emptyMessage }) }) : /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
|
|
3979
4050
|
"ul",
|
|
3980
4051
|
{
|
|
3981
4052
|
id: listboxId,
|
|
@@ -3984,7 +4055,7 @@ var AutocompleteTextfield = (0, import_react66.forwardRef)(
|
|
|
3984
4055
|
style: { listStyle: "none", margin: 0, padding: 0 },
|
|
3985
4056
|
children: filtered.map((option, index) => {
|
|
3986
4057
|
const isHighlighted = index === highlightedIndex;
|
|
3987
|
-
return /* @__PURE__ */ (0,
|
|
4058
|
+
return /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
|
|
3988
4059
|
"li",
|
|
3989
4060
|
{
|
|
3990
4061
|
"aria-selected": isHighlighted,
|
|
@@ -4003,7 +4074,7 @@ var AutocompleteTextfield = (0, import_react66.forwardRef)(
|
|
|
4003
4074
|
backgroundColor: isHighlighted ? "var(--accent-3)" : "transparent",
|
|
4004
4075
|
transition: "background-color 80ms"
|
|
4005
4076
|
},
|
|
4006
|
-
children: /* @__PURE__ */ (0,
|
|
4077
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(Typo, { variant: "body", children: option.label })
|
|
4007
4078
|
},
|
|
4008
4079
|
option.value
|
|
4009
4080
|
);
|
|
@@ -4030,7 +4101,7 @@ var import_renderers = require("echarts/renderers");
|
|
|
4030
4101
|
var import_components = require("echarts/components");
|
|
4031
4102
|
|
|
4032
4103
|
// src/charts/horizontal-bar-chart.tsx
|
|
4033
|
-
var
|
|
4104
|
+
var import_jsx_runtime121 = require("react/jsx-runtime");
|
|
4034
4105
|
|
|
4035
4106
|
// src/charts/chart-theme.json
|
|
4036
4107
|
var chart_theme_default = {
|
|
@@ -4181,7 +4252,7 @@ var EchartDefaultProps = {
|
|
|
4181
4252
|
};
|
|
4182
4253
|
|
|
4183
4254
|
// src/app/roleplay/chart/session-chart.tsx
|
|
4184
|
-
var
|
|
4255
|
+
var import_jsx_runtime122 = require("react/jsx-runtime");
|
|
4185
4256
|
function unwrapDefault(mod) {
|
|
4186
4257
|
let current = mod;
|
|
4187
4258
|
while (current !== null && typeof current === "object" && "default" in current) {
|
|
@@ -4241,7 +4312,7 @@ function Chart(_a) {
|
|
|
4241
4312
|
};
|
|
4242
4313
|
return deepMerge(baseOption, optionProp);
|
|
4243
4314
|
}, [optionProp]);
|
|
4244
|
-
return /* @__PURE__ */ (0,
|
|
4315
|
+
return /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { ref, style: { width: "100%", height: "100%" }, children: mounted ? /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(
|
|
4245
4316
|
ReactEChartsCore,
|
|
4246
4317
|
__spreadProps(__spreadValues(__spreadProps(__spreadValues({}, EchartDefaultProps), {
|
|
4247
4318
|
echarts,
|
|
@@ -4290,7 +4361,7 @@ function useTokenColors(vars) {
|
|
|
4290
4361
|
}
|
|
4291
4362
|
setResolved(next);
|
|
4292
4363
|
}, [key]);
|
|
4293
|
-
const probe = /* @__PURE__ */ (0,
|
|
4364
|
+
const probe = /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(
|
|
4294
4365
|
"span",
|
|
4295
4366
|
{
|
|
4296
4367
|
"aria-hidden": true,
|
|
@@ -4302,7 +4373,7 @@ function useTokenColors(vars) {
|
|
|
4302
4373
|
}
|
|
4303
4374
|
|
|
4304
4375
|
// src/app/roleplay/parts/score-trend-section.tsx
|
|
4305
|
-
var
|
|
4376
|
+
var import_jsx_runtime123 = require("react/jsx-runtime");
|
|
4306
4377
|
function formatDateOnly(iso) {
|
|
4307
4378
|
const d = new Date(iso);
|
|
4308
4379
|
if (Number.isNaN(d.getTime())) return iso;
|
|
@@ -4313,9 +4384,9 @@ function Section4({
|
|
|
4313
4384
|
desc,
|
|
4314
4385
|
children
|
|
4315
4386
|
}) {
|
|
4316
|
-
return /* @__PURE__ */ (0,
|
|
4317
|
-
/* @__PURE__ */ (0,
|
|
4318
|
-
/* @__PURE__ */ (0,
|
|
4387
|
+
return /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("section", { children: [
|
|
4388
|
+
/* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(import_themes7.Box, { mb: "3", children: [
|
|
4389
|
+
/* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
|
|
4319
4390
|
Heading2,
|
|
4320
4391
|
{
|
|
4321
4392
|
size: { initial: "4", md: "5" },
|
|
@@ -4324,14 +4395,14 @@ function Section4({
|
|
|
4324
4395
|
children: title
|
|
4325
4396
|
}
|
|
4326
4397
|
),
|
|
4327
|
-
desc ? /* @__PURE__ */ (0,
|
|
4398
|
+
desc ? /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(import_themes7.Box, { mt: "1", style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(Typo, { as: "p", color: "gray", variant: "body", children: desc }) }) : null
|
|
4328
4399
|
] }),
|
|
4329
4400
|
children
|
|
4330
4401
|
] });
|
|
4331
4402
|
}
|
|
4332
4403
|
function AttemptCell({ row }) {
|
|
4333
4404
|
const d = row.original;
|
|
4334
|
-
return /* @__PURE__ */ (0,
|
|
4405
|
+
return /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(
|
|
4335
4406
|
Typo,
|
|
4336
4407
|
{
|
|
4337
4408
|
as: "span",
|
|
@@ -4347,11 +4418,11 @@ function AttemptCell({ row }) {
|
|
|
4347
4418
|
);
|
|
4348
4419
|
}
|
|
4349
4420
|
function DateCell({ row }) {
|
|
4350
|
-
return /* @__PURE__ */ (0,
|
|
4421
|
+
return /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(Typo, { as: "span", mono: true, style: { color: "var(--gray-9)" }, variant: "body", children: formatDateOnly(row.original.createdAt) });
|
|
4351
4422
|
}
|
|
4352
4423
|
function ScoreCell({ row }) {
|
|
4353
4424
|
var _a;
|
|
4354
|
-
return /* @__PURE__ */ (0,
|
|
4425
|
+
return /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
|
|
4355
4426
|
Typo,
|
|
4356
4427
|
{
|
|
4357
4428
|
as: "span",
|
|
@@ -4365,9 +4436,9 @@ function ScoreCell({ row }) {
|
|
|
4365
4436
|
function DeltaCell({ row }) {
|
|
4366
4437
|
const { delta } = row.original;
|
|
4367
4438
|
if (delta === null) {
|
|
4368
|
-
return /* @__PURE__ */ (0,
|
|
4439
|
+
return /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(Typo, { as: "span", mono: true, style: { color: "var(--gray-9)" }, variant: "body", children: "\u2014" });
|
|
4369
4440
|
}
|
|
4370
|
-
return /* @__PURE__ */ (0,
|
|
4441
|
+
return /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(Typo, { as: "span", mono: true, style: { color: "var(--gray-9)" }, variant: "body", children: delta > 0 ? `+${delta}` : `${delta}` });
|
|
4371
4442
|
}
|
|
4372
4443
|
function ScoreTrendSection({
|
|
4373
4444
|
history
|
|
@@ -4477,13 +4548,13 @@ function ScoreTrendSection({
|
|
|
4477
4548
|
})
|
|
4478
4549
|
];
|
|
4479
4550
|
}, []);
|
|
4480
|
-
return /* @__PURE__ */ (0,
|
|
4551
|
+
return /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
|
|
4481
4552
|
Section4,
|
|
4482
4553
|
{
|
|
4483
4554
|
desc: `\uB3D9\uC77C \uB864\uD50C\uB808\uC789 \uCD5C\uADFC ${ordered.length}\uD68C\uCC28 \uCD1D\uC810 \uBCC0\uD654`,
|
|
4484
4555
|
title: "\uCD1D\uC810 \uCD94\uC774",
|
|
4485
|
-
children: /* @__PURE__ */ (0,
|
|
4486
|
-
/* @__PURE__ */ (0,
|
|
4556
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(import_themes23.Flex, { direction: "column", gap: "4", children: [
|
|
4557
|
+
/* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(
|
|
4487
4558
|
"div",
|
|
4488
4559
|
{
|
|
4489
4560
|
"aria-label": "\uCD1D\uC810 \uCD94\uC774 \uB77C\uC778 \uCC28\uD2B8",
|
|
@@ -4491,11 +4562,11 @@ function ScoreTrendSection({
|
|
|
4491
4562
|
style: { position: "relative", width: "100%", height: 200 },
|
|
4492
4563
|
children: [
|
|
4493
4564
|
probe,
|
|
4494
|
-
/* @__PURE__ */ (0,
|
|
4565
|
+
/* @__PURE__ */ (0, import_jsx_runtime123.jsx)(Chart, { option })
|
|
4495
4566
|
]
|
|
4496
4567
|
}
|
|
4497
4568
|
),
|
|
4498
|
-
/* @__PURE__ */ (0,
|
|
4569
|
+
/* @__PURE__ */ (0, import_jsx_runtime123.jsx)(import_themes7.Box, { className: "rp-expand-table", children: /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
|
|
4499
4570
|
ExpandTable,
|
|
4500
4571
|
{
|
|
4501
4572
|
columns,
|
|
@@ -4513,33 +4584,33 @@ function ScoreTrendSection({
|
|
|
4513
4584
|
|
|
4514
4585
|
// src/app/roleplay/parts/section-nav.tsx
|
|
4515
4586
|
var import_react69 = require("react");
|
|
4516
|
-
var
|
|
4587
|
+
var import_jsx_runtime124 = require("react/jsx-runtime");
|
|
4517
4588
|
var NAV_ICONS = {
|
|
4518
|
-
"score-summary": /* @__PURE__ */ (0,
|
|
4519
|
-
/* @__PURE__ */ (0,
|
|
4520
|
-
/* @__PURE__ */ (0,
|
|
4589
|
+
"score-summary": /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(import_jsx_runtime124.Fragment, { children: [
|
|
4590
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)("path", { d: "m12 14 4-4" }),
|
|
4591
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)("path", { d: "M3.34 19a10 10 0 1 1 17.32 0" })
|
|
4521
4592
|
] }),
|
|
4522
|
-
strengths: /* @__PURE__ */ (0,
|
|
4523
|
-
improvements: /* @__PURE__ */ (0,
|
|
4524
|
-
/* @__PURE__ */ (0,
|
|
4525
|
-
/* @__PURE__ */ (0,
|
|
4526
|
-
/* @__PURE__ */ (0,
|
|
4593
|
+
strengths: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("polygon", { points: "12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2" }),
|
|
4594
|
+
improvements: /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(import_jsx_runtime124.Fragment, { children: [
|
|
4595
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)("circle", { cx: "12", cy: "12", r: "9" }),
|
|
4596
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)("circle", { cx: "12", cy: "12", r: "5" }),
|
|
4597
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)("circle", { cx: "12", cy: "12", r: "1.5" })
|
|
4527
4598
|
] }),
|
|
4528
|
-
"score-trend": /* @__PURE__ */ (0,
|
|
4529
|
-
/* @__PURE__ */ (0,
|
|
4530
|
-
/* @__PURE__ */ (0,
|
|
4599
|
+
"score-trend": /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(import_jsx_runtime124.Fragment, { children: [
|
|
4600
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)("path", { d: "M3 3v18h18" }),
|
|
4601
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)("path", { d: "m19 8-5 5-4-4-4 4" })
|
|
4531
4602
|
] }),
|
|
4532
|
-
"step-summary": /* @__PURE__ */ (0,
|
|
4533
|
-
"step-detail": /* @__PURE__ */ (0,
|
|
4534
|
-
/* @__PURE__ */ (0,
|
|
4535
|
-
/* @__PURE__ */ (0,
|
|
4536
|
-
/* @__PURE__ */ (0,
|
|
4537
|
-
/* @__PURE__ */ (0,
|
|
4603
|
+
"step-summary": /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("path", { d: "M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z" }),
|
|
4604
|
+
"step-detail": /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(import_jsx_runtime124.Fragment, { children: [
|
|
4605
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)("line", { x1: "8", x2: "21", y1: "6", y2: "6" }),
|
|
4606
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)("line", { x1: "8", x2: "21", y1: "12", y2: "12" }),
|
|
4607
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)("line", { x1: "8", x2: "21", y1: "18", y2: "18" }),
|
|
4608
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)("path", { d: "M3 6h.01M3 12h.01M3 18h.01" })
|
|
4538
4609
|
] }),
|
|
4539
|
-
coaching: /* @__PURE__ */ (0,
|
|
4610
|
+
coaching: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("polygon", { points: "13 2 3 14 12 14 11 22 21 10 12 10 13 2" })
|
|
4540
4611
|
};
|
|
4541
4612
|
function NavIcon({ children }) {
|
|
4542
|
-
return /* @__PURE__ */ (0,
|
|
4613
|
+
return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
4543
4614
|
"svg",
|
|
4544
4615
|
{
|
|
4545
4616
|
"aria-hidden": "true",
|
|
@@ -4559,7 +4630,7 @@ function NavIcon({ children }) {
|
|
|
4559
4630
|
function StepMetricBadge({ step }) {
|
|
4560
4631
|
const scoreText = stepScoreText(step);
|
|
4561
4632
|
if (scoreText !== null) {
|
|
4562
|
-
return /* @__PURE__ */ (0,
|
|
4633
|
+
return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
4563
4634
|
Typo,
|
|
4564
4635
|
{
|
|
4565
4636
|
as: "span",
|
|
@@ -4574,7 +4645,7 @@ function StepMetricBadge({ step }) {
|
|
|
4574
4645
|
}
|
|
4575
4646
|
const gradeLabel = stepGradeLabel(step);
|
|
4576
4647
|
if (gradeLabel !== null) {
|
|
4577
|
-
return /* @__PURE__ */ (0,
|
|
4648
|
+
return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
4578
4649
|
Typo,
|
|
4579
4650
|
{
|
|
4580
4651
|
as: "span",
|
|
@@ -4617,8 +4688,8 @@ function scrollToId(id) {
|
|
|
4617
4688
|
function SectionNav({ items, steps }) {
|
|
4618
4689
|
const activeId = useScrollSpy(items.map((i) => i.id));
|
|
4619
4690
|
const stepDetailActive = activeId === "step-summary" || activeId === "step-detail";
|
|
4620
|
-
return /* @__PURE__ */ (0,
|
|
4621
|
-
/* @__PURE__ */ (0,
|
|
4691
|
+
return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_themes7.Box, { asChild: true, className: "rp-section-nav", children: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("aside", { children: /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(import_themes7.Box, { children: [
|
|
4692
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
4622
4693
|
Typo,
|
|
4623
4694
|
{
|
|
4624
4695
|
as: "p",
|
|
@@ -4632,9 +4703,9 @@ function SectionNav({ items, steps }) {
|
|
|
4632
4703
|
children: "\uBAA9\uCC28"
|
|
4633
4704
|
}
|
|
4634
4705
|
),
|
|
4635
|
-
/* @__PURE__ */ (0,
|
|
4706
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_themes7.Box, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("ul", { style: { listStyle: "none", margin: 0, padding: 0 }, children: items.map((item) => {
|
|
4636
4707
|
const active = activeId === item.id;
|
|
4637
|
-
return /* @__PURE__ */ (0,
|
|
4708
|
+
return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(
|
|
4638
4709
|
"button",
|
|
4639
4710
|
{
|
|
4640
4711
|
"aria-current": active ? "true" : void 0,
|
|
@@ -4648,9 +4719,9 @@ function SectionNav({ items, steps }) {
|
|
|
4648
4719
|
} : void 0,
|
|
4649
4720
|
type: "button",
|
|
4650
4721
|
children: [
|
|
4651
|
-
/* @__PURE__ */ (0,
|
|
4652
|
-
NAV_ICONS[item.id] ? /* @__PURE__ */ (0,
|
|
4653
|
-
/* @__PURE__ */ (0,
|
|
4722
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(import_themes23.Flex, { align: "center", gap: "2", style: { minWidth: 0 }, children: [
|
|
4723
|
+
NAV_ICONS[item.id] ? /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(NavIcon, { children: NAV_ICONS[item.id] }) : null,
|
|
4724
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
4654
4725
|
Typo,
|
|
4655
4726
|
{
|
|
4656
4727
|
as: "span",
|
|
@@ -4661,8 +4732,8 @@ function SectionNav({ items, steps }) {
|
|
|
4661
4732
|
}
|
|
4662
4733
|
)
|
|
4663
4734
|
] }),
|
|
4664
|
-
typeof item.score === "number" ? /* @__PURE__ */ (0,
|
|
4665
|
-
/* @__PURE__ */ (0,
|
|
4735
|
+
typeof item.score === "number" ? /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(Typo, { as: "span", mono: true, style: { flexShrink: 0 }, variant: "body", children: [
|
|
4736
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
4666
4737
|
Typo,
|
|
4667
4738
|
{
|
|
4668
4739
|
as: "span",
|
|
@@ -4674,7 +4745,7 @@ function SectionNav({ items, steps }) {
|
|
|
4674
4745
|
children: item.score
|
|
4675
4746
|
}
|
|
4676
4747
|
),
|
|
4677
|
-
/* @__PURE__ */ (0,
|
|
4748
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(Typo, { as: "span", style: { color: "var(--gray-9)" }, variant: "body", children: [
|
|
4678
4749
|
"/",
|
|
4679
4750
|
item.max
|
|
4680
4751
|
] })
|
|
@@ -4683,8 +4754,8 @@ function SectionNav({ items, steps }) {
|
|
|
4683
4754
|
}
|
|
4684
4755
|
) }, item.id);
|
|
4685
4756
|
}) }) }),
|
|
4686
|
-
steps.length > 0 && /* @__PURE__ */ (0,
|
|
4687
|
-
/* @__PURE__ */ (0,
|
|
4757
|
+
steps.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(import_themes7.Box, { mt: "3", pt: "3", style: { borderTop: "1px solid var(--gray-4)" }, children: [
|
|
4758
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_themes7.Box, { pb: "1", px: "3", children: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
4688
4759
|
Typo,
|
|
4689
4760
|
{
|
|
4690
4761
|
as: "span",
|
|
@@ -4696,9 +4767,9 @@ function SectionNav({ items, steps }) {
|
|
|
4696
4767
|
children: "\uB2E8\uACC4\uBCC4 \uC810\uC218"
|
|
4697
4768
|
}
|
|
4698
4769
|
) }),
|
|
4699
|
-
/* @__PURE__ */ (0,
|
|
4770
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_themes7.Box, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("ul", { style: { listStyle: "none", margin: 0, padding: 0 }, children: steps.map((step) => {
|
|
4700
4771
|
const ratio = stepRatio(step);
|
|
4701
|
-
return /* @__PURE__ */ (0,
|
|
4772
|
+
return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(
|
|
4702
4773
|
"button",
|
|
4703
4774
|
{
|
|
4704
4775
|
className: "rp-jump-btn",
|
|
@@ -4707,8 +4778,8 @@ function SectionNav({ items, steps }) {
|
|
|
4707
4778
|
},
|
|
4708
4779
|
type: "button",
|
|
4709
4780
|
children: [
|
|
4710
|
-
/* @__PURE__ */ (0,
|
|
4711
|
-
/* @__PURE__ */ (0,
|
|
4781
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(import_themes23.Flex, { align: "center", gap: "2", justify: "between", children: [
|
|
4782
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(
|
|
4712
4783
|
Typo,
|
|
4713
4784
|
{
|
|
4714
4785
|
as: "span",
|
|
@@ -4716,7 +4787,7 @@ function SectionNav({ items, steps }) {
|
|
|
4716
4787
|
truncate: true,
|
|
4717
4788
|
variant: "body",
|
|
4718
4789
|
children: [
|
|
4719
|
-
/* @__PURE__ */ (0,
|
|
4790
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
4720
4791
|
Typo,
|
|
4721
4792
|
{
|
|
4722
4793
|
as: "span",
|
|
@@ -4728,7 +4799,7 @@ function SectionNav({ items, steps }) {
|
|
|
4728
4799
|
}
|
|
4729
4800
|
),
|
|
4730
4801
|
" ",
|
|
4731
|
-
/* @__PURE__ */ (0,
|
|
4802
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
4732
4803
|
Typo,
|
|
4733
4804
|
{
|
|
4734
4805
|
as: "span",
|
|
@@ -4740,9 +4811,9 @@ function SectionNav({ items, steps }) {
|
|
|
4740
4811
|
]
|
|
4741
4812
|
}
|
|
4742
4813
|
),
|
|
4743
|
-
/* @__PURE__ */ (0,
|
|
4814
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(StepMetricBadge, { step })
|
|
4744
4815
|
] }),
|
|
4745
|
-
ratio !== null ? /* @__PURE__ */ (0,
|
|
4816
|
+
ratio !== null ? /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_themes7.Box, { mt: "1", children: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(Progress, { color: stepColor(step), size: "1", value: ratio * 100 }) }) : null
|
|
4746
4817
|
]
|
|
4747
4818
|
}
|
|
4748
4819
|
) }, step.key);
|
|
@@ -4752,14 +4823,14 @@ function SectionNav({ items, steps }) {
|
|
|
4752
4823
|
}
|
|
4753
4824
|
|
|
4754
4825
|
// src/app/roleplay/parts/step-detail.tsx
|
|
4755
|
-
var
|
|
4826
|
+
var import_jsx_runtime125 = require("react/jsx-runtime");
|
|
4756
4827
|
function RubricField({
|
|
4757
4828
|
label,
|
|
4758
4829
|
value
|
|
4759
4830
|
}) {
|
|
4760
|
-
return /* @__PURE__ */ (0,
|
|
4761
|
-
/* @__PURE__ */ (0,
|
|
4762
|
-
/* @__PURE__ */ (0,
|
|
4831
|
+
return /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(import_themes7.Box, { children: [
|
|
4832
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsx)(Typo, { as: "p", variant: "body", weight: "medium", children: label }),
|
|
4833
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsx)(import_themes7.Box, { mt: "1", style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(Typo, { as: "p", variant: "body", children: value }) })
|
|
4763
4834
|
] });
|
|
4764
4835
|
}
|
|
4765
4836
|
function StepDetail({
|
|
@@ -4770,14 +4841,14 @@ function StepDetail({
|
|
|
4770
4841
|
const ratio = stepRatio(step);
|
|
4771
4842
|
const scoreText = stepScoreText(step);
|
|
4772
4843
|
const gradeLabel = stepGradeLabel(step);
|
|
4773
|
-
return /* @__PURE__ */ (0,
|
|
4774
|
-
/* @__PURE__ */ (0,
|
|
4775
|
-
/* @__PURE__ */ (0,
|
|
4776
|
-
/* @__PURE__ */ (0,
|
|
4777
|
-
/* @__PURE__ */ (0,
|
|
4844
|
+
return /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(import_themes7.Box, { id: `step-${step.key}`, style: { scrollMarginTop }, children: [
|
|
4845
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(import_themes23.Flex, { align: "center", gap: "2", justify: "between", mb: "1", children: [
|
|
4846
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(import_themes7.Box, { style: { minWidth: 0 }, children: [
|
|
4847
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsx)(Typo, { as: "span", color: "gray", mono: true, variant: "body", children: stepCode(step) }),
|
|
4848
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsx)(Typo, { as: "p", variant: "subtitle", weight: "bold", children: step.label })
|
|
4778
4849
|
] }),
|
|
4779
|
-
/* @__PURE__ */ (0,
|
|
4780
|
-
scoreText !== null ? /* @__PURE__ */ (0,
|
|
4850
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(import_themes23.Flex, { align: "end", direction: "column", gap: "1", style: { flexShrink: 0 }, children: [
|
|
4851
|
+
scoreText !== null ? /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
|
|
4781
4852
|
Typo,
|
|
4782
4853
|
{
|
|
4783
4854
|
as: "span",
|
|
@@ -4788,7 +4859,7 @@ function StepDetail({
|
|
|
4788
4859
|
children: scoreText
|
|
4789
4860
|
}
|
|
4790
4861
|
) : null,
|
|
4791
|
-
gradeLabel !== null ? /* @__PURE__ */ (0,
|
|
4862
|
+
gradeLabel !== null ? /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
|
|
4792
4863
|
Typo,
|
|
4793
4864
|
{
|
|
4794
4865
|
as: "span",
|
|
@@ -4808,16 +4879,16 @@ function StepDetail({
|
|
|
4808
4879
|
) : null
|
|
4809
4880
|
] })
|
|
4810
4881
|
] }),
|
|
4811
|
-
ratio !== null ? /* @__PURE__ */ (0,
|
|
4812
|
-
step.description ? /* @__PURE__ */ (0,
|
|
4813
|
-
/* @__PURE__ */ (0,
|
|
4814
|
-
step.basis || step.issue ? /* @__PURE__ */ (0,
|
|
4815
|
-
step.basis ? /* @__PURE__ */ (0,
|
|
4816
|
-
step.issue ? /* @__PURE__ */ (0,
|
|
4882
|
+
ratio !== null ? /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(import_themes7.Box, { mb: "3", mt: "2", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(Progress, { color: stepColor(step), size: "2", value: ratio * 100 }) }) : null,
|
|
4883
|
+
step.description ? /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(import_themes7.Box, { mb: "3", mt: ratio !== null ? "0" : "2", style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(Typo, { as: "p", color: "gray", variant: "body", children: step.description }) }) : null,
|
|
4884
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(import_themes23.Flex, { direction: "column", gap: "0", children: [
|
|
4885
|
+
step.basis || step.issue ? /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(import_themes7.Box, { pb: "3", style: { borderBottom: "1px solid var(--gray-a4)" }, children: /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(import_themes23.Flex, { direction: "column", gap: "3", children: [
|
|
4886
|
+
step.basis ? /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(RubricField, { label: "\uADFC\uAC70", value: step.basis }) : null,
|
|
4887
|
+
step.issue ? /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(RubricField, { label: "\uC544\uC26C\uC6B4 \uC810", value: step.issue }) : null
|
|
4817
4888
|
] }) }) : null,
|
|
4818
|
-
step.improve || step.example || step.idealExample ? /* @__PURE__ */ (0,
|
|
4819
|
-
step.improve ? /* @__PURE__ */ (0,
|
|
4820
|
-
step.example ? /* @__PURE__ */ (0,
|
|
4889
|
+
step.improve || step.example || step.idealExample ? /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(import_themes7.Box, { pt: "3", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(import_themes23.Flex, { direction: "column", gap: "3", children: [
|
|
4890
|
+
step.improve ? /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(RubricField, { label: "\uAC1C\uC120\uC810", value: step.improve }) : null,
|
|
4891
|
+
step.example ? /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(
|
|
4821
4892
|
import_themes7.Box,
|
|
4822
4893
|
{
|
|
4823
4894
|
p: "2",
|
|
@@ -4826,7 +4897,7 @@ function StepDetail({
|
|
|
4826
4897
|
background: "var(--accent-a2)"
|
|
4827
4898
|
},
|
|
4828
4899
|
children: [
|
|
4829
|
-
/* @__PURE__ */ (0,
|
|
4900
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
|
|
4830
4901
|
Typo,
|
|
4831
4902
|
{
|
|
4832
4903
|
as: "p",
|
|
@@ -4836,11 +4907,11 @@ function StepDetail({
|
|
|
4836
4907
|
children: "\uC608\uC2DC \uC2A4\uD06C\uB9BD\uD2B8"
|
|
4837
4908
|
}
|
|
4838
4909
|
),
|
|
4839
|
-
/* @__PURE__ */ (0,
|
|
4910
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsx)(import_themes7.Box, { mt: "1", style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(Typo, { as: "p", style: { color: "var(--accent-11)" }, variant: "body", children: step.example }) })
|
|
4840
4911
|
]
|
|
4841
4912
|
}
|
|
4842
4913
|
) : null,
|
|
4843
|
-
step.idealExample ? /* @__PURE__ */ (0,
|
|
4914
|
+
step.idealExample ? /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(
|
|
4844
4915
|
import_themes7.Box,
|
|
4845
4916
|
{
|
|
4846
4917
|
p: "2",
|
|
@@ -4849,8 +4920,8 @@ function StepDetail({
|
|
|
4849
4920
|
background: "var(--gray-a2)"
|
|
4850
4921
|
},
|
|
4851
4922
|
children: [
|
|
4852
|
-
/* @__PURE__ */ (0,
|
|
4853
|
-
/* @__PURE__ */ (0,
|
|
4923
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsx)(Typo, { as: "p", color: "gray", variant: "body", weight: "medium", children: "\uBAA8\uBC94 \uC608\uC2DC" }),
|
|
4924
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsx)(import_themes7.Box, { mt: "1", style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
|
|
4854
4925
|
Typo,
|
|
4855
4926
|
{
|
|
4856
4927
|
as: "p",
|
|
@@ -4869,7 +4940,7 @@ function StepDetail({
|
|
|
4869
4940
|
}
|
|
4870
4941
|
|
|
4871
4942
|
// src/app/roleplay/parts/step-radar.tsx
|
|
4872
|
-
var
|
|
4943
|
+
var import_jsx_runtime126 = require("react/jsx-runtime");
|
|
4873
4944
|
function StepRadar({ steps }) {
|
|
4874
4945
|
const { colors, probe } = useTokenColors({
|
|
4875
4946
|
accent: ["--accent-9", "#5b5bd6"],
|
|
@@ -4918,7 +4989,7 @@ function StepRadar({ steps }) {
|
|
|
4918
4989
|
}
|
|
4919
4990
|
]
|
|
4920
4991
|
};
|
|
4921
|
-
return /* @__PURE__ */ (0,
|
|
4992
|
+
return /* @__PURE__ */ (0, import_jsx_runtime126.jsxs)(
|
|
4922
4993
|
"div",
|
|
4923
4994
|
{
|
|
4924
4995
|
"aria-label": "\uD3C9\uAC00 \uB2E8\uACC4 \uB808\uC774\uB354 \uCC28\uD2B8",
|
|
@@ -4934,23 +5005,23 @@ function StepRadar({ steps }) {
|
|
|
4934
5005
|
},
|
|
4935
5006
|
children: [
|
|
4936
5007
|
probe,
|
|
4937
|
-
/* @__PURE__ */ (0,
|
|
5008
|
+
/* @__PURE__ */ (0, import_jsx_runtime126.jsx)("div", { style: { width: "100%", maxWidth: 300, height: 280 }, children: /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(Chart, { option }) })
|
|
4938
5009
|
]
|
|
4939
5010
|
}
|
|
4940
5011
|
);
|
|
4941
5012
|
}
|
|
4942
5013
|
|
|
4943
5014
|
// src/app/roleplay/parts/step-summary.tsx
|
|
4944
|
-
var
|
|
5015
|
+
var import_jsx_runtime127 = require("react/jsx-runtime");
|
|
4945
5016
|
function Section5({
|
|
4946
5017
|
title,
|
|
4947
5018
|
desc,
|
|
4948
5019
|
children
|
|
4949
5020
|
}) {
|
|
4950
|
-
return /* @__PURE__ */ (0,
|
|
4951
|
-
/* @__PURE__ */ (0,
|
|
4952
|
-
/* @__PURE__ */ (0,
|
|
4953
|
-
desc ? /* @__PURE__ */ (0,
|
|
5021
|
+
return /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("section", { children: [
|
|
5022
|
+
/* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(import_themes7.Box, { mb: "3", children: [
|
|
5023
|
+
/* @__PURE__ */ (0, import_jsx_runtime127.jsx)(Typo, { as: "p", variant: "subtitle", weight: "bold", children: title }),
|
|
5024
|
+
desc ? /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(import_themes7.Box, { mt: "1", style: { maxWidth: "65ch" }, children: /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(Typo, { as: "p", color: "gray", variant: "body", children: desc }) }) : null
|
|
4954
5025
|
] }),
|
|
4955
5026
|
children
|
|
4956
5027
|
] });
|
|
@@ -4959,13 +5030,13 @@ function StepSummary({ steps }) {
|
|
|
4959
5030
|
if (steps.length === 0) return null;
|
|
4960
5031
|
const radarReady = steps.every((s) => stepRatio(s) !== null);
|
|
4961
5032
|
const desc = "\uB300\uD654 \uB2E8\uACC4 \uBCC4\uB85C \uB098\uC758 \uAC15\uC57D\uC810\uC744 \uD655\uC778\uD560 \uC218 \uC788\uC5B4\uC694.";
|
|
4962
|
-
const list = /* @__PURE__ */ (0,
|
|
5033
|
+
const list = /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(import_themes23.Flex, { direction: "column", children: steps.map((step, i) => {
|
|
4963
5034
|
const ratio = stepRatio(step);
|
|
4964
5035
|
const scoreText = stepScoreText(step);
|
|
4965
5036
|
const gradeLabel = stepGradeLabel(step);
|
|
4966
|
-
return /* @__PURE__ */ (0,
|
|
4967
|
-
i > 0 && /* @__PURE__ */ (0,
|
|
4968
|
-
/* @__PURE__ */ (0,
|
|
5037
|
+
return /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(import_themes7.Box, { children: [
|
|
5038
|
+
i > 0 && /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(import_themes40.Separator, { size: "4" }),
|
|
5039
|
+
/* @__PURE__ */ (0, import_jsx_runtime127.jsx)(
|
|
4969
5040
|
"button",
|
|
4970
5041
|
{
|
|
4971
5042
|
className: "rp-rubric-scroll-btn",
|
|
@@ -4982,9 +5053,9 @@ function StepSummary({ steps }) {
|
|
|
4982
5053
|
textAlign: "left"
|
|
4983
5054
|
},
|
|
4984
5055
|
type: "button",
|
|
4985
|
-
children: /* @__PURE__ */ (0,
|
|
4986
|
-
/* @__PURE__ */ (0,
|
|
4987
|
-
/* @__PURE__ */ (0,
|
|
5056
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(import_themes23.Flex, { direction: "column", gap: "1", children: [
|
|
5057
|
+
/* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(import_themes23.Flex, { align: "center", gap: "2", justify: "between", children: [
|
|
5058
|
+
/* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(
|
|
4988
5059
|
Typo,
|
|
4989
5060
|
{
|
|
4990
5061
|
as: "span",
|
|
@@ -4993,7 +5064,7 @@ function StepSummary({ steps }) {
|
|
|
4993
5064
|
variant: "body",
|
|
4994
5065
|
weight: "medium",
|
|
4995
5066
|
children: [
|
|
4996
|
-
/* @__PURE__ */ (0,
|
|
5067
|
+
/* @__PURE__ */ (0, import_jsx_runtime127.jsx)(
|
|
4997
5068
|
Typo,
|
|
4998
5069
|
{
|
|
4999
5070
|
as: "span",
|
|
@@ -5009,9 +5080,9 @@ function StepSummary({ steps }) {
|
|
|
5009
5080
|
]
|
|
5010
5081
|
}
|
|
5011
5082
|
),
|
|
5012
|
-
/* @__PURE__ */ (0,
|
|
5013
|
-
scoreText !== null ? /* @__PURE__ */ (0,
|
|
5014
|
-
gradeLabel !== null ? /* @__PURE__ */ (0,
|
|
5083
|
+
/* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(import_themes23.Flex, { align: "center", gap: "2", style: { flexShrink: 0 }, children: [
|
|
5084
|
+
scoreText !== null ? /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(Typo, { as: "span", mono: true, variant: "body", weight: "bold", children: scoreText }) : null,
|
|
5085
|
+
gradeLabel !== null ? /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(
|
|
5015
5086
|
Typo,
|
|
5016
5087
|
{
|
|
5017
5088
|
as: "span",
|
|
@@ -5024,13 +5095,13 @@ function StepSummary({ steps }) {
|
|
|
5024
5095
|
) : null
|
|
5025
5096
|
] })
|
|
5026
5097
|
] }),
|
|
5027
|
-
ratio !== null ? /* @__PURE__ */ (0,
|
|
5098
|
+
ratio !== null ? /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(import_themes7.Box, { style: { flex: 1 }, children: /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(Progress, { color: stepColor(step), size: "1", value: ratio * 100 }) }) : null
|
|
5028
5099
|
] })
|
|
5029
5100
|
}
|
|
5030
5101
|
)
|
|
5031
5102
|
] }, step.key);
|
|
5032
5103
|
}) });
|
|
5033
|
-
return /* @__PURE__ */ (0,
|
|
5104
|
+
return /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(Section5, { desc, title: "\uD3C9\uAC00 \uB2E8\uACC4 \uC694\uC57D", children: radarReady ? /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(
|
|
5034
5105
|
import_themes24.Grid,
|
|
5035
5106
|
{
|
|
5036
5107
|
align: "center",
|
|
@@ -5038,14 +5109,14 @@ function StepSummary({ steps }) {
|
|
|
5038
5109
|
gap: "6",
|
|
5039
5110
|
children: [
|
|
5040
5111
|
list,
|
|
5041
|
-
/* @__PURE__ */ (0,
|
|
5112
|
+
/* @__PURE__ */ (0, import_jsx_runtime127.jsx)(StepRadar, { steps })
|
|
5042
5113
|
]
|
|
5043
5114
|
}
|
|
5044
5115
|
) : list });
|
|
5045
5116
|
}
|
|
5046
5117
|
|
|
5047
5118
|
// src/app/roleplay/parts/content.tsx
|
|
5048
|
-
var
|
|
5119
|
+
var import_jsx_runtime128 = require("react/jsx-runtime");
|
|
5049
5120
|
function Content9({
|
|
5050
5121
|
detail,
|
|
5051
5122
|
report,
|
|
@@ -5068,20 +5139,20 @@ function Content9({
|
|
|
5068
5139
|
...showStepDetail ? [{ id: "step-detail", label: "\uB2E8\uACC4\uBCC4 \uC0C1\uC138 \uBD84\uC11D" }] : [],
|
|
5069
5140
|
...skills.length > 0 ? [{ id: "coaching", label: "\uC989\uC2DC \uC801\uC6A9 \uC2A4\uD0AC" }] : []
|
|
5070
5141
|
];
|
|
5071
|
-
return /* @__PURE__ */ (0,
|
|
5142
|
+
return /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(
|
|
5072
5143
|
import_themes24.Grid,
|
|
5073
5144
|
{
|
|
5074
5145
|
align: "start",
|
|
5075
5146
|
columns: { initial: "1", md: "minmax(0, 1fr) 224px" },
|
|
5076
5147
|
gap: "7",
|
|
5077
5148
|
children: [
|
|
5078
|
-
/* @__PURE__ */ (0,
|
|
5079
|
-
report.frameworkTitle !== null || report.frameworkDescription !== null ? /* @__PURE__ */ (0,
|
|
5080
|
-
report.frameworkTitle !== null ? /* @__PURE__ */ (0,
|
|
5081
|
-
report.frameworkDescription !== null ? /* @__PURE__ */ (0,
|
|
5149
|
+
/* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(import_themes23.Flex, { direction: "column", gap: "7", children: [
|
|
5150
|
+
report.frameworkTitle !== null || report.frameworkDescription !== null ? /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(import_themes7.Box, { children: [
|
|
5151
|
+
report.frameworkTitle !== null ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(Heading2, { size: "5", weight: "bold", children: report.frameworkTitle }) : null,
|
|
5152
|
+
report.frameworkDescription !== null ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(import_themes7.Box, { mt: report.frameworkTitle !== null ? "2" : "0", children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(Typo, { as: "p", variant: "body", children: report.frameworkDescription }) }) : null
|
|
5082
5153
|
] }) : null,
|
|
5083
|
-
/* @__PURE__ */ (0,
|
|
5084
|
-
strengths.length > 0 ? /* @__PURE__ */ (0,
|
|
5154
|
+
/* @__PURE__ */ (0, import_jsx_runtime128.jsx)(import_themes7.Box, { id: "score-summary", style: { scrollMarginTop }, children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(ScoreSummary, { detail, report, speechShare }) }),
|
|
5155
|
+
strengths.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(import_themes7.Box, { id: "strengths", style: { scrollMarginTop }, children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
|
|
5085
5156
|
AnalysisSection,
|
|
5086
5157
|
{
|
|
5087
5158
|
desc: "\uC774\uBC88 \uC138\uC158\uC5D0\uC11C \uAC00\uC7A5 \uB3CB\uBCF4\uC778 \uAC15\uC810\uB4E4\uC774\uC5D0\uC694.",
|
|
@@ -5090,7 +5161,7 @@ function Content9({
|
|
|
5090
5161
|
tone: "good"
|
|
5091
5162
|
}
|
|
5092
5163
|
) }) : null,
|
|
5093
|
-
improvements.length > 0 ? /* @__PURE__ */ (0,
|
|
5164
|
+
improvements.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(import_themes7.Box, { id: "improvements", style: { scrollMarginTop }, children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
|
|
5094
5165
|
AnalysisSection,
|
|
5095
5166
|
{
|
|
5096
5167
|
desc: "\uB2E4\uC74C\uC5D0 \uBCF4\uC644\uD55C\uB2E4\uBA74 \uB354 \uB098\uC740 \uACB0\uACFC\uB97C \uC5BB\uC744 \uC218 \uC788\uC744 \uAC70\uC5D0\uC694.",
|
|
@@ -5099,15 +5170,15 @@ function Content9({
|
|
|
5099
5170
|
tone: "bad"
|
|
5100
5171
|
}
|
|
5101
5172
|
) }) : null,
|
|
5102
|
-
showTrend ? /* @__PURE__ */ (0,
|
|
5103
|
-
showStepSummary ? /* @__PURE__ */ (0,
|
|
5104
|
-
showStepDetail ? /* @__PURE__ */ (0,
|
|
5173
|
+
showTrend ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(import_themes7.Box, { id: "score-trend", style: { scrollMarginTop }, children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(ScoreTrendSection, { history }) }) : null,
|
|
5174
|
+
showStepSummary ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(import_themes7.Box, { id: "step-summary", style: { scrollMarginTop }, children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(StepSummary, { steps }) }) : null,
|
|
5175
|
+
showStepDetail ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(import_themes7.Box, { id: "step-detail", style: { scrollMarginTop }, children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
|
|
5105
5176
|
Section2,
|
|
5106
5177
|
{
|
|
5107
5178
|
desc: "\uC774\uBC88 \uB300\uD654\uC758 \uB354 \uB098\uC544\uC9C8 \uC218 \uC788\uB294 \uBC29\uD5A5\uC744 \uC54C\uB824\uB4DC\uB9B4\uAC8C\uC694.",
|
|
5108
5179
|
title: "\uB2E8\uACC4\uBCC4 \uC0C1\uC138 \uBD84\uC11D",
|
|
5109
|
-
children: /* @__PURE__ */ (0,
|
|
5110
|
-
i > 0 ? /* @__PURE__ */ (0,
|
|
5180
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(import_themes23.Flex, { direction: "column", children: steps.map((step, i) => /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(import_themes7.Box, { children: [
|
|
5181
|
+
i > 0 ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
|
|
5111
5182
|
import_themes40.Separator,
|
|
5112
5183
|
{
|
|
5113
5184
|
mb: "6",
|
|
@@ -5115,22 +5186,22 @@ function Content9({
|
|
|
5115
5186
|
style: { marginTop: "calc(var(--space-9) * 1.6)" }
|
|
5116
5187
|
}
|
|
5117
5188
|
) : null,
|
|
5118
|
-
/* @__PURE__ */ (0,
|
|
5189
|
+
/* @__PURE__ */ (0, import_jsx_runtime128.jsx)(StepDetail, { scrollMarginTop, step })
|
|
5119
5190
|
] }, step.key)) })
|
|
5120
5191
|
}
|
|
5121
5192
|
) }) : null,
|
|
5122
|
-
skills.length > 0 ? /* @__PURE__ */ (0,
|
|
5193
|
+
skills.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(import_themes7.Box, { id: "coaching", style: { scrollMarginTop }, children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(CoachingPanel, { skills }) }) : null
|
|
5123
5194
|
] }),
|
|
5124
|
-
/* @__PURE__ */ (0,
|
|
5195
|
+
/* @__PURE__ */ (0, import_jsx_runtime128.jsx)(SectionNav, { items: navItems, steps: showStepDetail ? steps : [] })
|
|
5125
5196
|
]
|
|
5126
5197
|
}
|
|
5127
5198
|
);
|
|
5128
5199
|
}
|
|
5129
5200
|
|
|
5130
5201
|
// src/app/roleplay/parts/header.tsx
|
|
5131
|
-
var
|
|
5202
|
+
var import_jsx_runtime129 = require("react/jsx-runtime");
|
|
5132
5203
|
function PdfIcon() {
|
|
5133
|
-
return /* @__PURE__ */ (0,
|
|
5204
|
+
return /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(
|
|
5134
5205
|
"svg",
|
|
5135
5206
|
{
|
|
5136
5207
|
"aria-hidden": "true",
|
|
@@ -5143,16 +5214,16 @@ function PdfIcon() {
|
|
|
5143
5214
|
viewBox: "0 0 24 24",
|
|
5144
5215
|
width: "13",
|
|
5145
5216
|
children: [
|
|
5146
|
-
/* @__PURE__ */ (0,
|
|
5147
|
-
/* @__PURE__ */ (0,
|
|
5148
|
-
/* @__PURE__ */ (0,
|
|
5149
|
-
/* @__PURE__ */ (0,
|
|
5217
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)("path", { d: "M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z" }),
|
|
5218
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)("path", { d: "M14 3v5h5" }),
|
|
5219
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)("path", { d: "M12 12v5" }),
|
|
5220
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)("path", { d: "M9.5 14.5 12 17l2.5-2.5" })
|
|
5150
5221
|
]
|
|
5151
5222
|
}
|
|
5152
5223
|
);
|
|
5153
5224
|
}
|
|
5154
5225
|
function VideoIcon3() {
|
|
5155
|
-
return /* @__PURE__ */ (0,
|
|
5226
|
+
return /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(
|
|
5156
5227
|
"svg",
|
|
5157
5228
|
{
|
|
5158
5229
|
"aria-hidden": "true",
|
|
@@ -5165,8 +5236,8 @@ function VideoIcon3() {
|
|
|
5165
5236
|
viewBox: "0 0 24 24",
|
|
5166
5237
|
width: "13",
|
|
5167
5238
|
children: [
|
|
5168
|
-
/* @__PURE__ */ (0,
|
|
5169
|
-
/* @__PURE__ */ (0,
|
|
5239
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)("rect", { height: "12", rx: "2", width: "13", x: "2", y: "6" }),
|
|
5240
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)("path", { d: "m15 10 6-3v10l-6-3z" })
|
|
5170
5241
|
]
|
|
5171
5242
|
}
|
|
5172
5243
|
);
|
|
@@ -5178,7 +5249,7 @@ function Header({
|
|
|
5178
5249
|
onResolveMediaUrl
|
|
5179
5250
|
}) {
|
|
5180
5251
|
var _a;
|
|
5181
|
-
const pdfHref = detail.
|
|
5252
|
+
const pdfHref = detail.embedLink;
|
|
5182
5253
|
const hasReplayMedia = Boolean(
|
|
5183
5254
|
detail.trainingVideoURL || detail.trainingAudioURL
|
|
5184
5255
|
);
|
|
@@ -5191,7 +5262,7 @@ function Header({
|
|
|
5191
5262
|
});
|
|
5192
5263
|
};
|
|
5193
5264
|
const replayActive = hasScript && hasReplayMedia;
|
|
5194
|
-
return /* @__PURE__ */ (0,
|
|
5265
|
+
return /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(import_themes7.Box, { children: /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(
|
|
5195
5266
|
import_themes23.Flex,
|
|
5196
5267
|
{
|
|
5197
5268
|
align: { md: "start" },
|
|
@@ -5199,16 +5270,16 @@ function Header({
|
|
|
5199
5270
|
gap: "4",
|
|
5200
5271
|
justify: "between",
|
|
5201
5272
|
children: [
|
|
5202
|
-
/* @__PURE__ */ (0,
|
|
5203
|
-
/* @__PURE__ */ (0,
|
|
5204
|
-
/* @__PURE__ */ (0,
|
|
5205
|
-
/* @__PURE__ */ (0,
|
|
5273
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(import_themes7.Box, { style: { minWidth: 0 }, children: [
|
|
5274
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(import_themes23.Flex, { align: "center", gap: "2", mb: "2", wrap: "wrap", children: [
|
|
5275
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)(Badge, { color: "neutral", size: "small", variant: "soft", children: statusLabelOf(detail.status) }),
|
|
5276
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(Typo, { as: "span", color: "gray", variant: "body", children: [
|
|
5206
5277
|
detail.trainingSessionNum,
|
|
5207
5278
|
"\uD68C\uCC28",
|
|
5208
5279
|
detail.characterTitle ? ` \xB7 ${detail.characterTitle}` : ""
|
|
5209
5280
|
] })
|
|
5210
5281
|
] }),
|
|
5211
|
-
/* @__PURE__ */ (0,
|
|
5282
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
|
|
5212
5283
|
Heading2,
|
|
5213
5284
|
{
|
|
5214
5285
|
size: { initial: "5", md: "7" },
|
|
@@ -5217,13 +5288,13 @@ function Header({
|
|
|
5217
5288
|
children: (_a = detail.scenarioTitle) != null ? _a : "\uB864\uD50C\uB808\uC789 \uC138\uC158"
|
|
5218
5289
|
}
|
|
5219
5290
|
),
|
|
5220
|
-
/* @__PURE__ */ (0,
|
|
5291
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(Typo, { as: "p", color: "gray", mono: true, mt: "1", variant: "body", children: [
|
|
5221
5292
|
formatDate(detail.createdAt),
|
|
5222
5293
|
" \xB7 ",
|
|
5223
5294
|
formatDuration(detail.trainingTime)
|
|
5224
5295
|
] })
|
|
5225
5296
|
] }),
|
|
5226
|
-
/* @__PURE__ */ (0,
|
|
5297
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(
|
|
5227
5298
|
import_themes23.Flex,
|
|
5228
5299
|
{
|
|
5229
5300
|
gap: "2",
|
|
@@ -5231,7 +5302,7 @@ function Header({
|
|
|
5231
5302
|
style: { flexShrink: 0 },
|
|
5232
5303
|
wrap: "wrap",
|
|
5233
5304
|
children: [
|
|
5234
|
-
onResolveMediaUrl ? /* @__PURE__ */ (0,
|
|
5305
|
+
onResolveMediaUrl ? /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(
|
|
5235
5306
|
Button,
|
|
5236
5307
|
{
|
|
5237
5308
|
color: "gray",
|
|
@@ -5242,11 +5313,11 @@ function Header({
|
|
|
5242
5313
|
type: "button",
|
|
5243
5314
|
variant: "outline",
|
|
5244
5315
|
children: [
|
|
5245
|
-
/* @__PURE__ */ (0,
|
|
5246
|
-
/* @__PURE__ */ (0,
|
|
5316
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)(PdfIcon, {}),
|
|
5317
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)("span", { style: { whiteSpace: "nowrap" }, children: "PDF \uB2E4\uC6B4\uB85C\uB4DC" })
|
|
5247
5318
|
]
|
|
5248
5319
|
}
|
|
5249
|
-
) : /* @__PURE__ */ (0,
|
|
5320
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
|
|
5250
5321
|
Button,
|
|
5251
5322
|
{
|
|
5252
5323
|
asChild: Boolean(pdfHref),
|
|
@@ -5256,16 +5327,16 @@ function Header({
|
|
|
5256
5327
|
title: pdfHref ? void 0 : "\uC0B0\uCD9C\uBB3C \uC5C6\uC74C",
|
|
5257
5328
|
type: "button",
|
|
5258
5329
|
variant: "outline",
|
|
5259
|
-
children: pdfHref ? /* @__PURE__ */ (0,
|
|
5260
|
-
/* @__PURE__ */ (0,
|
|
5261
|
-
/* @__PURE__ */ (0,
|
|
5262
|
-
] }) : /* @__PURE__ */ (0,
|
|
5263
|
-
/* @__PURE__ */ (0,
|
|
5264
|
-
/* @__PURE__ */ (0,
|
|
5330
|
+
children: pdfHref ? /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)("a", { href: pdfHref, rel: "noopener noreferrer", target: "_blank", children: [
|
|
5331
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)(PdfIcon, {}),
|
|
5332
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)("span", { style: { whiteSpace: "nowrap" }, children: "PDF \uB2E4\uC6B4\uB85C\uB4DC" })
|
|
5333
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)("span", { children: [
|
|
5334
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)(PdfIcon, {}),
|
|
5335
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)("span", { style: { whiteSpace: "nowrap" }, children: "PDF \uB2E4\uC6B4\uB85C\uB4DC" })
|
|
5265
5336
|
] })
|
|
5266
5337
|
}
|
|
5267
5338
|
),
|
|
5268
|
-
hasScript ? /* @__PURE__ */ (0,
|
|
5339
|
+
hasScript ? /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(
|
|
5269
5340
|
Button,
|
|
5270
5341
|
{
|
|
5271
5342
|
color: "gray",
|
|
@@ -5276,8 +5347,8 @@ function Header({
|
|
|
5276
5347
|
type: "button",
|
|
5277
5348
|
variant: "outline",
|
|
5278
5349
|
children: [
|
|
5279
|
-
/* @__PURE__ */ (0,
|
|
5280
|
-
/* @__PURE__ */ (0,
|
|
5350
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)(VideoIcon3, {}),
|
|
5351
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)("span", { style: { whiteSpace: "nowrap" }, children: "\uC601\uC0C1" })
|
|
5281
5352
|
]
|
|
5282
5353
|
}
|
|
5283
5354
|
) : null
|
|
@@ -5293,7 +5364,7 @@ function Header({
|
|
|
5293
5364
|
var import_react70 = require("react");
|
|
5294
5365
|
|
|
5295
5366
|
// src/app/roleplay/parts/script-transcript.tsx
|
|
5296
|
-
var
|
|
5367
|
+
var import_jsx_runtime130 = require("react/jsx-runtime");
|
|
5297
5368
|
function ScriptTranscript({
|
|
5298
5369
|
lines,
|
|
5299
5370
|
partnerName,
|
|
@@ -5303,11 +5374,11 @@ function ScriptTranscript({
|
|
|
5303
5374
|
onSeek
|
|
5304
5375
|
}) {
|
|
5305
5376
|
const activeIndex = canSync ? lines.reduce((acc, line, i) => line.startMs <= currentMs ? i : acc, -1) : -1;
|
|
5306
|
-
return /* @__PURE__ */ (0,
|
|
5307
|
-
/* @__PURE__ */ (0,
|
|
5308
|
-
/* @__PURE__ */ (0,
|
|
5309
|
-
/* @__PURE__ */ (0,
|
|
5310
|
-
/* @__PURE__ */ (0,
|
|
5377
|
+
return /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(import_themes23.Flex, { direction: "column", gap: "2", style: { minWidth: 0 }, children: [
|
|
5378
|
+
/* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(import_themes7.Box, { children: [
|
|
5379
|
+
/* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(import_themes23.Flex, { align: "center", gap: "2", justify: "between", children: [
|
|
5380
|
+
/* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Typo, { as: "span", variant: "body", weight: "bold", children: "\uB300\uD654 \uC2A4\uD06C\uB9BD\uD2B8" }),
|
|
5381
|
+
/* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
|
|
5311
5382
|
Typo,
|
|
5312
5383
|
{
|
|
5313
5384
|
as: "span",
|
|
@@ -5317,16 +5388,16 @@ function ScriptTranscript({
|
|
|
5317
5388
|
}
|
|
5318
5389
|
)
|
|
5319
5390
|
] }),
|
|
5320
|
-
partnerName ? /* @__PURE__ */ (0,
|
|
5391
|
+
partnerName ? /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(Typo, { as: "p", color: "gray", mt: "1", variant: "body", children: [
|
|
5321
5392
|
"\uC0C1\uB300 \xB7 ",
|
|
5322
5393
|
partnerName
|
|
5323
5394
|
] }) : null,
|
|
5324
|
-
speechShare ? /* @__PURE__ */ (0,
|
|
5395
|
+
speechShare ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(import_themes7.Box, { mt: "2", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(SpeechShareBar, { share: speechShare }) }) : null
|
|
5325
5396
|
] }),
|
|
5326
|
-
lines.length === 0 ? /* @__PURE__ */ (0,
|
|
5397
|
+
lines.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(Typo, { as: "p", color: "gray", variant: "body", children: "\uB300\uD654 \uC2A4\uD06C\uB9BD\uD2B8\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4." }) : /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(import_themes7.Box, { style: { maxHeight: 440, overflowY: "auto" }, children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(import_themes23.Flex, { direction: "column", gap: "1", children: lines.map((line, i) => {
|
|
5327
5398
|
const isUser = line.speaker === "user";
|
|
5328
5399
|
const isActive = i === activeIndex;
|
|
5329
|
-
return /* @__PURE__ */ (0,
|
|
5400
|
+
return /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(
|
|
5330
5401
|
import_themes23.Flex,
|
|
5331
5402
|
{
|
|
5332
5403
|
align: "start",
|
|
@@ -5342,7 +5413,7 @@ function ScriptTranscript({
|
|
|
5342
5413
|
background: isActive ? "var(--accent-a3)" : "transparent"
|
|
5343
5414
|
},
|
|
5344
5415
|
children: [
|
|
5345
|
-
canSync ? /* @__PURE__ */ (0,
|
|
5416
|
+
canSync ? /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
|
|
5346
5417
|
Typo,
|
|
5347
5418
|
{
|
|
5348
5419
|
as: "span",
|
|
@@ -5357,7 +5428,7 @@ function ScriptTranscript({
|
|
|
5357
5428
|
children: formatTimestamp(line.startMs)
|
|
5358
5429
|
}
|
|
5359
5430
|
) : null,
|
|
5360
|
-
/* @__PURE__ */ (0,
|
|
5431
|
+
/* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
|
|
5361
5432
|
Typo,
|
|
5362
5433
|
{
|
|
5363
5434
|
as: "span",
|
|
@@ -5373,7 +5444,7 @@ function ScriptTranscript({
|
|
|
5373
5444
|
children: isUser ? "\uB098" : "\uC0C1\uB300"
|
|
5374
5445
|
}
|
|
5375
5446
|
),
|
|
5376
|
-
/* @__PURE__ */ (0,
|
|
5447
|
+
/* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
|
|
5377
5448
|
Typo,
|
|
5378
5449
|
{
|
|
5379
5450
|
as: "span",
|
|
@@ -5396,7 +5467,7 @@ function ScriptTranscript({
|
|
|
5396
5467
|
}
|
|
5397
5468
|
|
|
5398
5469
|
// src/app/roleplay/parts/session-replay-dialog.tsx
|
|
5399
|
-
var
|
|
5470
|
+
var import_jsx_runtime131 = require("react/jsx-runtime");
|
|
5400
5471
|
function resolveUrl(raw, disp, resolver) {
|
|
5401
5472
|
return __async(this, null, function* () {
|
|
5402
5473
|
if (!raw) return void 0;
|
|
@@ -5456,14 +5527,14 @@ function SessionReplayDialog({
|
|
|
5456
5527
|
setCurrentMs(el.currentTime * 1e3);
|
|
5457
5528
|
}
|
|
5458
5529
|
};
|
|
5459
|
-
return /* @__PURE__ */ (0,
|
|
5530
|
+
return /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(Dialog.Root, { onOpenChange, open, children: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(Dialog.Content, { maxWidth: "1040px", title: "\uC138\uC158 \uB2E4\uC2DC\uBCF4\uAE30", width: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(
|
|
5460
5531
|
import_themes24.Grid,
|
|
5461
5532
|
{
|
|
5462
5533
|
columns: { initial: "1", md: "minmax(0, 1fr) minmax(0, 1.05fr)" },
|
|
5463
5534
|
gap: "5",
|
|
5464
5535
|
mt: "2",
|
|
5465
5536
|
children: [
|
|
5466
|
-
/* @__PURE__ */ (0,
|
|
5537
|
+
/* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_themes7.Box, { children: /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(
|
|
5467
5538
|
Tabs.Root,
|
|
5468
5539
|
{
|
|
5469
5540
|
onValueChange: (v) => {
|
|
@@ -5471,11 +5542,11 @@ function SessionReplayDialog({
|
|
|
5471
5542
|
},
|
|
5472
5543
|
value: tab,
|
|
5473
5544
|
children: [
|
|
5474
|
-
/* @__PURE__ */ (0,
|
|
5475
|
-
hasVideo ? /* @__PURE__ */ (0,
|
|
5476
|
-
hasAudio ? /* @__PURE__ */ (0,
|
|
5545
|
+
/* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(Tabs.List, { children: [
|
|
5546
|
+
hasVideo ? /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(Tabs.Trigger, { value: "video", children: "\uC601\uC0C1" }) : null,
|
|
5547
|
+
hasAudio ? /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(Tabs.Trigger, { value: "audio", children: "\uC624\uB514\uC624" }) : null
|
|
5477
5548
|
] }),
|
|
5478
|
-
hasVideo ? /* @__PURE__ */ (0,
|
|
5549
|
+
hasVideo ? /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(Tabs.Content, { value: "video", children: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
|
|
5479
5550
|
import_themes7.Box,
|
|
5480
5551
|
{
|
|
5481
5552
|
mt: "3",
|
|
@@ -5484,7 +5555,7 @@ function SessionReplayDialog({
|
|
|
5484
5555
|
overflow: "hidden",
|
|
5485
5556
|
background: "var(--gray-3)"
|
|
5486
5557
|
},
|
|
5487
|
-
children: /* @__PURE__ */ (0,
|
|
5558
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
|
|
5488
5559
|
"video",
|
|
5489
5560
|
{
|
|
5490
5561
|
controls: true,
|
|
@@ -5500,7 +5571,7 @@ function SessionReplayDialog({
|
|
|
5500
5571
|
)
|
|
5501
5572
|
}
|
|
5502
5573
|
) }) : null,
|
|
5503
|
-
hasAudio ? /* @__PURE__ */ (0,
|
|
5574
|
+
hasAudio ? /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(Tabs.Content, { value: "audio", children: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_themes7.Box, { mt: "3", children: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
|
|
5504
5575
|
"audio",
|
|
5505
5576
|
{
|
|
5506
5577
|
controls: true,
|
|
@@ -5517,7 +5588,7 @@ function SessionReplayDialog({
|
|
|
5517
5588
|
]
|
|
5518
5589
|
}
|
|
5519
5590
|
) }),
|
|
5520
|
-
/* @__PURE__ */ (0,
|
|
5591
|
+
/* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
|
|
5521
5592
|
ScriptTranscript,
|
|
5522
5593
|
{
|
|
5523
5594
|
canSync,
|
|
@@ -5534,25 +5605,25 @@ function SessionReplayDialog({
|
|
|
5534
5605
|
}
|
|
5535
5606
|
|
|
5536
5607
|
// src/app/roleplay/rp-session-detail.tsx
|
|
5537
|
-
var
|
|
5608
|
+
var import_jsx_runtime132 = require("react/jsx-runtime");
|
|
5538
5609
|
function RpSessionDetailSkeleton() {
|
|
5539
|
-
return /* @__PURE__ */ (0,
|
|
5540
|
-
/* @__PURE__ */ (0,
|
|
5541
|
-
/* @__PURE__ */ (0,
|
|
5542
|
-
/* @__PURE__ */ (0,
|
|
5610
|
+
return /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes7.Box, { py: "6", children: /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)(import_themes23.Flex, { direction: "column", gap: "6", children: [
|
|
5611
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsxs)(import_themes7.Box, { children: [
|
|
5612
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes41.Skeleton, { children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(Heading2, { size: "7", children: "\uB864\uD50C\uB808\uC789 \uC138\uC158 \uC81C\uBAA9 \uB85C\uB529 \uC911" }) }),
|
|
5613
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes7.Box, { mt: "2", children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes41.Skeleton, { children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(Typo, { as: "p", variant: "body", children: "\uB0A0\uC9DC \xB7 \uC18C\uC694 \uC2DC\uAC04\uC774 \uB85C\uB529\uB418\uB294 \uC601\uC5ED\uC785\uB2C8\uB2E4" }) }) })
|
|
5543
5614
|
] }),
|
|
5544
|
-
/* @__PURE__ */ (0,
|
|
5545
|
-
/* @__PURE__ */ (0,
|
|
5546
|
-
/* @__PURE__ */ (0,
|
|
5615
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsxs)("section", { children: [
|
|
5616
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes41.Skeleton, { children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(Heading2, { size: "5", children: "\uC885\uD569 \uC810\uC218" }) }),
|
|
5617
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes7.Box, { mt: "3", children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(Card, { variant: "surface", children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes23.Flex, { align: "center", direction: "column", gap: "2", py: "3", children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes41.Skeleton, { children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(Heading2, { size: "7", children: "00" }) }) }) }) })
|
|
5547
5618
|
] }),
|
|
5548
|
-
/* @__PURE__ */ (0,
|
|
5549
|
-
/* @__PURE__ */ (0,
|
|
5550
|
-
/* @__PURE__ */ (0,
|
|
5619
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsxs)("section", { children: [
|
|
5620
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes41.Skeleton, { children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(Heading2, { size: "5", children: "\uD3C9\uAC00 \uC9C0\uD45C \uC694\uC57D" }) }),
|
|
5621
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes7.Box, { mt: "3", children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes23.Flex, { direction: "column", gap: "3", children: [0, 1, 2].map((i) => /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes41.Skeleton, { children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(Typo, { as: "p", variant: "body", children: "\uD3C9\uAC00 \uC9C0\uD45C \uD56D\uBAA9\uC774 \uB85C\uB529\uB418\uB294 \uC911\uC785\uB2C8\uB2E4" }) }, i)) }) })
|
|
5551
5622
|
] })
|
|
5552
5623
|
] }) });
|
|
5553
5624
|
}
|
|
5554
5625
|
function AnalyzingState() {
|
|
5555
|
-
return /* @__PURE__ */ (0,
|
|
5626
|
+
return /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)(
|
|
5556
5627
|
import_themes23.Flex,
|
|
5557
5628
|
{
|
|
5558
5629
|
align: "center",
|
|
@@ -5566,9 +5637,9 @@ function AnalyzingState() {
|
|
|
5566
5637
|
textAlign: "center"
|
|
5567
5638
|
},
|
|
5568
5639
|
children: [
|
|
5569
|
-
/* @__PURE__ */ (0,
|
|
5570
|
-
/* @__PURE__ */ (0,
|
|
5571
|
-
/* @__PURE__ */ (0,
|
|
5640
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsx)(Heading2, { size: { initial: "4", md: "5" }, weight: "bold", children: "AI \uBD84\uC11D \uC911\uC785\uB2C8\uB2E4" }),
|
|
5641
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes7.Box, { mt: "2", style: { maxWidth: "480px" }, children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(Typo, { as: "p", variant: "body", children: "\uB300\uD654\uC640 \uC0B0\uCD9C\uBB3C\uC740 \uC800\uC7A5\uB418\uC5C8\uACE0, AI\uAC00 \uC9C0\uD45C\uBCC4 \uADFC\uAC70\uC640 \uCF54\uCE6D\uC744 \uC0DD\uC131\uD558\uB294 \uC911\uC785\uB2C8\uB2E4." }) }),
|
|
5642
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_themes7.Box, { mt: "4", style: { width: "100%", maxWidth: "280px" }, children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(Progress, { size: "2", value: 66 }) })
|
|
5572
5643
|
]
|
|
5573
5644
|
}
|
|
5574
5645
|
);
|
|
@@ -5594,11 +5665,11 @@ function RpSessionDetail({
|
|
|
5594
5665
|
const hasScript = script !== null && script !== void 0;
|
|
5595
5666
|
const isAnalyzing = detail.status === "analyzing";
|
|
5596
5667
|
if (isLoading) {
|
|
5597
|
-
return /* @__PURE__ */ (0,
|
|
5668
|
+
return /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(RpSessionDetailSkeleton, {});
|
|
5598
5669
|
}
|
|
5599
|
-
return /* @__PURE__ */ (0,
|
|
5600
|
-
/* @__PURE__ */ (0,
|
|
5601
|
-
/* @__PURE__ */ (0,
|
|
5670
|
+
return /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)(import_themes7.Box, { py: "6", children: [
|
|
5671
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsxs)(import_themes23.Flex, { direction: "column", gap: { initial: "5", md: "7" }, children: [
|
|
5672
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
|
|
5602
5673
|
Header,
|
|
5603
5674
|
{
|
|
5604
5675
|
detail,
|
|
@@ -5609,7 +5680,7 @@ function RpSessionDetail({
|
|
|
5609
5680
|
onResolveMediaUrl
|
|
5610
5681
|
}
|
|
5611
5682
|
),
|
|
5612
|
-
isAnalyzing ? /* @__PURE__ */ (0,
|
|
5683
|
+
isAnalyzing ? /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(AnalyzingState, {}) : /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
|
|
5613
5684
|
Content9,
|
|
5614
5685
|
{
|
|
5615
5686
|
detail,
|
|
@@ -5620,7 +5691,7 @@ function RpSessionDetail({
|
|
|
5620
5691
|
}
|
|
5621
5692
|
)
|
|
5622
5693
|
] }),
|
|
5623
|
-
/* @__PURE__ */ (0,
|
|
5694
|
+
/* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
|
|
5624
5695
|
SessionReplayDialog,
|
|
5625
5696
|
{
|
|
5626
5697
|
detail,
|