@yungu-fed/question-editor 0.4.3 → 0.4.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.
Files changed (26) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.js +2412 -2250
  3. package/dist/index.mjs +700 -597
  4. package/dist/question/preview/QuestionPreviewContent.d.ts.map +1 -1
  5. package/dist/question/renderers/QuestionAdaptiveOptionList.d.ts.map +1 -1
  6. package/dist/question/renderers/QuestionBlankGroupView.d.ts.map +1 -1
  7. package/dist/question/renderers/QuestionClassificationView.d.ts.map +1 -1
  8. package/dist/question/renderers/QuestionColumnLayout.d.ts +12 -0
  9. package/dist/question/renderers/QuestionColumnLayout.d.ts.map +1 -0
  10. package/dist/question/renderers/QuestionFillTextView.d.ts.map +1 -1
  11. package/dist/question/renderers/QuestionJudgementGroupView.d.ts.map +1 -1
  12. package/dist/question/renderers/QuestionLineConnectView.d.ts.map +1 -1
  13. package/dist/question/renderers/QuestionMatchingView.d.ts.map +1 -1
  14. package/dist/question/renderers/QuestionOptionGroupView.d.ts.map +1 -1
  15. package/dist/question/renderers/QuestionOrderingView.d.ts.map +1 -1
  16. package/dist/question/renderers/QuestionRichContentWithBlankView.d.ts.map +1 -1
  17. package/dist/question/renderers/QuestionSectionTitle.d.ts.map +1 -1
  18. package/dist/question/renderers/QuestionStandardAnswerPanel.d.ts.map +1 -1
  19. package/dist/question/renderers/QuestionSystemList.d.ts +8 -0
  20. package/dist/question/renderers/QuestionSystemList.d.ts.map +1 -0
  21. package/dist/question/renderers/QuestionSystemListItem.d.ts +7 -0
  22. package/dist/question/renderers/QuestionSystemListItem.d.ts.map +1 -0
  23. package/dist/question/renderers/QuestionWordBuilderView.d.ts.map +1 -1
  24. package/dist/question/renderers/question-renderer-behavior.d.ts +6 -0
  25. package/dist/question/renderers/question-renderer-behavior.d.ts.map +1 -1
  26. package/package.json +17 -16
package/dist/index.mjs CHANGED
@@ -6058,11 +6058,116 @@ function Uc(e, t) {
6058
6058
  contents: n
6059
6059
  }] : e;
6060
6060
  }
6061
- var Wc = { placeholder: "_placeholder_np8ps_1" }, Gc = {
6061
+ //#endregion
6062
+ //#region src/question/shared/blank-numbering.ts
6063
+ var Wc = [
6064
+ "\u96f6",
6065
+ "\u4e00",
6066
+ "\u4e8c",
6067
+ "\u4e09",
6068
+ "\u56db",
6069
+ "\u4e94",
6070
+ "\u516d",
6071
+ "\u4e03",
6072
+ "\u516b",
6073
+ "\u4e5d"
6074
+ ], Gc = [
6075
+ "",
6076
+ "\u5341",
6077
+ "\u767e",
6078
+ "\u5343"
6079
+ ], Kc = [
6080
+ "",
6081
+ "\u4e07",
6082
+ "\u4ebf",
6083
+ "\u5146"
6084
+ ], qc = new Intl.PluralRules("en-US", { type: "ordinal" }), Jc = {
6085
+ few: "rd",
6086
+ many: "th",
6087
+ one: "st",
6088
+ other: "th",
6089
+ two: "nd",
6090
+ zero: "th"
6091
+ };
6092
+ function Yc(e, t) {
6093
+ return t === "zh-CN" ? `\u7b2c${Zc(e)}\u7a7a` : `${e}${Jc[qc.select(e)]} blank`;
6094
+ }
6095
+ function Xc(e, t, n) {
6096
+ let r = [...e].sort((e, n) => t.indexOf(e) - t.indexOf(n)).map((e) => t.indexOf(e) + 1).filter((e) => e > 0).map((e) => Yc(e, n));
6097
+ return n === "zh-CN" ? `${r.join("\u3001")}\uff1a` : `${r.join(", ")}:`;
6098
+ }
6099
+ function Zc(e) {
6100
+ let t = Qc(e), n = "", r = !1;
6101
+ for (let e = t.length - 1; e >= 0; --e) {
6102
+ var i;
6103
+ let a = (i = t[e]) == null ? 0 : i;
6104
+ if (a === 0) {
6105
+ r = n.length > 0;
6106
+ continue;
6107
+ }
6108
+ n.length > 0 && (r || a < 1e3) && (n += Wc[0]), n += `${$c(a)}${Kc[e]}`, r = !1;
6109
+ }
6110
+ return n.startsWith("\u4e00\u5341") ? n.slice(1) : n;
6111
+ }
6112
+ function Qc(e) {
6113
+ let t = [], n = e;
6114
+ for (; n > 0;) t.push(n % 1e4), n = Math.floor(n / 1e4);
6115
+ return t;
6116
+ }
6117
+ function $c(e) {
6118
+ let t = "", n = !1;
6119
+ for (let r = 3; r >= 0; --r) {
6120
+ let i = Math.pow(10, r), a = Math.floor(e / i) % 10;
6121
+ if (a === 0) {
6122
+ n = t.length > 0 && e % i > 0;
6123
+ continue;
6124
+ }
6125
+ n && (t += Wc[0]), t += `${Wc[a]}${Gc[r]}`, n = !1;
6126
+ }
6127
+ return t;
6128
+ }
6129
+ //#endregion
6130
+ //#region src/question/renderers/question-renderer-behavior.ts
6131
+ var el = {
6132
+ answerGroupLayout: "flow",
6133
+ blankAnswerMarker: (e, t, n, r) => Ic(e, t, r),
6134
+ blankPlaceholder: "labeled-field",
6135
+ candidateLayout: "plain-list",
6136
+ columnLayout: "css",
6137
+ lineConnectColumnTitleVisibility: "visible",
6138
+ markerSuffix: "",
6139
+ matchingAnswerLayout: "target-content",
6140
+ optionStandardAnswer: "grouped",
6141
+ sectionTitleSuffix: () => "",
6142
+ showEmptyAnswerGroups: !1,
6143
+ systemListMarkup: "native",
6144
+ textResponseVisibility: "hidden"
6145
+ }, tl = {
6146
+ answerGroupLayout: "rows",
6147
+ blankAnswerMarker: (e, t, n) => Xc(e, t, n),
6148
+ blankPlaceholder: "answer-line",
6149
+ candidateLayout: "labeled-groups",
6150
+ columnLayout: "document-table",
6151
+ lineConnectColumnTitleVisibility: "accessible-only",
6152
+ markerSuffix: ".",
6153
+ matchingAnswerLayout: "marker-path",
6154
+ optionStandardAnswer: "value-only",
6155
+ sectionTitleSuffix: (e) => e === "zh-CN" ? "\uff1a" : ":",
6156
+ showEmptyAnswerGroups: !0,
6157
+ systemListMarkup: "explicit",
6158
+ textResponseVisibility: "accessible-only"
6159
+ }, nl = l(el), rl = l("zh-CN");
6160
+ function il() {
6161
+ return d(nl);
6162
+ }
6163
+ function al() {
6164
+ return d(rl);
6165
+ }
6166
+ var ol = { placeholder: "_placeholder_np8ps_1" }, sl = {
6062
6167
  "blank-list": "_blank-list_12ccp_1",
6063
6168
  "blank-item": "_blank-item_12ccp_11",
6064
6169
  "blank-field": "_blank-field_12ccp_17"
6065
- }, Kc = {
6170
+ }, cl = {
6066
6171
  board: "_board_1f76b_1",
6067
6172
  pool: "_pool_1f76b_6",
6068
6173
  zones: "_zones_1f76b_13",
@@ -6074,7 +6179,7 @@ var Wc = { placeholder: "_placeholder_np8ps_1" }, Gc = {
6074
6179
  correct: "_correct_1f76b_77",
6075
6180
  incorrect: "_incorrect_1f76b_81",
6076
6181
  unanswered: "_unanswered_1f76b_85"
6077
- }, qc = {
6182
+ }, ll = {
6078
6183
  board: "_board_5xarh_1",
6079
6184
  columns: "_columns_5xarh_6",
6080
6185
  column: "_column_5xarh_6",
@@ -6096,12 +6201,12 @@ var Wc = { placeholder: "_placeholder_np8ps_1" }, Gc = {
6096
6201
  "section-title": "_section-title_8uipo_125",
6097
6202
  "word-builder-blank": "_word-builder-blank_8uipo_131",
6098
6203
  "word-builder-candidate-list": "_word-builder-candidate-list_8uipo_147"
6099
- }, Jc = {
6204
+ }, ul = {
6100
6205
  "table-wrap": "_table-wrap_n67ah_1",
6101
6206
  table: "_table_n67ah_1",
6102
6207
  "table-option-column": "_table-option-column_n67ah_17",
6103
6208
  "table-option-marker": "_table-option-marker_n67ah_45"
6104
- }, Yc = l({
6209
+ }, dl = l({
6105
6210
  answer: {
6106
6211
  "answer-panel": "_answer-panel_1bkkd_1",
6107
6212
  "answer-list": "_answer-list_1bkkd_8",
@@ -6111,13 +6216,13 @@ var Wc = { placeholder: "_placeholder_np8ps_1" }, Gc = {
6111
6216
  "answer-content-list": "_answer-content-list_1bkkd_46",
6112
6217
  "answer-value": "_answer-value_1bkkd_55"
6113
6218
  },
6114
- blankGroup: Gc,
6115
- classification: Kc,
6219
+ blankGroup: sl,
6220
+ classification: cl,
6116
6221
  lineConnect: V,
6117
- matching: qc,
6222
+ matching: ll,
6118
6223
  renderer: W,
6119
6224
  sectionTitle: { title: "_title_hrc5o_1" },
6120
- table: Jc,
6225
+ table: ul,
6121
6226
  textMarker: {
6122
6227
  content: "_content_63948_1",
6123
6228
  paragraph: "_paragraph_63948_10",
@@ -6126,18 +6231,18 @@ var Wc = { placeholder: "_placeholder_np8ps_1" }, Gc = {
6126
6231
  "marker-selected": "_marker-selected_63948_31",
6127
6232
  "marker-answer": "_marker-answer_63948_37"
6128
6233
  },
6129
- textResponse: Wc
6234
+ textResponse: ol
6130
6235
  });
6131
6236
  function G() {
6132
- return d(Yc);
6237
+ return d(dl);
6133
6238
  }
6134
6239
  //#endregion
6135
6240
  //#region src/question/renderers/QuestionSectionTitle.tsx
6136
- function Xc({ children: e }) {
6137
- let { sectionTitle: t } = G();
6138
- return /* @__PURE__ */ a("h3", {
6139
- className: t.title,
6140
- children: e
6241
+ function fl({ children: e }) {
6242
+ let { sectionTitleSuffix: t } = il(), n = al(), { sectionTitle: r } = G();
6243
+ return /* @__PURE__ */ o("h3", {
6244
+ className: r.title,
6245
+ children: [e, t(n)]
6141
6246
  });
6142
6247
  }
6143
6248
  var K = {
@@ -6156,7 +6261,7 @@ var K = {
6156
6261
  };
6157
6262
  //#endregion
6158
6263
  //#region src/question/player/QuestionPlayerComposite.tsx
6159
- function Zc({ childIndexPath: e = [], messages: t, onChildResponseChange: n, renderChild: r, response: i, rootQuestionNumber: o, value: s }) {
6264
+ function pl({ childIndexPath: e = [], messages: t, onChildResponseChange: n, renderChild: r, response: i, rootQuestionNumber: o, value: s }) {
6160
6265
  return s.children.length === 0 ? /* @__PURE__ */ a("div", {
6161
6266
  className: K.empty,
6162
6267
  children: t.previewEmpty
@@ -6188,110 +6293,44 @@ function q({ className: e, content: t }) {
6188
6293
  });
6189
6294
  }
6190
6295
  //#endregion
6191
- //#region src/question/shared/blank-numbering.ts
6192
- var Qc = [
6193
- "\u96f6",
6194
- "\u4e00",
6195
- "\u4e8c",
6196
- "\u4e09",
6197
- "\u56db",
6198
- "\u4e94",
6199
- "\u516d",
6200
- "\u4e03",
6201
- "\u516b",
6202
- "\u4e5d"
6203
- ], $c = [
6204
- "",
6205
- "\u5341",
6206
- "\u767e",
6207
- "\u5343"
6208
- ], el = [
6209
- "",
6210
- "\u4e07",
6211
- "\u4ebf",
6212
- "\u5146"
6213
- ], tl = new Intl.PluralRules("en-US", { type: "ordinal" }), nl = {
6214
- few: "rd",
6215
- many: "th",
6216
- one: "st",
6217
- other: "th",
6218
- two: "nd",
6219
- zero: "th"
6220
- };
6221
- function rl(e, t) {
6222
- return t === "zh-CN" ? `\u7b2c${al(e)}\u7a7a` : `${e}${nl[tl.select(e)]} blank`;
6223
- }
6224
- function il(e, t, n) {
6225
- let r = [...e].sort((e, n) => t.indexOf(e) - t.indexOf(n)).map((e) => t.indexOf(e) + 1).filter((e) => e > 0).map((e) => rl(e, n));
6226
- return n === "zh-CN" ? `${r.join("\u3001")}\uff1a` : `${r.join(", ")}:`;
6227
- }
6228
- function al(e) {
6229
- let t = ol(e), n = "", r = !1;
6230
- for (let e = t.length - 1; e >= 0; --e) {
6231
- var i;
6232
- let a = (i = t[e]) == null ? 0 : i;
6233
- if (a === 0) {
6234
- r = n.length > 0;
6235
- continue;
6236
- }
6237
- n.length > 0 && (r || a < 1e3) && (n += Qc[0]), n += `${sl(a)}${el[e]}`, r = !1;
6238
- }
6239
- return n.startsWith("\u4e00\u5341") ? n.slice(1) : n;
6240
- }
6241
- function ol(e) {
6242
- let t = [], n = e;
6243
- for (; n > 0;) t.push(n % 1e4), n = Math.floor(n / 1e4);
6244
- return t;
6245
- }
6246
- function sl(e) {
6247
- let t = "", n = !1;
6248
- for (let r = 3; r >= 0; --r) {
6249
- let i = Math.pow(10, r), a = Math.floor(e / i) % 10;
6250
- if (a === 0) {
6251
- n = t.length > 0 && e % i > 0;
6252
- continue;
6253
- }
6254
- n && (t += Qc[0]), t += `${Qc[a]}${$c[r]}`, n = !1;
6255
- }
6256
- return t;
6296
+ //#region src/question/renderers/QuestionSystemList.tsx
6297
+ function ml({ children: e, className: t, dataCandidateLayout: n }) {
6298
+ let { systemListMarkup: r } = il();
6299
+ return r === "native" ? /* @__PURE__ */ a("ol", {
6300
+ className: t,
6301
+ "data-candidate-layout": n,
6302
+ children: e
6303
+ }) : /* @__PURE__ */ a("div", {
6304
+ className: t,
6305
+ "data-candidate-layout": n,
6306
+ role: "list",
6307
+ children: e
6308
+ });
6257
6309
  }
6258
6310
  //#endregion
6259
- //#region src/question/renderers/question-renderer-behavior.ts
6260
- var cl = {
6261
- answerGroupLayout: "flow",
6262
- blankAnswerMarker: (e, t, n, r) => Ic(e, t, r),
6263
- blankPlaceholder: "labeled-field",
6264
- candidateLayout: "plain-list",
6265
- lineConnectColumnTitleVisibility: "visible",
6266
- matchingAnswerLayout: "target-content",
6267
- optionStandardAnswer: "grouped",
6268
- showEmptyAnswerGroups: !1,
6269
- textResponseVisibility: "hidden"
6270
- }, ll = {
6271
- answerGroupLayout: "rows",
6272
- blankAnswerMarker: (e, t, n) => il(e, t, n),
6273
- blankPlaceholder: "answer-line",
6274
- candidateLayout: "labeled-groups",
6275
- lineConnectColumnTitleVisibility: "accessible-only",
6276
- matchingAnswerLayout: "marker-path",
6277
- optionStandardAnswer: "value-only",
6278
- showEmptyAnswerGroups: !0,
6279
- textResponseVisibility: "accessible-only"
6280
- }, ul = l(cl);
6281
- function dl() {
6282
- return d(ul);
6311
+ //#region src/question/renderers/QuestionSystemListItem.tsx
6312
+ function hl({ children: e, className: t }) {
6313
+ let { systemListMarkup: n } = il();
6314
+ return n === "native" ? /* @__PURE__ */ a("li", {
6315
+ className: t,
6316
+ children: e
6317
+ }) : /* @__PURE__ */ a("div", {
6318
+ className: t,
6319
+ role: "listitem",
6320
+ children: e
6321
+ });
6283
6322
  }
6284
6323
  //#endregion
6285
6324
  //#region src/question/renderers/QuestionStandardAnswerPanel.tsx
6286
6325
  function J({ groups: e, title: t }) {
6287
- let { answerGroupLayout: n, showEmptyAnswerGroups: r } = dl(), { answer: i } = G(), s = e.filter((e) => e.kind === "markerOnly" || e.contents.length > 0 || r && !!e.marker);
6326
+ let { answerGroupLayout: n, showEmptyAnswerGroups: r } = il(), { answer: i } = G(), s = e.filter((e) => e.kind === "markerOnly" || e.contents.length > 0 || r && !!e.marker);
6288
6327
  return s.length === 0 ? null : /* @__PURE__ */ o("section", {
6289
6328
  "aria-label": t,
6290
6329
  className: i["answer-panel"],
6291
6330
  "data-answer-group-layout": n,
6292
- children: [/* @__PURE__ */ a(Xc, { children: t }), /* @__PURE__ */ a("ol", {
6331
+ children: [/* @__PURE__ */ a(fl, { children: t }), /* @__PURE__ */ a(ml, {
6293
6332
  className: i["answer-list"],
6294
- children: s.map((e, t) => /* @__PURE__ */ o("li", {
6333
+ children: s.map((e, t) => /* @__PURE__ */ o(hl, {
6295
6334
  className: i["answer-row"],
6296
6335
  children: [e.marker ? /* @__PURE__ */ a("span", {
6297
6336
  className: e.kind === "markerOnly" ? `${i["answer-marker"]} ${i["answer-marker-only"]}` : i["answer-marker"],
@@ -6309,7 +6348,7 @@ function J({ groups: e, title: t }) {
6309
6348
  }
6310
6349
  //#endregion
6311
6350
  //#region src/question/player/QuestionBlankGroupPlayer.tsx
6312
- function fl({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: s, showAnswer: c }) {
6351
+ function gl({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: s, showAnswer: c }) {
6313
6352
  let l = Qs(i, s, t.blanks), u = Wn(t.answers, t.blanks).map((e, r) => ({
6314
6353
  kind: "detailed",
6315
6354
  contents: e.answerPools.map((e, t) => /* @__PURE__ */ a(q, { content: e }, `group-${r}-answer-${t}`)),
@@ -6333,24 +6372,24 @@ function fl({ disabled: e, item: t, messages: n, onChange: r, response: i, respo
6333
6372
  className: K.input,
6334
6373
  disabled: e,
6335
6374
  onChange: (e) => d(t, e.target.value),
6336
- value: ml(l.answers, t)
6375
+ value: vl(l.answers, t)
6337
6376
  })]
6338
- }, pl(t, r))), c ? /* @__PURE__ */ a(J, {
6377
+ }, _l(t, r))), c ? /* @__PURE__ */ a(J, {
6339
6378
  groups: u,
6340
6379
  title: n.standardAnswer
6341
6380
  }) : null]
6342
6381
  });
6343
6382
  }
6344
- function pl(e, t) {
6383
+ function _l(e, t) {
6345
6384
  return e || `blank-${t + 1}`;
6346
6385
  }
6347
- function ml(e, t) {
6386
+ function vl(e, t) {
6348
6387
  var n, r;
6349
6388
  return (n = (r = Object.entries(e).find(([e]) => e === t)) == null ? void 0 : r[1]) == null ? "" : n;
6350
6389
  }
6351
6390
  //#endregion
6352
6391
  //#region src/question/renderers/classificationAnswers.tsx
6353
- function hl(e) {
6392
+ function yl(e) {
6354
6393
  return e.categories.map((t) => ({
6355
6394
  kind: "detailed",
6356
6395
  contents: e.items.filter((n) => e.answers[n.id] === t.id).map((e) => /* @__PURE__ */ a(q, { content: e.content }, `${t.id}-${e.id}`)),
@@ -6359,10 +6398,10 @@ function hl(e) {
6359
6398
  }
6360
6399
  //#endregion
6361
6400
  //#region src/question/player/QuestionClassificationPlayer.tsx
6362
- function gl({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: s, showAnswer: c }) {
6363
- let [l, u] = h(""), d = nc(i, s), f = vl(d.placements, t), p = t.items.find((e) => e.id === l);
6401
+ function bl({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: s, showAnswer: c }) {
6402
+ let [l, u] = h(""), d = nc(i, s), f = Sl(d.placements, t), p = t.items.find((e) => e.id === l);
6364
6403
  function m(e, n) {
6365
- r(j(j({}, d), {}, { placements: vl(mc(f, e, n), t) })), u("");
6404
+ r(j(j({}, d), {}, { placements: Sl(mc(f, e, n), t) })), u("");
6366
6405
  }
6367
6406
  function g(t, n) {
6368
6407
  t.preventDefault();
@@ -6370,10 +6409,10 @@ function gl({ disabled: e, item: t, messages: n, onChange: r, response: i, respo
6370
6409
  !e && r && m(r, n);
6371
6410
  }
6372
6411
  function _(n) {
6373
- let r = l === n.id, i = _l(n.id, f, t, c);
6412
+ let r = l === n.id, i = xl(n.id, f, t, c);
6374
6413
  return /* @__PURE__ */ a("button", {
6375
6414
  "aria-pressed": r,
6376
- className: U(Kc.item, r && Kc.selected, i === "correct" && Kc.correct, i === "incorrect" && Kc.incorrect, i === "unanswered" && Kc.unanswered),
6415
+ className: U(cl.item, r && cl.selected, i === "correct" && cl.correct, i === "incorrect" && cl.incorrect, i === "unanswered" && cl.unanswered),
6377
6416
  "data-status": i,
6378
6417
  "data-testid": `classification-player-item-${n.id}`,
6379
6418
  disabled: e,
@@ -6391,28 +6430,28 @@ function gl({ disabled: e, item: t, messages: n, onChange: r, response: i, respo
6391
6430
  return /* @__PURE__ */ o("div", {
6392
6431
  className: W.element,
6393
6432
  children: [/* @__PURE__ */ o("div", {
6394
- className: Kc.board,
6433
+ className: cl.board,
6395
6434
  children: [/* @__PURE__ */ a("div", {
6396
- className: Kc.zones,
6435
+ className: cl.zones,
6397
6436
  "data-testid": "classification-zones",
6398
6437
  children: t.categories.map((e) => {
6399
6438
  let r = t.items.filter((t) => f[t.id] === e.id);
6400
6439
  return /* @__PURE__ */ o("section", {
6401
- className: Kc.zone,
6440
+ className: cl.zone,
6402
6441
  onClick: () => p ? m(p.id, e.id) : void 0,
6403
6442
  onDragOver: (e) => e.preventDefault(),
6404
6443
  onDrop: (t) => g(t, e.id),
6405
6444
  children: [/* @__PURE__ */ a("div", {
6406
- className: Kc["zone-title"],
6445
+ className: cl["zone-title"],
6407
6446
  children: /* @__PURE__ */ a(q, { content: e.content })
6408
6447
  }), r.length > 0 ? r.map((e) => _(e)) : /* @__PURE__ */ a("span", {
6409
- className: Kc.empty,
6448
+ className: cl.empty,
6410
6449
  children: n.unassigned
6411
6450
  })]
6412
6451
  }, e.id);
6413
6452
  })
6414
6453
  }), /* @__PURE__ */ a("section", {
6415
- className: Kc.pool,
6454
+ className: cl.pool,
6416
6455
  "data-testid": "classification-pool",
6417
6456
  onClick: () => p ? m(p.id, "") : void 0,
6418
6457
  onDragOver: (e) => e.preventDefault(),
@@ -6420,62 +6459,64 @@ function gl({ disabled: e, item: t, messages: n, onChange: r, response: i, respo
6420
6459
  children: t.items.filter((e) => !f[e.id]).map((e) => _(e))
6421
6460
  })]
6422
6461
  }), c ? /* @__PURE__ */ a(J, {
6423
- groups: hl(t),
6462
+ groups: yl(t),
6424
6463
  title: n.standardAnswer
6425
6464
  }) : null]
6426
6465
  });
6427
6466
  }
6428
- function _l(e, t, n, r) {
6467
+ function xl(e, t, n, r) {
6429
6468
  var i, a;
6430
6469
  let o = (i = t[e]) == null ? "" : i, s = (a = n.answers[e]) == null ? "" : a;
6431
6470
  if (!(!r || !s)) return o ? s === o ? "correct" : "incorrect" : "unanswered";
6432
6471
  }
6433
- function vl(e, t) {
6472
+ function Sl(e, t) {
6434
6473
  return Qe(e, t.categories, t.items);
6435
6474
  }
6436
6475
  //#endregion
6437
6476
  //#region src/question/renderers/QuestionRichContentWithBlankView.tsx
6438
- function yl({ className: e, content: t, renderBlank: n }) {
6477
+ function Cl({ className: e, content: t, renderBlank: n }) {
6439
6478
  let { renderer: r } = G(), i = /* @__PURE__ */ new Map();
6440
6479
  return /* @__PURE__ */ a("div", {
6441
6480
  className: [r["rich-content"], e == null ? "" : e].filter(Boolean).join(" "),
6442
- children: t.json.map((e, t) => bl(e, {
6481
+ children: t.json.map((e, t) => wl(e, {
6443
6482
  blankIndexes: i,
6444
6483
  key: `node-${t}`,
6445
6484
  renderBlank: n
6446
6485
  }))
6447
6486
  });
6448
6487
  }
6449
- function bl(e, t) {
6450
- if (typeof e.text == "string") return /* @__PURE__ */ a(c, { children: e.text }, t.key);
6451
- if (e.type === "blank") return /* @__PURE__ */ a(c, { children: xl(e, t) }, t.key);
6452
- let n = Cl(e.children, t);
6488
+ function wl(e, t) {
6489
+ return typeof e.text == "string" ? /* @__PURE__ */ a(c, { children: e.text }, t.key) : e.type === "blank" ? /* @__PURE__ */ a(c, { children: El(e, t) }, t.key) : Tl(e, t);
6490
+ }
6491
+ function Tl(e, t) {
6492
+ if (e.type === "image" || e.type === "formula") return /* @__PURE__ */ a("span", { dangerouslySetInnerHTML: { __html: r([e]) } }, t.key);
6493
+ let n = Ol(e.children, t);
6453
6494
  switch (e.type) {
6454
- case "heading": return wl(e, n, t.key);
6495
+ case "heading": return kl(e, n, t.key);
6455
6496
  case "table": return /* @__PURE__ */ a("table", { children: n }, t.key);
6456
6497
  case "table-row": return /* @__PURE__ */ a("tr", { children: n }, t.key);
6457
6498
  case "table-cell": return /* @__PURE__ */ a("td", { children: n }, t.key);
6458
6499
  default: return /* @__PURE__ */ a("p", { children: n }, t.key);
6459
6500
  }
6460
6501
  }
6461
- function xl(e, t) {
6462
- let n = Tl(e.blankId), r = Sl(t.blankIndexes, n);
6502
+ function El(e, t) {
6503
+ let n = Al(e.blankId), r = Dl(t.blankIndexes, n);
6463
6504
  return t.renderBlank({
6464
6505
  blankId: n,
6465
6506
  index: r,
6466
- label: Tl(e.label)
6507
+ label: Al(e.label)
6467
6508
  });
6468
6509
  }
6469
- function Sl(e, t) {
6510
+ function Dl(e, t) {
6470
6511
  let n = e.get(t);
6471
6512
  if (n !== void 0) return n;
6472
6513
  let r = e.size;
6473
6514
  return e.set(t, r), r;
6474
6515
  }
6475
- function Cl(e, t) {
6476
- return (e == null ? [] : e).map((e, n) => bl(e, j(j({}, t), {}, { key: `${t.key}-${n}` })));
6516
+ function Ol(e, t) {
6517
+ return (e == null ? [] : e).map((e, n) => wl(e, j(j({}, t), {}, { key: `${t.key}-${n}` })));
6477
6518
  }
6478
- function wl(e, t, n) {
6519
+ function kl(e, t, n) {
6479
6520
  switch (e.level) {
6480
6521
  case 1: return /* @__PURE__ */ a("h1", { children: t }, n);
6481
6522
  case 2: return /* @__PURE__ */ a("h2", { children: t }, n);
@@ -6483,7 +6524,7 @@ function wl(e, t, n) {
6483
6524
  default: return /* @__PURE__ */ a("p", { children: t }, n);
6484
6525
  }
6485
6526
  }
6486
- function Tl(e) {
6527
+ function Al(e) {
6487
6528
  return typeof e == "string" ? e : "";
6488
6529
  }
6489
6530
  var Y = {
@@ -6504,10 +6545,10 @@ var Y = {
6504
6545
  };
6505
6546
  //#endregion
6506
6547
  //#region src/question/player/QuestionFillTextContentPlayer.tsx
6507
- function El({ answers: e, disabled: t, item: n, messages: r, onAnswerChange: i, structure: o }) {
6508
- return /* @__PURE__ */ a(yl, {
6548
+ function jl({ answers: e, disabled: t, item: n, messages: r, onAnswerChange: i, structure: o }) {
6549
+ return /* @__PURE__ */ a(Cl, {
6509
6550
  content: n.content,
6510
- renderBlank: (a) => Dl(a, {
6551
+ renderBlank: (a) => Ml(a, {
6511
6552
  answers: e,
6512
6553
  blankLabel: r.blankLabel,
6513
6554
  disabled: t,
@@ -6517,10 +6558,10 @@ function El({ answers: e, disabled: t, item: n, messages: r, onAnswerChange: i,
6517
6558
  })
6518
6559
  });
6519
6560
  }
6520
- function Dl(e, t) {
6521
- let { blankId: n } = e, r = t.item.blanks.indexOf(n), i = Nl(e.label, t.blankLabel, r);
6561
+ function Ml(e, t) {
6562
+ let { blankId: n } = e, r = t.item.blanks.indexOf(n), i = Rl(e.label, t.blankLabel, r);
6522
6563
  if (t.structure.config.candidateMode === "none") {
6523
- let e = kl(t.answers, n);
6564
+ let e = Pl(t.answers, n);
6524
6565
  return /* @__PURE__ */ a("input", {
6525
6566
  "aria-label": i,
6526
6567
  className: Y["inline-input"],
@@ -6532,8 +6573,8 @@ function Dl(e, t) {
6532
6573
  value: (e == null ? void 0 : e.kind) === "text" ? e.value : ""
6533
6574
  });
6534
6575
  }
6535
- if (t.structure.config.candidateMode === "sharedPool") return Ol(n, i, t);
6536
- let o = kl(t.answers, n), s = jl(t.item, n, t.structure.config.candidateMode, o);
6576
+ if (t.structure.config.candidateMode === "sharedPool") return Nl(n, i, t);
6577
+ let o = Pl(t.answers, n), s = Il(t.item, n, t.structure.config.candidateMode, o);
6537
6578
  return /* @__PURE__ */ a("span", {
6538
6579
  "aria-label": i,
6539
6580
  className: Y["inline-blank-underline"],
@@ -6543,9 +6584,9 @@ function Dl(e, t) {
6543
6584
  }) : i
6544
6585
  });
6545
6586
  }
6546
- function Ol(e, t, n) {
6587
+ function Nl(e, t, n) {
6547
6588
  var r, i;
6548
- let s = kl(n.answers, e), c = (r = ((s == null ? void 0 : s.kind) === "option" ? s.optionIds : []).slice(0, 1)[0]) == null ? "" : r, l = Ml(n.answers, e);
6589
+ let s = Pl(n.answers, e), c = (r = ((s == null ? void 0 : s.kind) === "option" ? s.optionIds : []).slice(0, 1)[0]) == null ? "" : r, l = Ll(n.answers, e);
6549
6590
  return /* @__PURE__ */ o("select", {
6550
6591
  "aria-label": t,
6551
6592
  className: Y["inline-select"],
@@ -6565,11 +6606,11 @@ function Ol(e, t, n) {
6565
6606
  }, e.optionId))]
6566
6607
  });
6567
6608
  }
6568
- function kl(e, t) {
6609
+ function Pl(e, t) {
6569
6610
  var n;
6570
6611
  return (n = Object.entries(e).find(([e]) => e === t)) == null ? void 0 : n[1];
6571
6612
  }
6572
- function Al(e, t, n) {
6613
+ function Fl(e, t, n) {
6573
6614
  var r, i;
6574
6615
  if (n === "sharedPool") {
6575
6616
  var a;
@@ -6577,21 +6618,21 @@ function Al(e, t, n) {
6577
6618
  }
6578
6619
  return (r = (i = e.blankOptionGroups) == null || (i = i.find((e) => e.blankId === t)) == null ? void 0 : i.options) == null ? [] : r;
6579
6620
  }
6580
- function jl(e, t, n, r) {
6621
+ function Il(e, t, n, r) {
6581
6622
  let i = (r == null ? void 0 : r.kind) === "option" ? r.optionIds[0] : void 0;
6582
- if (i) return Al(e, t, n).find((e) => e.optionId === i);
6623
+ if (i) return Fl(e, t, n).find((e) => e.optionId === i);
6583
6624
  }
6584
- function Ml(e, t) {
6625
+ function Ll(e, t) {
6585
6626
  let n = /* @__PURE__ */ new Set(), r = Object.entries(e);
6586
6627
  for (let [e, i] of r) if (e !== t && i.kind === "option") for (let e of i.optionIds) n.add(e);
6587
6628
  return n;
6588
6629
  }
6589
- function Nl(e, t, n) {
6630
+ function Rl(e, t, n) {
6590
6631
  return e || `${t} ${n + 1}`;
6591
6632
  }
6592
6633
  //#endregion
6593
6634
  //#region src/question/player/QuestionFillTextPlayer.tsx
6594
- function Pl({ disabled: e, element: t, item: n, messages: r, onChange: i, response: s, responseIndex: c, showAnswer: l }) {
6635
+ function zl({ disabled: e, element: t, item: n, messages: r, onChange: i, response: s, responseIndex: c, showAnswer: l }) {
6595
6636
  let u = Tn(n, t, !0), d = Hc(u), f = $s(s, c, t, u.blanks), p = d.map((e, t) => ({
6596
6637
  kind: "detailed",
6597
6638
  contents: e.contents.map((e, n) => /* @__PURE__ */ a(q, { content: e }, `group-${t}-answer-${n}`)),
@@ -6603,7 +6644,7 @@ function Pl({ disabled: e, element: t, item: n, messages: r, onChange: i, respon
6603
6644
  return /* @__PURE__ */ o("div", {
6604
6645
  className: K["fill-text"],
6605
6646
  children: [
6606
- /* @__PURE__ */ a(El, {
6647
+ /* @__PURE__ */ a(jl, {
6607
6648
  answers: f.answers,
6608
6649
  disabled: e,
6609
6650
  item: u,
@@ -6611,8 +6652,8 @@ function Pl({ disabled: e, element: t, item: n, messages: r, onChange: i, respon
6611
6652
  onAnswerChange: m,
6612
6653
  structure: t
6613
6654
  }),
6614
- Fl(u, t.config.candidateMode, r.candidateOptions),
6615
- Il({
6655
+ Bl(u, t.config.candidateMode, r.candidateOptions),
6656
+ Vl({
6616
6657
  disabled: e,
6617
6658
  item: u,
6618
6659
  onAnswerChange: m,
@@ -6625,7 +6666,7 @@ function Pl({ disabled: e, element: t, item: n, messages: r, onChange: i, respon
6625
6666
  ]
6626
6667
  });
6627
6668
  }
6628
- function Fl(e, t, n) {
6669
+ function Bl(e, t, n) {
6629
6670
  var r;
6630
6671
  let i = (r = e.candidateOptions) == null ? [] : r;
6631
6672
  return t !== "sharedPool" || i.length === 0 ? null : /* @__PURE__ */ o("div", {
@@ -6645,7 +6686,7 @@ function Fl(e, t, n) {
6645
6686
  })]
6646
6687
  });
6647
6688
  }
6648
- function Il({ disabled: e, item: t, onAnswerChange: n, responseItem: r }) {
6689
+ function Vl({ disabled: e, item: t, onAnswerChange: n, responseItem: r }) {
6649
6690
  let i = t.blanks.reduce((e, n, r) => {
6650
6691
  var i;
6651
6692
  let a = (i = t.blankOptionGroups) == null ? void 0 : i.find((e) => e.blankId === n);
@@ -6656,7 +6697,7 @@ function Il({ disabled: e, item: t, onAnswerChange: n, responseItem: r }) {
6656
6697
  }, []);
6657
6698
  return i.length === 0 ? null : /* @__PURE__ */ a("div", {
6658
6699
  className: Y["per-blank-candidate-options"],
6659
- children: i.map(({ group: t, marker: i }) => Ll({
6700
+ children: i.map(({ group: t, marker: i }) => Hl({
6660
6701
  disabled: e,
6661
6702
  group: t,
6662
6703
  marker: i,
@@ -6665,7 +6706,7 @@ function Il({ disabled: e, item: t, onAnswerChange: n, responseItem: r }) {
6665
6706
  }))
6666
6707
  });
6667
6708
  }
6668
- function Ll({ disabled: e, group: t, marker: n, onAnswerChange: r, responseItem: i }) {
6709
+ function Hl({ disabled: e, group: t, marker: n, onAnswerChange: r, responseItem: i }) {
6669
6710
  let s = i.answers[t.blankId];
6670
6711
  return /* @__PURE__ */ o("section", {
6671
6712
  "aria-label": n,
@@ -6675,7 +6716,7 @@ function Ll({ disabled: e, group: t, marker: n, onAnswerChange: r, responseItem:
6675
6716
  children: n
6676
6717
  }), /* @__PURE__ */ a("div", {
6677
6718
  className: Y["per-blank-candidate-list"],
6678
- children: t.options.map((n) => Rl({
6719
+ children: t.options.map((n) => Ul({
6679
6720
  activeAnswer: s,
6680
6721
  blankId: t.blankId,
6681
6722
  disabled: e,
@@ -6685,7 +6726,7 @@ function Ll({ disabled: e, group: t, marker: n, onAnswerChange: r, responseItem:
6685
6726
  })]
6686
6727
  }, t.blankId);
6687
6728
  }
6688
- function Rl({ activeAnswer: e, blankId: t, disabled: n, onAnswerChange: r, option: i }) {
6729
+ function Ul({ activeAnswer: e, blankId: t, disabled: n, onAnswerChange: r, option: i }) {
6689
6730
  let o = (e == null ? void 0 : e.kind) === "option" && e.optionIds.includes(i.optionId);
6690
6731
  return /* @__PURE__ */ a("button", {
6691
6732
  "aria-pressed": o,
@@ -6712,7 +6753,7 @@ var X = {
6712
6753
  };
6713
6754
  //#endregion
6714
6755
  //#region src/question/player/QuestionJudgementGroupPlayer.tsx
6715
- function zl({ disabled: e, element: t, item: n, messages: r, onChange: i, response: s, responseIndex: c, showAnswer: l }) {
6756
+ function Wl({ disabled: e, element: t, item: n, messages: r, onChange: i, response: s, responseIndex: c, showAnswer: l }) {
6716
6757
  let u = tc(s, c), d = ln(t.config.judgeAnswerMode), f = [{
6717
6758
  kind: "detailed",
6718
6759
  contents: un(t.config.judgeAnswerMode, n.answers),
@@ -6748,8 +6789,8 @@ function zl({ disabled: e, element: t, item: n, messages: r, onChange: i, respon
6748
6789
  }
6749
6790
  //#endregion
6750
6791
  //#region src/question/renderers/lineConnectAnswers.tsx
6751
- function Bl(e) {
6752
- let t = Vl(e);
6792
+ function Gl(e) {
6793
+ let t = Kl(e);
6753
6794
  return e.columns.reduce((n, r, i) => {
6754
6795
  let o = r.items.map((n, o) => {
6755
6796
  var s;
@@ -6765,7 +6806,7 @@ function Bl(e) {
6765
6806
  return [...n, ...o];
6766
6807
  }, []);
6767
6808
  }
6768
- function Vl(e) {
6809
+ function Kl(e) {
6769
6810
  return e.columns.reduce((e, t, n) => (t.items.forEach((t) => e.set(t.itemId, {
6770
6811
  columnIndex: n,
6771
6812
  item: t
@@ -6773,7 +6814,7 @@ function Vl(e) {
6773
6814
  }
6774
6815
  //#endregion
6775
6816
  //#region src/question/player/QuestionLineConnectPlayer.tsx
6776
- function Hl({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: s, showAnswer: c }) {
6817
+ function ql({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: s, showAnswer: c }) {
6777
6818
  let [l, d] = h(null), [g, _] = h(null), v = m(null), y = m(/* @__PURE__ */ new Map()), b = rc(i, s), x = { gridTemplateColumns: `repeat(${t.columns.length}, minmax(12rem, 1fr))` }, S = p(() => to(t, b.connections), [t, b.connections]), C = p(() => JSON.stringify({
6778
6819
  columns: t.columns.map((e) => e.items.map((e) => e.itemId)),
6779
6820
  connections: b.connections
@@ -6890,19 +6931,19 @@ function Hl({ disabled: e, item: t, messages: n, onChange: r, response: i, respo
6890
6931
  }, t.columnId))
6891
6932
  })]
6892
6933
  }), c ? /* @__PURE__ */ a(J, {
6893
- groups: Bl(t),
6934
+ groups: Gl(t),
6894
6935
  title: n.standardAnswer
6895
6936
  }) : null]
6896
6937
  });
6897
6938
  }
6898
- var Ul = {
6939
+ var Jl = {
6899
6940
  path: "_path_11o60_1",
6900
6941
  endpoint: "_endpoint_11o60_7",
6901
6942
  separator: "_separator_11o60_8"
6902
6943
  };
6903
6944
  //#endregion
6904
6945
  //#region src/question/renderers/matchingAnswers.tsx
6905
- function Wl(e) {
6946
+ function Yl(e) {
6906
6947
  var t, n;
6907
6948
  let r = e.columns[0], i = e.columns[1], o = new Map((t = i == null ? void 0 : i.items.map((e) => [e.itemId, e])) == null ? [] : t);
6908
6949
  return ((n = r == null ? void 0 : r.items) == null ? [] : n).map((t, n) => {
@@ -6917,7 +6958,7 @@ function Wl(e) {
6917
6958
  };
6918
6959
  });
6919
6960
  }
6920
- function Gl(e) {
6961
+ function Xl(e) {
6921
6962
  var t, n;
6922
6963
  let r = e.columns[0], i = e.columns[1], s = new Map((t = i == null ? void 0 : i.items.map((e, t) => [e.itemId, {
6923
6964
  item: e,
@@ -6928,19 +6969,19 @@ function Gl(e) {
6928
6969
  let u = (c = e.answers[t.itemId]) == null ? void 0 : c[0], d = u ? s.get(u) : void 0;
6929
6970
  return {
6930
6971
  contents: d && i ? [/* @__PURE__ */ o("div", {
6931
- className: Ul.path,
6972
+ className: Jl.path,
6932
6973
  children: [
6933
6974
  /* @__PURE__ */ a("span", {
6934
- className: Ul.endpoint,
6935
- children: Kl(r, t, n)
6975
+ className: Jl.endpoint,
6976
+ children: Zl(r, t, n)
6936
6977
  }),
6937
6978
  /* @__PURE__ */ a("span", {
6938
- className: Ul.separator,
6979
+ className: Jl.separator,
6939
6980
  children: "-"
6940
6981
  }),
6941
6982
  /* @__PURE__ */ a("span", {
6942
- className: Ul.endpoint,
6943
- children: Kl(i, d.item, d.itemIndex)
6983
+ className: Jl.endpoint,
6984
+ children: Zl(i, d.item, d.itemIndex)
6944
6985
  })
6945
6986
  ]
6946
6987
  }, `${t.itemId}-${d.item.itemId}`)] : [],
@@ -6949,10 +6990,10 @@ function Gl(e) {
6949
6990
  };
6950
6991
  });
6951
6992
  }
6952
- function Kl(e, t, n) {
6993
+ function Zl(e, t, n) {
6953
6994
  return sn(e.labelStyle, n) || /* @__PURE__ */ a(q, { content: t.content });
6954
6995
  }
6955
- var ql = {
6996
+ var Ql = {
6956
6997
  board: "_board_1q6ar_1",
6957
6998
  "matched-rows": "_matched-rows_1q6ar_6",
6958
6999
  "matched-row": "_matched-row_1q6ar_6",
@@ -6965,8 +7006,8 @@ var ql = {
6965
7006
  };
6966
7007
  //#endregion
6967
7008
  //#region src/question/player/QuestionMatchingPlayer.tsx
6968
- function Jl({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: s, showAnswer: c }) {
6969
- let [l, u] = h(null), d = ic(i, s), f = Yl(t, d.connections);
7009
+ function $l({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: s, showAnswer: c }) {
7010
+ let [l, u] = h(null), d = ic(i, s), f = eu(t, d.connections);
6970
7011
  function p(t, n) {
6971
7012
  if (e) return;
6972
7013
  let i = l ? ht(l, {
@@ -6986,13 +7027,13 @@ function Jl({ disabled: e, item: t, messages: n, onChange: r, response: i, respo
6986
7027
  let r = (l == null ? void 0 : l.itemId) === t.item.itemId;
6987
7028
  return /* @__PURE__ */ o("button", {
6988
7029
  "aria-pressed": r,
6989
- className: U(ql.item, r && ql.selected, n && ql.matched),
7030
+ className: U(Ql.item, r && Ql.selected, n && Ql.matched),
6990
7031
  "data-testid": `matching-player-item-${t.item.itemId}`,
6991
7032
  disabled: e,
6992
7033
  onClick: () => p(t.columnIndex, t.item.itemId),
6993
7034
  type: "button",
6994
7035
  children: [t.marker ? /* @__PURE__ */ a("span", {
6995
- className: ql.marker,
7036
+ className: Ql.marker,
6996
7037
  children: t.marker
6997
7038
  }) : null, /* @__PURE__ */ a(q, { content: t.item.content })]
6998
7039
  }, t.item.itemId);
@@ -7000,31 +7041,31 @@ function Jl({ disabled: e, item: t, messages: n, onChange: r, response: i, respo
7000
7041
  return /* @__PURE__ */ o("div", {
7001
7042
  className: W.element,
7002
7043
  children: [/* @__PURE__ */ o("div", {
7003
- className: ql.board,
7044
+ className: Ql.board,
7004
7045
  children: [f.rows.length > 0 ? /* @__PURE__ */ a("div", {
7005
- className: ql["matched-rows"],
7046
+ className: Ql["matched-rows"],
7006
7047
  children: f.rows.map((e) => /* @__PURE__ */ o("div", {
7007
- className: ql["matched-row"],
7048
+ className: Ql["matched-row"],
7008
7049
  "data-testid": `matching-player-row-${e.from.item.itemId}-${e.to.item.itemId}`,
7009
7050
  children: [m(e.from, !0), m(e.to, !0)]
7010
7051
  }, `${e.from.item.itemId}-${e.to.item.itemId}`))
7011
7052
  }) : null, f.unmatchedColumns.some((e) => e.length > 0) ? /* @__PURE__ */ a("div", {
7012
- className: ql.columns,
7053
+ className: Ql.columns,
7013
7054
  children: f.unmatchedColumns.map((e, n) => {
7014
7055
  var r, i;
7015
7056
  return /* @__PURE__ */ a("section", {
7016
- className: ql.column,
7057
+ className: Ql.column,
7017
7058
  children: e.map((e) => m(e, !1))
7018
7059
  }, (r = (i = t.columns[n]) == null ? void 0 : i.columnId) == null ? n : r);
7019
7060
  })
7020
7061
  }) : null]
7021
7062
  }), c ? /* @__PURE__ */ a(J, {
7022
- groups: Wl(t),
7063
+ groups: Yl(t),
7023
7064
  title: n.standardAnswer
7024
7065
  }) : null]
7025
7066
  });
7026
7067
  }
7027
- function Yl(e, t) {
7068
+ function eu(e, t) {
7028
7069
  var n;
7029
7070
  let r = e.columns.map((e, t) => e.items.map((n, r) => ({
7030
7071
  columnIndex: t,
@@ -7045,7 +7086,7 @@ function Yl(e, t) {
7045
7086
  }
7046
7087
  //#endregion
7047
7088
  //#region src/question/renderers/optionGroupAnswers.tsx
7048
- function Xl(e, t) {
7089
+ function tu(e, t) {
7049
7090
  return fn(t, e.config.optionLabelStyle).map((e) => ({
7050
7091
  kind: "markerOnly",
7051
7092
  marker: e.marker
@@ -7053,22 +7094,65 @@ function Xl(e, t) {
7053
7094
  }
7054
7095
  //#endregion
7055
7096
  //#region src/question/renderers/question-option-grid.ts
7056
- function Zl({ availableWidth: e, columnGap: t, optionCount: n, widestOptionWidth: r }) {
7097
+ function nu({ availableWidth: e, columnGap: t, optionCount: n, widestOptionWidth: r }) {
7057
7098
  let i = Math.max(1, Math.trunc(n));
7058
7099
  if (e <= 0 || r <= 0) return 1;
7059
7100
  for (let n = i; n >= 2; --n) if (i % n === 0 && (e - Math.max(0, t) * (n - 1)) / n >= r) return n;
7060
7101
  return 1;
7061
7102
  }
7062
- var Ql = { list: "_list_1xo1n_1" };
7103
+ var ru = { list: "_list_1xo1n_1" }, iu = {
7104
+ table: "_table_p4zkf_1",
7105
+ cell: "_cell_p4zkf_7"
7106
+ };
7107
+ //#endregion
7108
+ //#region src/question/renderers/QuestionColumnLayout.tsx
7109
+ function au({ children: e, className: t, columnCount: n, dataAttributes: r, layoutRef: i, role: c, style: l }) {
7110
+ let { columnLayout: u, systemListMarkup: d } = il(), f = Math.max(1, Math.floor(n));
7111
+ if (u === "document-table") {
7112
+ let n = ou(s.toArray(e), f), l = `${100 / f}%`, u = t ? `${iu.table} ${t}` : iu.table;
7113
+ return /* @__PURE__ */ o("table", j(j({}, r), {}, {
7114
+ className: u,
7115
+ "data-column-count": f,
7116
+ "data-question-document-layout": "columns",
7117
+ ref: i,
7118
+ role: c == null ? "presentation" : c,
7119
+ children: [/* @__PURE__ */ a("colgroup", { children: Array.from({ length: f }, (e, t) => /* @__PURE__ */ a("col", { style: { width: l } }, `column-${t}`)) }), /* @__PURE__ */ a("tbody", { children: n.map((e, t) => /* @__PURE__ */ a("tr", { children: Array.from({ length: f }, (t, n) => {
7120
+ let r = e.slice(n, n + 1)[0];
7121
+ return /* @__PURE__ */ a("td", {
7122
+ "aria-hidden": r ? void 0 : "true",
7123
+ className: iu.cell,
7124
+ children: r == null ? null : r
7125
+ }, `cell-${n}`);
7126
+ }) }, `row-${t}`)) })]
7127
+ }));
7128
+ }
7129
+ return c === "list" && d === "native" ? /* @__PURE__ */ a("ol", j(j({}, r), {}, {
7130
+ className: t,
7131
+ "data-column-count": f,
7132
+ ref: i,
7133
+ style: l,
7134
+ children: e
7135
+ })) : /* @__PURE__ */ a("div", j(j({}, r), {}, {
7136
+ className: t,
7137
+ "data-column-count": f,
7138
+ ref: i,
7139
+ role: c,
7140
+ style: l,
7141
+ children: e
7142
+ }));
7143
+ }
7144
+ function ou(e, t) {
7145
+ return Array.from({ length: Math.ceil(e.length / t) }, (n, r) => e.slice(r * t, (r + 1) * t));
7146
+ }
7063
7147
  //#endregion
7064
7148
  //#region src/question/renderers/QuestionAdaptiveOptionList.tsx
7065
- function $l({ children: e }) {
7149
+ function su({ children: e }) {
7066
7150
  let { renderer: t } = G(), n = m(null), [r, i] = h(1), o = { gridTemplateColumns: `repeat(${r}, minmax(0, 1fr))` };
7067
7151
  return f(() => {
7068
7152
  if (!n.current) return;
7069
7153
  let t = n.current, r = null;
7070
7154
  function a() {
7071
- let n = t.getBoundingClientRect().width, r = Number.parseFloat(getComputedStyle(t).columnGap) || 0, a = eu(t), o = Zl({
7155
+ let n = t.getBoundingClientRect().width, r = Number.parseFloat(getComputedStyle(t).columnGap) || 0, a = cu(t), o = nu({
7072
7156
  availableWidth: n,
7073
7157
  columnGap: r,
7074
7158
  optionCount: s.count(e),
@@ -7086,20 +7170,23 @@ function $l({ children: e }) {
7086
7170
  return c.observe(t), () => {
7087
7171
  r !== null && cancelAnimationFrame(r), t.removeEventListener("load", o, !0), c.disconnect();
7088
7172
  };
7089
- }), /* @__PURE__ */ a("ol", {
7090
- className: `${t["option-list"]} ${Ql.list}`,
7091
- "data-column-count": r,
7092
- "data-question-option-grid": "true",
7093
- ref: n,
7173
+ }), /* @__PURE__ */ a(au, {
7174
+ className: `${t["option-list"]} ${ru.list}`,
7175
+ columnCount: r,
7176
+ dataAttributes: { "data-question-option-grid": "true" },
7177
+ layoutRef: (e) => {
7178
+ n.current = e;
7179
+ },
7180
+ role: "list",
7094
7181
  style: o,
7095
7182
  children: e
7096
7183
  });
7097
7184
  }
7098
- function eu(e) {
7099
- let t = e.parentElement;
7100
- if (!t || e.children.length === 0) return 0;
7101
- let n = e.cloneNode(!1);
7102
- n.removeAttribute("style"), n.setAttribute("aria-hidden", "true"), n.setAttribute("data-question-option-measurement", "true"), Object.assign(n.style, {
7185
+ function cu(e) {
7186
+ let t = e.parentElement, n = lu(e);
7187
+ if (!t || n.length === 0) return 0;
7188
+ let r = e.ownerDocument.createElement("div");
7189
+ r.className = e.className, r.setAttribute("aria-hidden", "true"), r.setAttribute("data-question-option-measurement", "true"), Object.assign(r.style, {
7103
7190
  display: "grid",
7104
7191
  gridTemplateColumns: "max-content",
7105
7192
  left: "-100000px",
@@ -7108,29 +7195,32 @@ function eu(e) {
7108
7195
  position: "fixed",
7109
7196
  visibility: "hidden",
7110
7197
  width: "max-content"
7111
- }), Array.from(e.children).forEach((e) => {
7112
- n.append(e.cloneNode(!0));
7113
- }), t.append(n);
7114
- let r = n.getBoundingClientRect().width;
7115
- return n.remove(), r;
7198
+ }), n.forEach((e) => {
7199
+ r.append(e.cloneNode(!0));
7200
+ }), t.append(r);
7201
+ let i = r.getBoundingClientRect().width;
7202
+ return r.remove(), i;
7203
+ }
7204
+ function lu(e) {
7205
+ return e instanceof HTMLTableElement ? Array.from(e.rows).reduce((e, t) => [...e, ...Array.from(t.cells).reduce((e, t) => t.firstElementChild ? [...e, t.firstElementChild] : e, [])], []) : Array.from(e.children);
7116
7206
  }
7117
7207
  //#endregion
7118
7208
  //#region src/question/player/QuestionOptionGroupPlayer.tsx
7119
- function tu({ disabled: e, element: t, item: n, messages: r, onChange: i, response: s, responseIndex: c, showAnswer: l }) {
7209
+ function uu({ disabled: e, element: t, item: n, messages: r, onChange: i, response: s, responseIndex: c, showAnswer: l }) {
7120
7210
  let u = Zs(s, c), d = dn(n, t.config.optionLabelStyle);
7121
7211
  function f(e) {
7122
7212
  i(j(j({}, u), {}, { selectedOptionIds: uc(u.selectedOptionIds, e, t.config.selectionType) }));
7123
7213
  }
7124
7214
  if (t.config.renderer === "table") {
7125
- let i = Xl(t, n);
7215
+ let i = tu(t, n);
7126
7216
  return /* @__PURE__ */ o("div", {
7127
7217
  className: W.element,
7128
7218
  children: [/* @__PURE__ */ a("div", {
7129
- className: Jc["table-wrap"],
7219
+ className: ul["table-wrap"],
7130
7220
  children: /* @__PURE__ */ o("table", {
7131
- className: Jc.table,
7221
+ className: ul.table,
7132
7222
  children: [
7133
- /* @__PURE__ */ o("colgroup", { children: [/* @__PURE__ */ a("col", { className: Jc["table-option-column"] }), n.columns.map((e) => /* @__PURE__ */ a("col", {}, e.id))] }),
7223
+ /* @__PURE__ */ o("colgroup", { children: [/* @__PURE__ */ a("col", { className: ul["table-option-column"] }), n.columns.map((e) => /* @__PURE__ */ a("col", {}, e.id))] }),
7134
7224
  /* @__PURE__ */ a("thead", { children: /* @__PURE__ */ o("tr", { children: [/* @__PURE__ */ a("th", { children: r.option }), n.columns.map((e) => /* @__PURE__ */ a("th", { children: /* @__PURE__ */ a(q, { content: e.content }) }, e.id))] }) }),
7135
7225
  /* @__PURE__ */ a("tbody", { children: d.map((t) => {
7136
7226
  let n = u.selectedOptionIds.includes(t.optionId);
@@ -7166,10 +7256,10 @@ function tu({ disabled: e, element: t, item: n, messages: r, onChange: i, respon
7166
7256
  }) : null]
7167
7257
  });
7168
7258
  }
7169
- let p = Xl(t, n);
7259
+ let p = tu(t, n);
7170
7260
  return /* @__PURE__ */ o("div", {
7171
7261
  className: W.element,
7172
- children: [/* @__PURE__ */ a($l, { children: d.map((t) => {
7262
+ children: [/* @__PURE__ */ a(su, { children: d.map((t) => {
7173
7263
  let n = u.selectedOptionIds.includes(t.optionId);
7174
7264
  return /* @__PURE__ */ a("li", {
7175
7265
  className: U(W["option-item"], X["choice-option"], n && X.selected),
@@ -7195,7 +7285,7 @@ function tu({ disabled: e, element: t, item: n, messages: r, onChange: i, respon
7195
7285
  }
7196
7286
  //#endregion
7197
7287
  //#region src/question/renderers/orderingAnswerGroups.tsx
7198
- function nu(e) {
7288
+ function du(e) {
7199
7289
  let t = Ir(e.sortOptions);
7200
7290
  return e.answers.map((e) => {
7201
7291
  let n = t.get(e);
@@ -7208,7 +7298,7 @@ function nu(e) {
7208
7298
  }
7209
7299
  //#endregion
7210
7300
  //#region src/question/player/QuestionOrderingPlayer.tsx
7211
- function ru({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: s, showAnswer: c }) {
7301
+ function fu({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: s, showAnswer: c }) {
7212
7302
  let l = ac(i, s, t), u = Ir(t.sortOptions), d = l.orderedOptionIds.map((e) => u.get(e)).filter((e) => !!e);
7213
7303
  function f(e, n) {
7214
7304
  r(j(j({}, l), {}, { orderedOptionIds: hc(l.orderedOptionIds, t, e, n) }));
@@ -7246,14 +7336,14 @@ function ru({ disabled: e, item: t, messages: n, onChange: r, response: i, respo
7246
7336
  ]
7247
7337
  }, r.id))
7248
7338
  }), c ? /* @__PURE__ */ a(J, {
7249
- groups: nu(t),
7339
+ groups: du(t),
7250
7340
  title: n.standardAnswer
7251
7341
  }) : null]
7252
7342
  });
7253
7343
  }
7254
7344
  //#endregion
7255
7345
  //#region src/question/renderers/QuestionTextMarkerContent.tsx
7256
- function iu({ answerMarkers: e = [], content: t, disabled: n = !1, onMarkerClick: r, selectedMarkers: i = [], showAnswer: o = !1 }) {
7346
+ function pu({ answerMarkers: e = [], content: t, disabled: n = !1, onMarkerClick: r, selectedMarkers: i = [], showAnswer: o = !1 }) {
7257
7347
  let { textMarker: s } = G(), l = t.json.length ? t.json : [{
7258
7348
  children: [{ text: t.text }],
7259
7349
  type: "paragraph"
@@ -7263,8 +7353,8 @@ function iu({ answerMarkers: e = [], content: t, disabled: n = !1, onMarkerClick
7263
7353
  children: l.map((e, t) => u(e, `node-${t}`))
7264
7354
  });
7265
7355
  function u(e, t) {
7266
- if (ou(e)) return d(e, t);
7267
- if (!au(e)) return null;
7356
+ if (hu(e)) return d(e, t);
7357
+ if (!mu(e)) return null;
7268
7358
  let n = e.children.map((e, n) => u(e, `${t}-${n}`));
7269
7359
  return e.type === "paragraph" ? /* @__PURE__ */ a("p", {
7270
7360
  className: s.paragraph,
@@ -7307,17 +7397,17 @@ function iu({ answerMarkers: e = [], content: t, disabled: n = !1, onMarkerClick
7307
7397
  }, n);
7308
7398
  }
7309
7399
  }
7310
- function au(e) {
7400
+ function mu(e) {
7311
7401
  return !!(e && typeof e == "object" && "children" in e && Array.isArray(e.children));
7312
7402
  }
7313
- function ou(e) {
7403
+ function hu(e) {
7314
7404
  return !!(e && typeof e == "object" && "text" in e && typeof e.text == "string");
7315
7405
  }
7316
7406
  //#endregion
7317
7407
  //#region src/question/renderers/QuestionTextMarkerView.tsx
7318
- function su({ item: e, messages: t, showAnswer: n }) {
7408
+ function gu({ item: e, messages: t, showAnswer: n }) {
7319
7409
  let r = Et(e.content.json).filter((t) => e.answers.includes(t.markerId)).map((e) => e.text);
7320
- return /* @__PURE__ */ o(i, { children: [/* @__PURE__ */ a(iu, {
7410
+ return /* @__PURE__ */ o(i, { children: [/* @__PURE__ */ a(pu, {
7321
7411
  answerMarkers: e.answers,
7322
7412
  content: e.content,
7323
7413
  showAnswer: n
@@ -7332,13 +7422,13 @@ function su({ item: e, messages: t, showAnswer: n }) {
7332
7422
  }
7333
7423
  //#endregion
7334
7424
  //#region src/question/player/QuestionTextMarkerPlayer.tsx
7335
- function cu({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: o, showAnswer: s }) {
7425
+ function _u({ disabled: e, item: t, messages: n, onChange: r, response: i, responseIndex: o, showAnswer: s }) {
7336
7426
  let c = oc(i, o);
7337
- return s ? /* @__PURE__ */ a(su, {
7427
+ return s ? /* @__PURE__ */ a(gu, {
7338
7428
  item: t,
7339
7429
  messages: n,
7340
7430
  showAnswer: s
7341
- }) : /* @__PURE__ */ a(iu, {
7431
+ }) : /* @__PURE__ */ a(pu, {
7342
7432
  answerMarkers: t.answers,
7343
7433
  content: t.content,
7344
7434
  disabled: e,
@@ -7348,7 +7438,7 @@ function cu({ disabled: e, item: t, messages: n, onChange: r, response: i, respo
7348
7438
  }
7349
7439
  //#endregion
7350
7440
  //#region src/question/player/QuestionTextResponsePlayer.tsx
7351
- function lu({ disabled: e, locale: t, label: n, messages: r, onChange: i, response: o, responseIndex: s, uploadImage: c }) {
7441
+ function vu({ disabled: e, locale: t, label: n, messages: r, onChange: i, response: o, responseIndex: s, uploadImage: c }) {
7352
7442
  let l = sc(o, s);
7353
7443
  return e ? F(l.content) ? null : /* @__PURE__ */ a(q, { content: l.content }) : /* @__PURE__ */ a(La, {
7354
7444
  ariaLabel: n,
@@ -7365,7 +7455,7 @@ function lu({ disabled: e, locale: t, label: n, messages: r, onChange: i, respon
7365
7455
  }
7366
7456
  //#endregion
7367
7457
  //#region src/question/renderers/wordBuilderAnswers.tsx
7368
- function uu(e, t) {
7458
+ function yu(e, t) {
7369
7459
  return e.blanks.reduce((n, r) => {
7370
7460
  var i;
7371
7461
  let o = (i = e.answers[r]) == null ? void 0 : i.trim();
@@ -7378,14 +7468,14 @@ function uu(e, t) {
7378
7468
  }
7379
7469
  //#endregion
7380
7470
  //#region src/question/player/QuestionPlayerWordBuilder.module.css
7381
- var du = {
7471
+ var bu = {
7382
7472
  "word-builder-blank": "_word-builder-blank_ftw6q_1",
7383
7473
  "word-builder-candidate-list": "_word-builder-candidate-list_ftw6q_30"
7384
7474
  };
7385
7475
  //#endregion
7386
7476
  //#region src/question/player/QuestionWordBuilderPlayer.tsx
7387
- function fu({ disabled: e, element: t, item: n, messages: r, onChange: i, response: s, responseIndex: c, showAnswer: l }) {
7388
- let u = wn(n, !0, t), d = ec(s, c, u.blanks), f = uu(u, (e, t) => Ic(e, t, r.blankLabel));
7477
+ function xu({ disabled: e, element: t, item: n, messages: r, onChange: i, response: s, responseIndex: c, showAnswer: l }) {
7478
+ let u = wn(n, !0, t), d = ec(s, c, u.blanks), f = yu(u, (e, t) => Ic(e, t, r.blankLabel));
7389
7479
  function p(e, t) {
7390
7480
  i(j(j({}, d), {}, { answers: j(j({}, d.answers), {}, { [e]: t }) }));
7391
7481
  }
@@ -7413,11 +7503,11 @@ function fu({ disabled: e, element: t, item: n, messages: r, onChange: i, respon
7413
7503
  return /* @__PURE__ */ o("div", {
7414
7504
  className: K["fill-text"],
7415
7505
  children: [
7416
- /* @__PURE__ */ a(yl, {
7506
+ /* @__PURE__ */ a(Cl, {
7417
7507
  content: u.content,
7418
7508
  renderBlank: ({ blankId: t, index: n, label: i }) => {
7419
7509
  var o, s;
7420
- let c = (o = d.answers[t]) == null ? "" : o, l = pu({
7510
+ let c = (o = d.answers[t]) == null ? "" : o, l = Su({
7421
7511
  answers: c,
7422
7512
  blankLabel: r.blankLabel,
7423
7513
  canClear: !e && !!c.trim(),
@@ -7426,7 +7516,7 @@ function fu({ disabled: e, element: t, item: n, messages: r, onChange: i, respon
7426
7516
  });
7427
7517
  return /* @__PURE__ */ a("button", {
7428
7518
  "aria-label": l,
7429
- className: du["word-builder-blank"],
7519
+ className: bu["word-builder-blank"],
7430
7520
  disabled: e,
7431
7521
  onClick: () => m(t),
7432
7522
  onDragOver: (e) => e.preventDefault(),
@@ -7438,7 +7528,7 @@ function fu({ disabled: e, element: t, item: n, messages: r, onChange: i, respon
7438
7528
  }
7439
7529
  }),
7440
7530
  /* @__PURE__ */ a("div", {
7441
- className: du["word-builder-candidate-list"],
7531
+ className: bu["word-builder-candidate-list"],
7442
7532
  children: u.candidateOptions.map((t, n) => /* @__PURE__ */ a("button", {
7443
7533
  disabled: e,
7444
7534
  draggable: !e,
@@ -7457,15 +7547,15 @@ function fu({ disabled: e, element: t, item: n, messages: r, onChange: i, respon
7457
7547
  ]
7458
7548
  });
7459
7549
  }
7460
- function pu({ answers: e, blankLabel: t, canClear: n, index: r, label: i }) {
7550
+ function Su({ answers: e, blankLabel: t, canClear: n, index: r, label: i }) {
7461
7551
  let a = i || `${t}${r + 1}`;
7462
7552
  return !n || !e.trim() ? a : t === "\u7a7a" ? `${a}\uff0c\u70b9\u51fb\u6e05\u7a7a` : `${a}, click to clear`;
7463
7553
  }
7464
7554
  //#endregion
7465
7555
  //#region src/question/player/QuestionPlayerElement.tsx
7466
- function mu({ disabled: e, element: t, item: n, locale: r, messages: i, onResponseItemChange: o, response: s, responseIndex: c, showAnswer: l, uploadImage: u }) {
7556
+ function Cu({ disabled: e, element: t, item: n, locale: r, messages: i, onResponseItemChange: o, response: s, responseIndex: c, showAnswer: l, uploadImage: u }) {
7467
7557
  if (t.type !== n.type) throw Error(`\u9898\u76ee\u5143\u7d20\u7ed3\u6784\u4e0d\u5339\u914d\uff0cexpected=${t.type}\uff0cactual=${n.type}`);
7468
- return t.type === "richText" ? /* @__PURE__ */ a(q, { content: n.content }) : t.type === "textResponse" ? /* @__PURE__ */ a(lu, {
7558
+ return t.type === "richText" ? /* @__PURE__ */ a(q, { content: n.content }) : t.type === "textResponse" ? /* @__PURE__ */ a(vu, {
7469
7559
  disabled: e,
7470
7560
  label: t.name,
7471
7561
  locale: r,
@@ -7474,7 +7564,7 @@ function mu({ disabled: e, element: t, item: n, locale: r, messages: i, onRespon
7474
7564
  response: s,
7475
7565
  responseIndex: c,
7476
7566
  uploadImage: u
7477
- }) : t.type === "ordering" ? /* @__PURE__ */ a(ru, {
7567
+ }) : t.type === "ordering" ? /* @__PURE__ */ a(fu, {
7478
7568
  disabled: e,
7479
7569
  item: n,
7480
7570
  messages: i,
@@ -7482,7 +7572,7 @@ function mu({ disabled: e, element: t, item: n, locale: r, messages: i, onRespon
7482
7572
  response: s,
7483
7573
  responseIndex: c,
7484
7574
  showAnswer: l
7485
- }) : t.type === "classification" ? /* @__PURE__ */ a(gl, {
7575
+ }) : t.type === "classification" ? /* @__PURE__ */ a(bl, {
7486
7576
  disabled: e,
7487
7577
  item: n,
7488
7578
  messages: i,
@@ -7490,7 +7580,7 @@ function mu({ disabled: e, element: t, item: n, locale: r, messages: i, onRespon
7490
7580
  response: s,
7491
7581
  responseIndex: c,
7492
7582
  showAnswer: l
7493
- }) : t.type === "textMarker" ? /* @__PURE__ */ a(cu, {
7583
+ }) : t.type === "textMarker" ? /* @__PURE__ */ a(_u, {
7494
7584
  disabled: e,
7495
7585
  item: n,
7496
7586
  messages: i,
@@ -7498,7 +7588,7 @@ function mu({ disabled: e, element: t, item: n, locale: r, messages: i, onRespon
7498
7588
  response: s,
7499
7589
  responseIndex: c,
7500
7590
  showAnswer: l
7501
- }) : hu({
7591
+ }) : wu({
7502
7592
  disabled: e,
7503
7593
  element: t,
7504
7594
  item: n,
@@ -7511,9 +7601,9 @@ function mu({ disabled: e, element: t, item: n, locale: r, messages: i, onRespon
7511
7601
  uploadImage: u
7512
7602
  });
7513
7603
  }
7514
- function hu({ disabled: e, element: t, item: n, messages: r, onResponseItemChange: i, response: o, responseIndex: s, showAnswer: c }) {
7604
+ function wu({ disabled: e, element: t, item: n, messages: r, onResponseItemChange: i, response: o, responseIndex: s, showAnswer: c }) {
7515
7605
  switch (t.type) {
7516
- case "choice": return /* @__PURE__ */ a(tu, {
7606
+ case "choice": return /* @__PURE__ */ a(uu, {
7517
7607
  disabled: e,
7518
7608
  element: t,
7519
7609
  item: n,
@@ -7523,7 +7613,7 @@ function hu({ disabled: e, element: t, item: n, messages: r, onResponseItemChang
7523
7613
  responseIndex: s,
7524
7614
  showAnswer: c
7525
7615
  });
7526
- case "fill": return /* @__PURE__ */ a(fl, {
7616
+ case "fill": return /* @__PURE__ */ a(gl, {
7527
7617
  disabled: e,
7528
7618
  item: n,
7529
7619
  messages: r,
@@ -7532,7 +7622,7 @@ function hu({ disabled: e, element: t, item: n, messages: r, onResponseItemChang
7532
7622
  responseIndex: s,
7533
7623
  showAnswer: c
7534
7624
  });
7535
- case "inlineFill": return /* @__PURE__ */ a(Pl, {
7625
+ case "inlineFill": return /* @__PURE__ */ a(zl, {
7536
7626
  disabled: e,
7537
7627
  element: t,
7538
7628
  item: n,
@@ -7542,7 +7632,7 @@ function hu({ disabled: e, element: t, item: n, messages: r, onResponseItemChang
7542
7632
  responseIndex: s,
7543
7633
  showAnswer: c
7544
7634
  });
7545
- case "wordBuilder": return /* @__PURE__ */ a(fu, {
7635
+ case "wordBuilder": return /* @__PURE__ */ a(xu, {
7546
7636
  disabled: e,
7547
7637
  element: t,
7548
7638
  item: n,
@@ -7552,7 +7642,7 @@ function hu({ disabled: e, element: t, item: n, messages: r, onResponseItemChang
7552
7642
  responseIndex: s,
7553
7643
  showAnswer: c
7554
7644
  });
7555
- case "judgement": return /* @__PURE__ */ a(zl, {
7645
+ case "judgement": return /* @__PURE__ */ a(Wl, {
7556
7646
  disabled: e,
7557
7647
  element: t,
7558
7648
  item: n,
@@ -7562,7 +7652,7 @@ function hu({ disabled: e, element: t, item: n, messages: r, onResponseItemChang
7562
7652
  responseIndex: s,
7563
7653
  showAnswer: c
7564
7654
  });
7565
- case "lineConnect": return /* @__PURE__ */ a(Hl, {
7655
+ case "lineConnect": return /* @__PURE__ */ a(ql, {
7566
7656
  disabled: e,
7567
7657
  item: n,
7568
7658
  messages: r,
@@ -7571,7 +7661,7 @@ function hu({ disabled: e, element: t, item: n, messages: r, onResponseItemChang
7571
7661
  responseIndex: s,
7572
7662
  showAnswer: c
7573
7663
  });
7574
- case "matching": return /* @__PURE__ */ a(Jl, {
7664
+ case "matching": return /* @__PURE__ */ a($l, {
7575
7665
  disabled: e,
7576
7666
  item: n,
7577
7667
  messages: r,
@@ -7584,10 +7674,10 @@ function hu({ disabled: e, element: t, item: n, messages: r, onResponseItemChang
7584
7674
  }
7585
7675
  //#endregion
7586
7676
  //#region src/question/player/QuestionPlayer.tsx
7587
- var gu = ["locale"];
7588
- function _u(e) {
7589
- let { locale: t = "zh-CN" } = e, n = Ca(e, gu), r = ws(n.value, n.questionTypeTemplates), i = ks(n.response, r);
7590
- return /* @__PURE__ */ a(vu, j(j({}, n), {}, {
7677
+ var Tu = ["locale"];
7678
+ function Eu(e) {
7679
+ let { locale: t = "zh-CN" } = e, n = Ca(e, Tu), r = ws(n.value, n.questionTypeTemplates), i = ks(n.response, r);
7680
+ return /* @__PURE__ */ a(Du, j(j({}, n), {}, {
7591
7681
  childIndexPath: [],
7592
7682
  locale: t,
7593
7683
  messages: Fc(t),
@@ -7596,7 +7686,7 @@ function _u(e) {
7596
7686
  value: r
7597
7687
  }));
7598
7688
  }
7599
- function vu({ childIndexPath: e, className: t, disabled: n = !1, locale: r = "zh-CN", messages: i, onResponseChange: o, response: s, rootQuestionNumber: c, showAnswer: l = !1, showExtraAttributes: u = !1, questionTypeTemplates: d, uploadImage: f, value: p }) {
7689
+ function Du({ childIndexPath: e, className: t, disabled: n = !1, locale: r = "zh-CN", messages: i, onResponseChange: o, response: s, rootQuestionNumber: c, showAnswer: l = !1, showExtraAttributes: u = !1, questionTypeTemplates: d, uploadImage: f, value: p }) {
7600
7690
  let m = oa(d, p);
7601
7691
  if (!m) return /* @__PURE__ */ a("div", {
7602
7692
  className: U(K.root, t),
@@ -7605,7 +7695,7 @@ function vu({ childIndexPath: e, className: t, disabled: n = !1, locale: r = "zh
7605
7695
  children: i.missingQuestionTypeTemplate
7606
7696
  })
7607
7697
  });
7608
- let h = yu({
7698
+ let h = Ou({
7609
7699
  childIndexPath: e,
7610
7700
  disabled: n,
7611
7701
  locale: r,
@@ -7622,27 +7712,27 @@ function vu({ childIndexPath: e, className: t, disabled: n = !1, locale: r = "zh
7622
7712
  });
7623
7713
  return /* @__PURE__ */ a("div", {
7624
7714
  className: U(K.root, t),
7625
- children: Cu(m, p) ? /* @__PURE__ */ a("div", {
7715
+ children: Mu(m, p) ? /* @__PURE__ */ a("div", {
7626
7716
  className: K.empty,
7627
7717
  children: i.previewEmpty
7628
7718
  }) : h
7629
7719
  });
7630
7720
  }
7631
- function yu(e) {
7721
+ function Ou(e) {
7632
7722
  return /* @__PURE__ */ o(i, { children: [
7633
- bu(e),
7634
- Su(e),
7635
- xu(e)
7723
+ ku(e),
7724
+ ju(e),
7725
+ Au(e)
7636
7726
  ] });
7637
7727
  }
7638
- function bu({ disabled: e, locale: t, messages: n, onResponseChange: r, response: i, showAnswer: o, structure: s, uploadImage: c, value: l }) {
7728
+ function ku({ disabled: e, locale: t, messages: n, onResponseChange: r, response: i, showAnswer: o, structure: s, uploadImage: c, value: l }) {
7639
7729
  return s.elements.length === 0 ? null : /* @__PURE__ */ a("div", {
7640
7730
  className: K["element-list"],
7641
7731
  children: s.elements.map((u, d) => {
7642
7732
  let f = nn(l, d, u), p = s.elements.slice(0, d).filter((e) => e.type !== "richText").length;
7643
7733
  return /* @__PURE__ */ a("section", {
7644
7734
  className: K.element,
7645
- children: /* @__PURE__ */ a(mu, {
7735
+ children: /* @__PURE__ */ a(Cu, {
7646
7736
  disabled: e,
7647
7737
  element: u,
7648
7738
  item: f,
@@ -7658,17 +7748,17 @@ function bu({ disabled: e, locale: t, messages: n, onResponseChange: r, response
7658
7748
  })
7659
7749
  });
7660
7750
  }
7661
- function xu({ disabled: e, locale: t, messages: n, response: r, showExtraAttributes: i, structure: s, uploadImage: c, value: l }) {
7751
+ function Au({ disabled: e, locale: t, messages: n, response: r, showExtraAttributes: i, structure: s, uploadImage: c, value: l }) {
7662
7752
  return i ? /* @__PURE__ */ a("div", {
7663
7753
  className: K["element-list"],
7664
7754
  children: s.extras.map((i, s) => {
7665
7755
  let u = rn(l, s, i);
7666
7756
  return F(u.content) ? null : /* @__PURE__ */ o("section", {
7667
7757
  className: K.extra,
7668
- children: [/* @__PURE__ */ a(Xc, { children: i.name }), /* @__PURE__ */ a(mu, {
7758
+ children: [/* @__PURE__ */ a(fl, { children: i.name }), /* @__PURE__ */ a(Cu, {
7669
7759
  disabled: e,
7670
- element: wu(i),
7671
- item: Tu(u),
7760
+ element: Nu(i),
7761
+ item: Pu(u),
7672
7762
  locale: t,
7673
7763
  messages: n,
7674
7764
  onResponseItemChange: () => void 0,
@@ -7681,14 +7771,14 @@ function xu({ disabled: e, locale: t, messages: n, response: r, showExtraAttribu
7681
7771
  })
7682
7772
  }) : null;
7683
7773
  }
7684
- function Su({ childIndexPath: e, disabled: t, locale: n, messages: r, onResponseChange: i, response: o, rootQuestionNumber: s, showAnswer: c, showExtraAttributes: l, questionTypeTemplates: u, uploadImage: d, value: f }) {
7685
- return f.children.length === 0 ? null : /* @__PURE__ */ a(Zc, {
7774
+ function ju({ childIndexPath: e, disabled: t, locale: n, messages: r, onResponseChange: i, response: o, rootQuestionNumber: s, showAnswer: c, showExtraAttributes: l, questionTypeTemplates: u, uploadImage: d, value: f }) {
7775
+ return f.children.length === 0 ? null : /* @__PURE__ */ a(pl, {
7686
7776
  childIndexPath: e,
7687
7777
  disabled: t,
7688
7778
  messages: r,
7689
7779
  onChildResponseChange: (e, t) => i(lc(o, e, t)),
7690
7780
  response: o,
7691
- renderChild: (e, i, o, f) => /* @__PURE__ */ a(vu, {
7781
+ renderChild: (e, i, o, f) => /* @__PURE__ */ a(Du, {
7692
7782
  childIndexPath: f,
7693
7783
  disabled: t,
7694
7784
  locale: n,
@@ -7706,17 +7796,17 @@ function Su({ childIndexPath: e, disabled: t, locale: n, messages: r, onResponse
7706
7796
  value: f
7707
7797
  });
7708
7798
  }
7709
- function Cu(e, t) {
7799
+ function Mu(e, t) {
7710
7800
  return t.elements.length === 0 && t.extras.length === 0 && t.children.length === 0;
7711
7801
  }
7712
- function wu(e) {
7802
+ function Nu(e) {
7713
7803
  return {
7714
7804
  config: {},
7715
7805
  name: e.name,
7716
7806
  type: "richText"
7717
7807
  };
7718
7808
  }
7719
- function Tu(e) {
7809
+ function Pu(e) {
7720
7810
  return {
7721
7811
  content: e.content,
7722
7812
  type: "richText"
@@ -7724,7 +7814,7 @@ function Tu(e) {
7724
7814
  }
7725
7815
  //#endregion
7726
7816
  //#region src/question/shared/QuestionTextResponsePlaceholder.tsx
7727
- function Eu({ className: e = Wc.placeholder, label: t }) {
7817
+ function Fu({ className: e = ol.placeholder, label: t }) {
7728
7818
  return /* @__PURE__ */ a("div", {
7729
7819
  "aria-label": t,
7730
7820
  className: e
@@ -7732,17 +7822,17 @@ function Eu({ className: e = Wc.placeholder, label: t }) {
7732
7822
  }
7733
7823
  //#endregion
7734
7824
  //#region src/question/renderers/blankStandardAnswerGroups.tsx
7735
- function Du(e, t, n) {
7736
- return [...e].sort((e, n) => Ou(e.blankIds, t) - Ou(n.blankIds, t)).map((e, r) => ({
7825
+ function Iu(e, t, n) {
7826
+ return [...e].sort((e, n) => Lu(e.blankIds, t) - Lu(n.blankIds, t)).map((e, r) => ({
7737
7827
  kind: "detailed",
7738
- contents: ku(e.contents.filter((e) => !F(e)), n, r),
7739
- marker: il(e.blankIds, t, n)
7828
+ contents: Ru(e.contents.filter((e) => !F(e)), n, r),
7829
+ marker: Xc(e.blankIds, t, n)
7740
7830
  }));
7741
7831
  }
7742
- function Ou(e, t) {
7832
+ function Lu(e, t) {
7743
7833
  return Math.min(...e.map((e) => t.indexOf(e)));
7744
7834
  }
7745
- function ku(e, t, n) {
7835
+ function Ru(e, t, n) {
7746
7836
  let r = t === "zh-CN" ? "\uff1b" : "; ";
7747
7837
  return e.reduce((t, i, o) => [
7748
7838
  ...t,
@@ -7752,8 +7842,8 @@ function ku(e, t, n) {
7752
7842
  }
7753
7843
  //#endregion
7754
7844
  //#region src/question/renderers/QuestionBlankGroupView.tsx
7755
- function Au({ item: e, locale: t, messages: n, showAnswer: r }) {
7756
- let i = dl(), { blankGroup: s, renderer: c } = G(), l = Wn(e.answers, e.blanks), u = i.answerGroupLayout === "rows" ? Du(l.map((e) => ({
7845
+ function zu({ item: e, locale: t, messages: n, showAnswer: r }) {
7846
+ let i = il(), { blankGroup: s, renderer: c } = G(), l = Wn(e.answers, e.blanks), u = i.answerGroupLayout === "rows" ? Iu(l.map((e) => ({
7757
7847
  blankIds: e.blankIds,
7758
7848
  contents: e.answerPools
7759
7849
  })), e.blanks, t) : l.map((r, o) => ({
@@ -7763,35 +7853,38 @@ function Au({ item: e, locale: t, messages: n, showAnswer: r }) {
7763
7853
  }));
7764
7854
  return /* @__PURE__ */ o("div", {
7765
7855
  className: c.element,
7766
- children: [/* @__PURE__ */ a("ol", {
7856
+ children: [/* @__PURE__ */ a(au, {
7767
7857
  className: s["blank-list"],
7768
- children: e.blanks.map((e, r) => /* @__PURE__ */ a("li", {
7858
+ columnCount: Math.min(e.blanks.length, 4),
7859
+ role: "list",
7860
+ children: e.blanks.map((e, r) => /* @__PURE__ */ a(hl, {
7769
7861
  className: s["blank-item"],
7770
7862
  children: /* @__PURE__ */ a("span", {
7771
- "aria-label": i.blankPlaceholder === "answer-line" ? rl(r + 1, t) : void 0,
7863
+ "aria-label": i.blankPlaceholder === "answer-line" ? Yc(r + 1, t) : void 0,
7772
7864
  className: s["blank-field"],
7773
7865
  children: i.blankPlaceholder === "answer-line" ? null : `${n.blankLabel} ${r + 1}`
7774
7866
  })
7775
- }, ju(e, r)))
7867
+ }, Bu(e, r)))
7776
7868
  }), r ? /* @__PURE__ */ a(J, {
7777
7869
  groups: u,
7778
7870
  title: n.standardAnswer
7779
7871
  }) : null]
7780
7872
  });
7781
7873
  }
7782
- function ju(e, t) {
7874
+ function Bu(e, t) {
7783
7875
  return e || `blank-${t + 1}`;
7784
7876
  }
7785
7877
  //#endregion
7786
7878
  //#region src/question/renderers/QuestionClassificationView.tsx
7787
- function Mu({ item: e, messages: t, showAnswer: n }) {
7879
+ function Vu({ item: e, messages: t, showAnswer: n }) {
7788
7880
  let { classification: r, renderer: i } = G();
7789
7881
  return /* @__PURE__ */ o("div", {
7790
7882
  className: i.element,
7791
7883
  children: [/* @__PURE__ */ o("div", {
7792
7884
  className: r.board,
7793
- children: [/* @__PURE__ */ a("div", {
7885
+ children: [/* @__PURE__ */ a(au, {
7794
7886
  className: r.zones,
7887
+ columnCount: 2,
7795
7888
  children: e.categories.map((e) => /* @__PURE__ */ o("section", {
7796
7889
  className: r.zone,
7797
7890
  children: [/* @__PURE__ */ a("div", {
@@ -7802,23 +7895,24 @@ function Mu({ item: e, messages: t, showAnswer: n }) {
7802
7895
  children: t.unassigned
7803
7896
  })]
7804
7897
  }, e.id))
7805
- }), /* @__PURE__ */ a("section", {
7898
+ }), /* @__PURE__ */ a(au, {
7806
7899
  className: r.pool,
7900
+ columnCount: Math.min(e.items.length, 4),
7807
7901
  children: e.items.map((e) => /* @__PURE__ */ a("div", {
7808
7902
  className: r.item,
7809
7903
  children: /* @__PURE__ */ a(q, { content: e.content })
7810
7904
  }, e.id))
7811
7905
  })]
7812
7906
  }), n ? /* @__PURE__ */ a(J, {
7813
- groups: hl(e),
7907
+ groups: yl(e),
7814
7908
  title: t.standardAnswer
7815
7909
  }) : null]
7816
7910
  });
7817
7911
  }
7818
7912
  //#endregion
7819
7913
  //#region src/question/renderers/QuestionFillTextView.tsx
7820
- function Nu({ element: e, item: t, locale: n, messages: r, showAnswer: i }) {
7821
- let s = dl(), { renderer: c } = G(), l = Tn(t, e, !0), u = Hc(l), d = s.answerGroupLayout === "rows" ? Du(u, l.blanks, n) : u.map((e, t) => ({
7914
+ function Hu({ element: e, item: t, locale: n, messages: r, showAnswer: i }) {
7915
+ let s = il(), { renderer: c } = G(), l = Tn(t, e, !0), u = Hc(l), d = s.answerGroupLayout === "rows" ? Iu(u, l.blanks, n) : u.map((e, t) => ({
7822
7916
  kind: "detailed",
7823
7917
  contents: e.contents.map((e, n) => /* @__PURE__ */ a(q, { content: e }, `group-${t}-answer-${n}`)),
7824
7918
  marker: s.blankAnswerMarker(e.blankIds, l.blanks, n, r.blankLabel)
@@ -7827,7 +7921,7 @@ function Nu({ element: e, item: t, locale: n, messages: r, showAnswer: i }) {
7827
7921
  className: c.element,
7828
7922
  children: [
7829
7923
  /* @__PURE__ */ a(q, { content: l.content }),
7830
- Pu(l, r.candidateOptions, c, s.candidateLayout),
7924
+ Uu(l, r.candidateOptions, c, s.candidateLayout, s.markerSuffix),
7831
7925
  i ? /* @__PURE__ */ a(J, {
7832
7926
  groups: d,
7833
7927
  title: r.standardAnswer
@@ -7835,20 +7929,20 @@ function Nu({ element: e, item: t, locale: n, messages: r, showAnswer: i }) {
7835
7929
  ]
7836
7930
  });
7837
7931
  }
7838
- function Pu(e, t, n, r) {
7839
- var i, s;
7840
- let c = (i = e.candidateOptions) == null ? [] : i, l = (s = e.blankOptionGroups) == null ? [] : s;
7841
- return !c.length && !l.length ? null : r === "plain-list" ? /* @__PURE__ */ o("div", {
7932
+ function Uu(e, t, n, r, i) {
7933
+ var s, c;
7934
+ let l = (s = e.candidateOptions) == null ? [] : s, u = (c = e.blankOptionGroups) == null ? [] : c;
7935
+ return !l.length && !u.length ? null : r === "plain-list" ? /* @__PURE__ */ o("div", {
7842
7936
  className: n["candidate-section"],
7843
7937
  children: [/* @__PURE__ */ a("span", {
7844
7938
  className: n["section-title"],
7845
7939
  children: t
7846
- }), /* @__PURE__ */ o("ol", {
7940
+ }), /* @__PURE__ */ o(ml, {
7847
7941
  className: n["candidate-list"],
7848
- children: [c.map((e) => /* @__PURE__ */ a("li", {
7942
+ children: [l.map((e) => /* @__PURE__ */ a(hl, {
7849
7943
  className: n["candidate-item"],
7850
7944
  children: /* @__PURE__ */ a(q, { content: e.content })
7851
- }, e.optionId)), l.reduce((e, t) => [...e, ...t.options.map((e) => /* @__PURE__ */ a("li", {
7945
+ }, e.optionId)), u.reduce((e, t) => [...e, ...t.options.map((e) => /* @__PURE__ */ a(hl, {
7852
7946
  className: n["candidate-item"],
7853
7947
  children: /* @__PURE__ */ a(q, { content: e.content })
7854
7948
  }, `${t.blankId}-${e.optionId}`))], [])]
@@ -7858,21 +7952,21 @@ function Pu(e, t, n, r) {
7858
7952
  children: [/* @__PURE__ */ a("span", {
7859
7953
  className: n["section-title"],
7860
7954
  children: t
7861
- }), c.length > 0 ? /* @__PURE__ */ a($l, { children: c.map((e, t) => /* @__PURE__ */ o("li", {
7955
+ }), l.length > 0 ? /* @__PURE__ */ a(su, { children: l.map((e, t) => /* @__PURE__ */ o(hl, {
7862
7956
  className: n["candidate-item"],
7863
7957
  children: [/* @__PURE__ */ o("span", {
7864
7958
  className: n.marker,
7865
- children: [an("upperAlpha", t), "."]
7959
+ children: [an("upperAlpha", t), i]
7866
7960
  }), /* @__PURE__ */ a(q, { content: e.content })]
7867
- }, e.optionId)) }) : /* @__PURE__ */ a("ol", {
7961
+ }, e.optionId)) }) : /* @__PURE__ */ a(ml, {
7868
7962
  className: n["candidate-list"],
7869
- "data-candidate-layout": "per-blank",
7870
- children: l.map((e, t) => /* @__PURE__ */ o("li", {
7963
+ dataCandidateLayout: "per-blank",
7964
+ children: u.map((e, t) => /* @__PURE__ */ o(hl, {
7871
7965
  className: n["candidate-item"],
7872
7966
  children: [/* @__PURE__ */ o("span", {
7873
7967
  className: n.marker,
7874
- children: [t + 1, "."]
7875
- }), /* @__PURE__ */ a($l, { children: e.options.map((e) => /* @__PURE__ */ a("li", {
7968
+ children: [t + 1, i]
7969
+ }), /* @__PURE__ */ a(su, { children: e.options.map((e) => /* @__PURE__ */ a(hl, {
7876
7970
  className: n["candidate-item"],
7877
7971
  children: /* @__PURE__ */ a(q, { content: e.content })
7878
7972
  }, e.optionId)) })]
@@ -7882,7 +7976,7 @@ function Pu(e, t, n, r) {
7882
7976
  }
7883
7977
  //#endregion
7884
7978
  //#region src/question/renderers/QuestionJudgementGroupView.tsx
7885
- function Fu({ element: e, item: t, messages: n, showAnswer: r, stem: i }) {
7979
+ function Wu({ element: e, item: t, messages: n, showAnswer: r, stem: i }) {
7886
7980
  let { renderer: s } = G(), c = ln(e.config.judgeAnswerMode), l = [{
7887
7981
  kind: "detailed",
7888
7982
  contents: un(e.config.judgeAnswerMode, t.answers),
@@ -7899,9 +7993,11 @@ function Fu({ element: e, item: t, messages: n, showAnswer: r, stem: i }) {
7899
7993
  className: s["judgement-placeholder"],
7900
7994
  children: "\uff08\u3000\uff09"
7901
7995
  })]
7902
- }) : /* @__PURE__ */ a("ol", {
7996
+ }) : /* @__PURE__ */ a(au, {
7903
7997
  className: s["judgement-list"],
7904
- children: c.map(({ label: e, value: t }) => /* @__PURE__ */ a("li", {
7998
+ columnCount: 2,
7999
+ role: "list",
8000
+ children: c.map(({ label: e, value: t }) => /* @__PURE__ */ a(hl, {
7905
8001
  className: s["judgement-item"],
7906
8002
  children: e
7907
8003
  }, String(t)))
@@ -7913,30 +8009,31 @@ function Fu({ element: e, item: t, messages: n, showAnswer: r, stem: i }) {
7913
8009
  }
7914
8010
  //#endregion
7915
8011
  //#region src/question/renderers/QuestionLineConnectView.tsx
7916
- function Iu({ item: e, messages: t, showAnswer: n }) {
7917
- let { lineConnectColumnTitleVisibility: r } = dl(), { lineConnect: i, renderer: s } = G(), c = { gridTemplateColumns: `repeat(${e.columns.length}, minmax(12rem, 1fr))` };
8012
+ function Gu({ item: e, messages: t, showAnswer: n }) {
8013
+ let { lineConnectColumnTitleVisibility: r, markerSuffix: i } = il(), { lineConnect: s, renderer: c } = G();
7918
8014
  return /* @__PURE__ */ o("div", {
7919
- className: s.element,
8015
+ className: c.element,
7920
8016
  children: [/* @__PURE__ */ a("div", {
7921
- className: i.board,
7922
- children: /* @__PURE__ */ a("div", {
7923
- className: i.columns,
7924
- style: c,
8017
+ className: s.board,
8018
+ children: /* @__PURE__ */ a(au, {
8019
+ className: s.columns,
8020
+ columnCount: e.columns.length,
8021
+ style: { gridTemplateColumns: `repeat(${e.columns.length}, minmax(12rem, 1fr))` },
7925
8022
  children: e.columns.map((e, n) => {
7926
- let s = `${t.tableColumn} ${n + 1}`;
8023
+ let c = `${t.tableColumn} ${n + 1}`;
7927
8024
  return /* @__PURE__ */ o("section", {
7928
- "aria-label": r === "accessible-only" ? s : void 0,
7929
- className: i.column,
8025
+ "aria-label": r === "accessible-only" ? c : void 0,
8026
+ className: s.column,
7930
8027
  children: [r === "visible" ? /* @__PURE__ */ a("span", {
7931
- className: i["column-title"],
7932
- children: s
8028
+ className: s["column-title"],
8029
+ children: c
7933
8030
  }) : null, e.items.map((t, n) => {
7934
8031
  let r = on(e.labelStyle, n);
7935
8032
  return /* @__PURE__ */ o("div", {
7936
- className: i.item,
7937
- children: [r ? /* @__PURE__ */ a("span", {
7938
- className: i.marker,
7939
- children: r
8033
+ className: s.item,
8034
+ children: [r ? /* @__PURE__ */ o("span", {
8035
+ className: s.marker,
8036
+ children: [r, i]
7940
8037
  }) : null, /* @__PURE__ */ a(q, { content: t.content })]
7941
8038
  }, t.itemId);
7942
8039
  })]
@@ -7944,79 +8041,80 @@ function Iu({ item: e, messages: t, showAnswer: n }) {
7944
8041
  })
7945
8042
  })
7946
8043
  }), n ? /* @__PURE__ */ a(J, {
7947
- groups: Bl(e),
8044
+ groups: Gl(e),
7948
8045
  title: t.standardAnswer
7949
8046
  }) : null]
7950
8047
  });
7951
8048
  }
7952
8049
  //#endregion
7953
8050
  //#region src/question/renderers/QuestionMatchingView.tsx
7954
- function Lu({ item: e, messages: t, showAnswer: n }) {
7955
- let { matchingAnswerLayout: r } = dl(), { matching: i, renderer: s } = G();
8051
+ function Ku({ item: e, messages: t, showAnswer: n }) {
8052
+ let { markerSuffix: r, matchingAnswerLayout: i } = il(), { matching: s, renderer: c } = G();
7956
8053
  return /* @__PURE__ */ o("div", {
7957
- className: s.element,
8054
+ className: c.element,
7958
8055
  children: [/* @__PURE__ */ a("div", {
7959
- className: i.board,
7960
- children: /* @__PURE__ */ a("div", {
7961
- className: i.columns,
8056
+ className: s.board,
8057
+ children: /* @__PURE__ */ a(au, {
8058
+ className: s.columns,
8059
+ columnCount: e.columns.length,
7962
8060
  children: e.columns.map((e) => /* @__PURE__ */ a("section", {
7963
- className: i.column,
8061
+ className: s.column,
7964
8062
  children: e.items.map((t, n) => {
7965
- let r = sn(e.labelStyle, n);
8063
+ let i = sn(e.labelStyle, n);
7966
8064
  return /* @__PURE__ */ o("div", {
7967
- className: i.item,
7968
- children: [r ? /* @__PURE__ */ a("span", {
7969
- className: i.marker,
7970
- children: r
8065
+ className: s.item,
8066
+ children: [i ? /* @__PURE__ */ o("span", {
8067
+ className: s.marker,
8068
+ children: [i, r]
7971
8069
  }) : null, /* @__PURE__ */ a(q, { content: t.content })]
7972
8070
  }, t.itemId);
7973
8071
  })
7974
8072
  }, e.columnId))
7975
8073
  })
7976
8074
  }), n ? /* @__PURE__ */ a(J, {
7977
- groups: r === "marker-path" ? Gl(e) : Wl(e),
8075
+ groups: i === "marker-path" ? Xl(e) : Yl(e),
7978
8076
  title: t.standardAnswer
7979
8077
  }) : null]
7980
8078
  });
7981
8079
  }
7982
8080
  //#endregion
7983
8081
  //#region src/question/renderers/QuestionOptionGroupView.tsx
7984
- function Ru({ element: e, item: t, locale: n, messages: r, showAnswer: i }) {
7985
- let { optionStandardAnswer: s } = dl(), { renderer: c, table: l } = G(), u = dn(t, e.config.optionLabelStyle), d = Xl(e, t), f = s === "value-only" ? zu(d.map((e) => e.marker), n) : d;
8082
+ function qu({ element: e, item: t, locale: n, messages: r, showAnswer: i }) {
8083
+ let { markerSuffix: s, optionStandardAnswer: c } = il(), { renderer: l, table: u } = G(), d = dn(t, e.config.optionLabelStyle), f = tu(e, t), p = c === "value-only" ? Ju(f.map((e) => e.marker), n) : f;
7986
8084
  return e.config.renderer === "table" ? /* @__PURE__ */ o("div", {
7987
- className: c.element,
8085
+ className: l.element,
7988
8086
  children: [/* @__PURE__ */ a("div", {
7989
- className: l["table-wrap"],
8087
+ className: u["table-wrap"],
7990
8088
  children: /* @__PURE__ */ o("table", {
7991
- className: l.table,
8089
+ className: u.table,
7992
8090
  children: [
7993
- /* @__PURE__ */ o("colgroup", { children: [/* @__PURE__ */ a("col", { className: l["table-option-column"] }), t.columns.map((e) => /* @__PURE__ */ a("col", {}, e.id))] }),
8091
+ /* @__PURE__ */ o("colgroup", { children: [/* @__PURE__ */ a("col", { className: u["table-option-column"] }), t.columns.map((e) => /* @__PURE__ */ a("col", {}, e.id))] }),
7994
8092
  /* @__PURE__ */ a("thead", { children: /* @__PURE__ */ o("tr", { children: [/* @__PURE__ */ a("th", { children: r.option }), t.columns.map((e) => /* @__PURE__ */ a("th", { children: /* @__PURE__ */ a(q, { content: e.content }) }, e.id))] }) }),
7995
- /* @__PURE__ */ a("tbody", { children: u.map((e) => /* @__PURE__ */ o("tr", { children: [/* @__PURE__ */ a("td", { children: /* @__PURE__ */ a("span", {
7996
- className: l["table-option-marker"],
7997
- children: e.marker
8093
+ /* @__PURE__ */ a("tbody", { children: d.map((e) => /* @__PURE__ */ o("tr", { children: [/* @__PURE__ */ a("td", { children: /* @__PURE__ */ o("span", {
8094
+ className: u["table-option-marker"],
8095
+ children: [e.marker, s]
7998
8096
  }) }), e.cells.map((t, n) => /* @__PURE__ */ a("td", { children: /* @__PURE__ */ a(q, { content: t }) }, `${e.optionId}-cell-${n}`))] }, e.optionId)) })
7999
8097
  ]
8000
8098
  })
8001
8099
  }), i ? /* @__PURE__ */ a(J, {
8002
- groups: f,
8100
+ groups: p,
8003
8101
  title: r.standardAnswer
8004
8102
  }) : null]
8005
8103
  }) : /* @__PURE__ */ o("div", {
8006
- className: c.element,
8007
- children: [/* @__PURE__ */ a($l, { children: u.map((e) => /* @__PURE__ */ o("li", {
8008
- className: c["option-item"],
8009
- children: [/* @__PURE__ */ a("span", {
8010
- className: c.marker,
8011
- children: e.marker
8104
+ className: l.element,
8105
+ children: [/* @__PURE__ */ a(su, { children: d.map((e) => /* @__PURE__ */ o(hl, {
8106
+ className: l["option-item"],
8107
+ children: [/* @__PURE__ */ o("span", {
8108
+ className: l.marker,
8109
+ children: [e.marker, s]
8012
8110
  }), /* @__PURE__ */ a(q, { content: e.standardContent })]
8013
8111
  }, e.optionId)) }), i ? /* @__PURE__ */ a(J, {
8014
- groups: f,
8112
+ groups: p,
8015
8113
  title: r.standardAnswer
8016
8114
  }) : null]
8017
8115
  });
8018
8116
  }
8019
- function zu(e, t) {
8117
+ function Ju(e, t) {
8020
8118
  let n = e.filter(Boolean).join(t === "zh-CN" ? "\uff1b" : "; ");
8021
8119
  return n ? [{
8022
8120
  contents: [n],
@@ -8026,36 +8124,36 @@ function zu(e, t) {
8026
8124
  }
8027
8125
  //#endregion
8028
8126
  //#region src/question/renderers/QuestionOrderingView.tsx
8029
- function Bu({ item: e, messages: t, showAnswer: n }) {
8030
- let { renderer: r } = G();
8127
+ function Yu({ item: e, messages: t, showAnswer: n }) {
8128
+ let { markerSuffix: r } = il(), { renderer: i } = G();
8031
8129
  return /* @__PURE__ */ o("div", {
8032
- className: r.element,
8033
- children: [/* @__PURE__ */ a("ol", {
8034
- className: r["option-list"],
8035
- children: e.sortOptions.map((e, t) => /* @__PURE__ */ o("li", {
8036
- className: r["option-item"],
8037
- children: [/* @__PURE__ */ a("span", {
8038
- className: r.marker,
8039
- children: t + 1
8130
+ className: i.element,
8131
+ children: [/* @__PURE__ */ a(ml, {
8132
+ className: i["option-list"],
8133
+ children: e.sortOptions.map((e, t) => /* @__PURE__ */ o(hl, {
8134
+ className: i["option-item"],
8135
+ children: [/* @__PURE__ */ o("span", {
8136
+ className: i.marker,
8137
+ children: [t + 1, r]
8040
8138
  }), /* @__PURE__ */ a(q, { content: e.content })]
8041
8139
  }, e.id))
8042
8140
  }), n ? /* @__PURE__ */ a(J, {
8043
- groups: nu(e),
8141
+ groups: du(e),
8044
8142
  title: t.standardAnswer
8045
8143
  }) : null]
8046
8144
  });
8047
8145
  }
8048
8146
  //#endregion
8049
8147
  //#region src/question/renderers/QuestionWordBuilderView.tsx
8050
- function Vu({ element: e, item: t, locale: n, messages: r, showAnswer: i }) {
8051
- let s = dl(), { renderer: c } = G(), l = wn(t, !0, e), u = uu(l, (e, t) => s.blankAnswerMarker(e, t, n, r.blankLabel));
8148
+ function Xu({ element: e, item: t, locale: n, messages: r, showAnswer: i }) {
8149
+ let s = il(), { renderer: c } = G(), l = wn(t, !0, e), u = yu(l, (e, t) => s.blankAnswerMarker(e, t, n, r.blankLabel));
8052
8150
  return /* @__PURE__ */ o("div", {
8053
8151
  className: c.element,
8054
8152
  children: [
8055
- /* @__PURE__ */ a(yl, {
8153
+ /* @__PURE__ */ a(Cl, {
8056
8154
  content: l.content,
8057
8155
  renderBlank: ({ blankId: e, index: t, label: i }) => /* @__PURE__ */ a("span", {
8058
- "aria-label": s.blankPlaceholder === "answer-line" ? rl(t + 1, n) : i || `${r.blankLabel}${t + 1}`,
8156
+ "aria-label": s.blankPlaceholder === "answer-line" ? Yc(t + 1, n) : i || `${r.blankLabel}${t + 1}`,
8059
8157
  className: c["word-builder-blank"],
8060
8158
  "data-blank-id": e
8061
8159
  })
@@ -8065,9 +8163,11 @@ function Vu({ element: e, item: t, locale: n, messages: r, showAnswer: i }) {
8065
8163
  children: [/* @__PURE__ */ a("span", {
8066
8164
  className: c["section-title"],
8067
8165
  children: r.candidateOptions
8068
- }), /* @__PURE__ */ a("ol", {
8166
+ }), /* @__PURE__ */ a(au, {
8069
8167
  className: c["word-builder-candidate-list"],
8070
- children: l.candidateOptions.map((e, t) => /* @__PURE__ */ a("li", {
8168
+ columnCount: Math.min(l.candidateOptions.length, 4),
8169
+ role: "list",
8170
+ children: l.candidateOptions.map((e, t) => /* @__PURE__ */ a(hl, {
8071
8171
  className: c["candidate-item"],
8072
8172
  children: e
8073
8173
  }, `${e}-${t}`))
@@ -8082,25 +8182,25 @@ function Vu({ element: e, item: t, locale: n, messages: r, showAnswer: i }) {
8082
8182
  }
8083
8183
  //#endregion
8084
8184
  //#region src/question/renderers/QuestionContentElementView.tsx
8085
- function Hu({ element: e, item: t, judgementStem: n, locale: r, messages: i, showAnswer: o }) {
8086
- let { textResponseVisibility: s } = dl(), { textResponse: c } = G();
8185
+ function Zu({ element: e, item: t, judgementStem: n, locale: r, messages: i, showAnswer: o }) {
8186
+ let { textResponseVisibility: s } = il(), { textResponse: c } = G();
8087
8187
  if (e.type !== t.type) throw Error(`\u9898\u76ee\u5143\u7d20\u7ed3\u6784\u4e0d\u5339\u914d\uff0cexpected=${e.type}\uff0cactual=${t.type}`);
8088
- return e.type === "richText" ? /* @__PURE__ */ a(q, { content: t.content }) : e.type === "textResponse" ? s === "hidden" ? null : /* @__PURE__ */ a(Eu, {
8188
+ return e.type === "richText" ? /* @__PURE__ */ a(q, { content: t.content }) : e.type === "textResponse" ? s === "hidden" ? null : /* @__PURE__ */ a(Fu, {
8089
8189
  className: c.placeholder,
8090
8190
  label: i.textResponsePlaceholder
8091
- }) : e.type === "ordering" ? /* @__PURE__ */ a(Bu, {
8191
+ }) : e.type === "ordering" ? /* @__PURE__ */ a(Yu, {
8092
8192
  item: t,
8093
8193
  messages: i,
8094
8194
  showAnswer: o
8095
- }) : e.type === "classification" ? /* @__PURE__ */ a(Mu, {
8195
+ }) : e.type === "classification" ? /* @__PURE__ */ a(Vu, {
8096
8196
  item: t,
8097
8197
  messages: i,
8098
8198
  showAnswer: o
8099
- }) : e.type === "textMarker" ? /* @__PURE__ */ a(su, {
8199
+ }) : e.type === "textMarker" ? /* @__PURE__ */ a(gu, {
8100
8200
  item: t,
8101
8201
  messages: i,
8102
8202
  showAnswer: o
8103
- }) : Uu({
8203
+ }) : Qu({
8104
8204
  element: e,
8105
8205
  item: t,
8106
8206
  judgementStem: n,
@@ -8109,48 +8209,48 @@ function Hu({ element: e, item: t, judgementStem: n, locale: r, messages: i, sho
8109
8209
  showAnswer: o
8110
8210
  });
8111
8211
  }
8112
- function Uu({ element: e, item: t, judgementStem: n, locale: r, messages: i, showAnswer: o }) {
8212
+ function Qu({ element: e, item: t, judgementStem: n, locale: r, messages: i, showAnswer: o }) {
8113
8213
  switch (e.type) {
8114
- case "choice": return /* @__PURE__ */ a(Ru, {
8214
+ case "choice": return /* @__PURE__ */ a(qu, {
8115
8215
  element: e,
8116
8216
  item: t,
8117
8217
  locale: r,
8118
8218
  messages: i,
8119
8219
  showAnswer: o
8120
8220
  });
8121
- case "fill": return /* @__PURE__ */ a(Au, {
8221
+ case "fill": return /* @__PURE__ */ a(zu, {
8122
8222
  item: t,
8123
8223
  locale: r,
8124
8224
  messages: i,
8125
8225
  showAnswer: o
8126
8226
  });
8127
- case "inlineFill": return /* @__PURE__ */ a(Nu, {
8227
+ case "inlineFill": return /* @__PURE__ */ a(Hu, {
8128
8228
  element: e,
8129
8229
  item: t,
8130
8230
  locale: r,
8131
8231
  messages: i,
8132
8232
  showAnswer: o
8133
8233
  });
8134
- case "wordBuilder": return /* @__PURE__ */ a(Vu, {
8234
+ case "wordBuilder": return /* @__PURE__ */ a(Xu, {
8135
8235
  element: e,
8136
8236
  item: t,
8137
8237
  locale: r,
8138
8238
  messages: i,
8139
8239
  showAnswer: o
8140
8240
  });
8141
- case "judgement": return /* @__PURE__ */ a(Fu, {
8241
+ case "judgement": return /* @__PURE__ */ a(Wu, {
8142
8242
  element: e,
8143
8243
  item: t,
8144
8244
  stem: n,
8145
8245
  messages: i,
8146
8246
  showAnswer: o
8147
8247
  });
8148
- case "lineConnect": return /* @__PURE__ */ a(Iu, {
8248
+ case "lineConnect": return /* @__PURE__ */ a(Gu, {
8149
8249
  item: t,
8150
8250
  messages: i,
8151
8251
  showAnswer: o
8152
8252
  });
8153
- case "matching": return /* @__PURE__ */ a(Lu, {
8253
+ case "matching": return /* @__PURE__ */ a(Ku, {
8154
8254
  item: t,
8155
8255
  messages: i,
8156
8256
  showAnswer: o
@@ -8159,7 +8259,7 @@ function Uu({ element: e, item: t, judgementStem: n, locale: r, messages: i, sho
8159
8259
  }
8160
8260
  //#endregion
8161
8261
  //#region src/question/preview/question-preview-layout.ts
8162
- var Wu = l({
8262
+ var $u = l({
8163
8263
  root: "_root_13x11_1",
8164
8264
  empty: "_empty_13x11_17",
8165
8265
  "element-list": "_element-list_13x11_29",
@@ -8168,13 +8268,13 @@ var Wu = l({
8168
8268
  extra: "_extra_13x11_40",
8169
8269
  child: "_child_13x11_30"
8170
8270
  });
8171
- function Gu() {
8172
- return d(Wu);
8271
+ function ed() {
8272
+ return d($u);
8173
8273
  }
8174
8274
  //#endregion
8175
8275
  //#region src/question/preview/QuestionCompositePreview.tsx
8176
- function Ku({ childIndexPath: e = [], messages: t, renderChild: n, rootQuestionNumber: r, value: i }) {
8177
- let o = Gu();
8276
+ function td({ childIndexPath: e = [], messages: t, renderChild: n, rootQuestionNumber: r, value: i }) {
8277
+ let o = ed();
8178
8278
  return i.children.length === 0 ? /* @__PURE__ */ a("div", {
8179
8279
  className: o.empty,
8180
8280
  children: t.previewEmpty
@@ -8195,18 +8295,21 @@ function Ku({ childIndexPath: e = [], messages: t, renderChild: n, rootQuestionN
8195
8295
  }
8196
8296
  //#endregion
8197
8297
  //#region src/question/preview/QuestionPreviewContent.tsx
8198
- var qu = ["locale"];
8199
- function Ju(e) {
8200
- let { locale: t = "zh-CN" } = e, n = Ca(e, qu), r = ws(n.value, n.questionTypeTemplates);
8201
- return /* @__PURE__ */ a(Yu, j(j({}, n), {}, {
8202
- childIndexPath: [],
8203
- locale: t,
8204
- messages: Fc(t),
8205
- value: r
8206
- }));
8298
+ var nd = ["locale"];
8299
+ function rd(e) {
8300
+ let { locale: t = "zh-CN" } = e, n = Ca(e, nd), r = ws(n.value, n.questionTypeTemplates);
8301
+ return /* @__PURE__ */ a(rl.Provider, {
8302
+ value: t,
8303
+ children: /* @__PURE__ */ a(id, j(j({}, n), {}, {
8304
+ childIndexPath: [],
8305
+ locale: t,
8306
+ messages: Fc(t),
8307
+ value: r
8308
+ }))
8309
+ });
8207
8310
  }
8208
- function Yu({ childIndexPath: e, className: t, locale: n, messages: r, presentation: s, rootQuestionNumber: c, showAnswer: l = !1, showExtraAttributes: u = !1, questionTypeTemplates: d, value: f }) {
8209
- let p = Gu(), m = oa(d, f);
8311
+ function id({ childIndexPath: e, className: t, locale: n, messages: r, presentation: s, rootQuestionNumber: c, showAnswer: l = !1, showExtraAttributes: u = !1, questionTypeTemplates: d, value: f }) {
8312
+ let p = ed(), m = oa(d, f);
8210
8313
  if (!m) return /* @__PURE__ */ a("div", {
8211
8314
  className: U(p.root, t),
8212
8315
  "data-locale": n,
@@ -8220,11 +8323,11 @@ function Yu({ childIndexPath: e, className: t, locale: n, messages: r, presentat
8220
8323
  className: p["element-list"],
8221
8324
  children: m.elements.map((e, t) => {
8222
8325
  var i;
8223
- if (s === "print" && e.type === "richText" && ((i = Zu(m.elements, t + 1)) == null ? void 0 : i.type) === "judgement") return null;
8224
- let o = nn(f, t, e), c = s === "print" ? Xu(m, f, t) : void 0;
8326
+ if (s === "print" && e.type === "richText" && ((i = od(m.elements, t + 1)) == null ? void 0 : i.type) === "judgement") return null;
8327
+ let o = nn(f, t, e), c = s === "print" ? ad(m, f, t) : void 0;
8225
8328
  return /* @__PURE__ */ a("section", {
8226
8329
  className: p.element,
8227
- children: /* @__PURE__ */ a(Hu, {
8330
+ children: /* @__PURE__ */ a(Zu, {
8228
8331
  element: e,
8229
8332
  item: o,
8230
8333
  judgementStem: c,
@@ -8240,19 +8343,19 @@ function Yu({ childIndexPath: e, className: t, locale: n, messages: r, presentat
8240
8343
  let i = rn(f, t, e);
8241
8344
  return F(i.content) ? null : /* @__PURE__ */ o("section", {
8242
8345
  className: p.extra,
8243
- children: [/* @__PURE__ */ a(Xc, { children: e.name }), /* @__PURE__ */ a(Hu, {
8244
- element: $u(e),
8245
- item: ed(i),
8346
+ children: [/* @__PURE__ */ a(fl, { children: e.name }), /* @__PURE__ */ a(Zu, {
8347
+ element: cd(e),
8348
+ item: ld(i),
8246
8349
  locale: n,
8247
8350
  messages: r,
8248
8351
  showAnswer: !1
8249
8352
  })]
8250
8353
  }, `${e.type}-${t}`);
8251
8354
  })
8252
- }) : null, _ = f.children.length === 0 ? null : /* @__PURE__ */ a(Ku, {
8355
+ }) : null, _ = f.children.length === 0 ? null : /* @__PURE__ */ a(td, {
8253
8356
  childIndexPath: e,
8254
8357
  messages: r,
8255
- renderChild: (e, t) => /* @__PURE__ */ a(Yu, {
8358
+ renderChild: (e, t) => /* @__PURE__ */ a(id, {
8256
8359
  childIndexPath: t,
8257
8360
  locale: n,
8258
8361
  messages: r,
@@ -8270,7 +8373,7 @@ function Yu({ childIndexPath: e, className: t, locale: n, messages: r, presentat
8270
8373
  className: U(p.root, t),
8271
8374
  "data-locale": n,
8272
8375
  "data-question-presentation": s,
8273
- children: Qu(m, f) ? /* @__PURE__ */ a("div", {
8376
+ children: sd(m, f) ? /* @__PURE__ */ a("div", {
8274
8377
  className: p.empty,
8275
8378
  children: r.previewEmpty
8276
8379
  }) : /* @__PURE__ */ o(i, { children: [
@@ -8280,24 +8383,24 @@ function Yu({ childIndexPath: e, className: t, locale: n, messages: r, presentat
8280
8383
  ] })
8281
8384
  });
8282
8385
  }
8283
- function Xu(e, t, n) {
8284
- let r = Zu(e.elements, n), i = Zu(e.elements, n - 1);
8386
+ function ad(e, t, n) {
8387
+ let r = od(e.elements, n), i = od(e.elements, n - 1);
8285
8388
  if (!((r == null ? void 0 : r.type) !== "judgement" || (i == null ? void 0 : i.type) !== "richText")) return nn(t, n - 1, i).content;
8286
8389
  }
8287
- function Zu(e, t) {
8390
+ function od(e, t) {
8288
8391
  return t >= 0 ? e.slice(t, t + 1)[0] : void 0;
8289
8392
  }
8290
- function Qu(e, t) {
8393
+ function sd(e, t) {
8291
8394
  return t.elements.length === 0 && t.extras.length === 0 && t.children.length === 0;
8292
8395
  }
8293
- function $u(e) {
8396
+ function cd(e) {
8294
8397
  return {
8295
8398
  config: {},
8296
8399
  name: e.name,
8297
8400
  type: "richText"
8298
8401
  };
8299
8402
  }
8300
- function ed(e) {
8403
+ function ld(e) {
8301
8404
  return {
8302
8405
  content: e.content,
8303
8406
  type: "richText"
@@ -8305,88 +8408,88 @@ function ed(e) {
8305
8408
  }
8306
8409
  //#endregion
8307
8410
  //#region src/question/preview/QuestionPreview.tsx
8308
- function td(e) {
8309
- return /* @__PURE__ */ a(Ju, j(j({}, e), {}, { presentation: "preview" }));
8411
+ function ud(e) {
8412
+ return /* @__PURE__ */ a(rd, j(j({}, e), {}, { presentation: "preview" }));
8310
8413
  }
8311
8414
  //#endregion
8312
8415
  //#region src/question/preview/QuestionPrintAnswer.module.css
8313
- var nd = {
8314
- "answer-panel": "_answer-panel_1tus4_1",
8315
- "answer-list": "_answer-list_1tus4_10",
8316
- "answer-row": "_answer-row_1tus4_27",
8317
- "answer-marker": "_answer-marker_1tus4_35",
8318
- "answer-marker-only": "_answer-marker-only_1tus4_43",
8319
- "answer-content-list": "_answer-content-list_1tus4_47",
8320
- "answer-value": "_answer-value_1tus4_56"
8321
- }, rd = {
8322
- "blank-list": "_blank-list_1e7l0_1",
8323
- "blank-item": "_blank-item_1e7l0_11",
8324
- "blank-field": "_blank-field_1e7l0_17"
8325
- }, id = {
8326
- board: "_board_s95se_1",
8327
- pool: "_pool_s95se_6",
8328
- zones: "_zones_s95se_13",
8329
- zone: "_zone_s95se_13",
8330
- "zone-title": "_zone-title_s95se_28",
8331
- item: "_item_s95se_35",
8332
- empty: "_empty_s95se_41"
8333
- }, ad = {
8334
- board: "_board_1cujb_1",
8335
- columns: "_columns_1cujb_7",
8336
- "column-title": "_column-title_1cujb_13"
8337
- }, od = {
8338
- board: "_board_1nfae_1",
8339
- columns: "_columns_1nfae_6"
8340
- }, sd = {
8416
+ var dd = {
8417
+ "answer-panel": "_answer-panel_1yaiz_1",
8418
+ "answer-list": "_answer-list_1yaiz_8",
8419
+ "answer-row": "_answer-row_1yaiz_20",
8420
+ "answer-marker": "_answer-marker_1yaiz_31",
8421
+ "answer-marker-only": "_answer-marker-only_1yaiz_39",
8422
+ "answer-content-list": "_answer-content-list_1yaiz_43",
8423
+ "answer-value": "_answer-value_1yaiz_49"
8424
+ }, fd = {
8425
+ "blank-list": "_blank-list_14bj2_1",
8426
+ "blank-item": "_blank-item_14bj2_9",
8427
+ "blank-field": "_blank-field_14bj2_15"
8428
+ }, pd = {
8429
+ board: "_board_fqylx_1",
8430
+ pool: "_pool_fqylx_5",
8431
+ zones: "_zones_fqylx_11",
8432
+ zone: "_zone_fqylx_11",
8433
+ "zone-title": "_zone-title_fqylx_22",
8434
+ item: "_item_fqylx_28",
8435
+ empty: "_empty_fqylx_34"
8436
+ }, md = {
8437
+ board: "_board_1qh77_1",
8438
+ columns: "_columns_1qh77_6",
8439
+ "column-title": "_column-title_1qh77_11"
8440
+ }, hd = {
8441
+ board: "_board_rmc9z_1",
8442
+ columns: "_columns_rmc9z_5"
8443
+ }, gd = {
8341
8444
  media: "_media_a9b7d_1",
8342
8445
  "math-inline": "_math-inline_a9b7d_9"
8343
- }, cd = {
8344
- "rich-content": "_rich-content_1w02n_1",
8345
- element: "_element_1w02n_64",
8346
- "option-list": "_option-list_1w02n_66",
8347
- "candidate-list": "_candidate-list_1w02n_66",
8348
- "judgement-list": "_judgement-list_1w02n_66",
8349
- "candidate-item": "_candidate-item_1w02n_77",
8350
- "judgement-row": "_judgement-row_1w02n_80",
8351
- "judgement-placeholder": "_judgement-placeholder_1w02n_88",
8352
- "option-item": "_option-item_1w02n_95",
8353
- "judgement-item": "_judgement-item_1w02n_97",
8354
- marker: "_marker_1w02n_111",
8355
- "labeled-column": "_labeled-column_1w02n_118",
8356
- "labeled-item": "_labeled-item_1w02n_124",
8357
- "labeled-marker": "_labeled-marker_1w02n_132",
8358
- "candidate-section": "_candidate-section_1w02n_142",
8359
- "section-title": "_section-title_1w02n_149",
8360
- "word-builder-blank": "_word-builder-blank_1w02n_155",
8361
- "word-builder-candidate-list": "_word-builder-candidate-list_1w02n_169"
8362
- }, ld = { title: "_title_uqy9p_1" }, ud = {
8363
- "table-wrap": "_table-wrap_1pmla_1",
8364
- table: "_table_1pmla_1",
8365
- "table-option-column": "_table-option-column_1pmla_13",
8366
- "table-option-marker": "_table-option-marker_1pmla_32"
8367
- }, dd = {
8446
+ }, _d = {
8447
+ "rich-content": "_rich-content_6llgo_1",
8448
+ element: "_element_6llgo_61",
8449
+ "option-list": "_option-list_6llgo_63",
8450
+ "candidate-list": "_candidate-list_6llgo_63",
8451
+ "judgement-list": "_judgement-list_6llgo_63",
8452
+ "candidate-item": "_candidate-item_6llgo_71",
8453
+ "judgement-row": "_judgement-row_6llgo_75",
8454
+ "judgement-placeholder": "_judgement-placeholder_6llgo_86",
8455
+ "option-item": "_option-item_6llgo_92",
8456
+ "judgement-item": "_judgement-item_6llgo_94",
8457
+ marker: "_marker_6llgo_103",
8458
+ "labeled-column": "_labeled-column_6llgo_110",
8459
+ "labeled-item": "_labeled-item_6llgo_115",
8460
+ "labeled-marker": "_labeled-marker_6llgo_127",
8461
+ "candidate-section": "_candidate-section_6llgo_132",
8462
+ "section-title": "_section-title_6llgo_142",
8463
+ "word-builder-blank": "_word-builder-blank_6llgo_148",
8464
+ "word-builder-candidate-list": "_word-builder-candidate-list_6llgo_162"
8465
+ }, vd = { title: "_title_1csak_1" }, yd = {
8466
+ "table-wrap": "_table-wrap_1epdp_1",
8467
+ table: "_table_1epdp_1",
8468
+ "table-option-column": "_table-option-column_1epdp_13",
8469
+ "table-option-marker": "_table-option-marker_1epdp_31"
8470
+ }, bd = {
8368
8471
  content: "_content_1gnvb_1",
8369
8472
  paragraph: "_paragraph_1gnvb_10",
8370
8473
  marker: "_marker_1gnvb_14",
8371
8474
  "marker-button": "_marker-button_1gnvb_21",
8372
8475
  "marker-selected": "_marker-selected_1gnvb_30",
8373
8476
  "marker-answer": "_marker-answer_1gnvb_31"
8374
- }, fd = { placeholder: "_placeholder_np8ps_1" }, pd = {
8375
- column: cd["labeled-column"],
8376
- item: cd["labeled-item"],
8377
- marker: cd["labeled-marker"]
8378
- }, md = {
8379
- answer: nd,
8380
- blankGroup: rd,
8381
- classification: id,
8382
- lineConnect: j(j({}, ad), pd),
8383
- matching: j(j({}, od), pd),
8384
- renderer: j(j({}, cd), {}, { "rich-content": `${cd["rich-content"]} ${sd.media}` }),
8385
- sectionTitle: ld,
8386
- table: ud,
8387
- textMarker: dd,
8388
- textResponse: fd
8389
- }, hd = {
8477
+ }, xd = { placeholder: "_placeholder_np8ps_1" }, Sd = {
8478
+ column: _d["labeled-column"],
8479
+ item: _d["labeled-item"],
8480
+ marker: _d["labeled-marker"]
8481
+ }, Cd = {
8482
+ answer: dd,
8483
+ blankGroup: fd,
8484
+ classification: pd,
8485
+ lineConnect: j(j({}, md), Sd),
8486
+ matching: j(j({}, hd), Sd),
8487
+ renderer: j(j({}, _d), {}, { "rich-content": `${_d["rich-content"]} ${gd.media}` }),
8488
+ sectionTitle: vd,
8489
+ table: yd,
8490
+ textMarker: bd,
8491
+ textResponse: xd
8492
+ }, wd = {
8390
8493
  root: "_root_1mvma_1",
8391
8494
  empty: "_empty_1mvma_21",
8392
8495
  "element-list": "_element-list_1mvma_29",
@@ -8397,19 +8500,19 @@ var nd = {
8397
8500
  };
8398
8501
  //#endregion
8399
8502
  //#region src/question/preview/QuestionPrintPreview.tsx
8400
- function gd(e) {
8401
- return /* @__PURE__ */ a(ul.Provider, {
8402
- value: ll,
8403
- children: /* @__PURE__ */ a(Yc.Provider, {
8404
- value: md,
8405
- children: /* @__PURE__ */ a(Wu.Provider, {
8406
- value: hd,
8407
- children: /* @__PURE__ */ a(Ju, j(j({}, e), {}, { presentation: "print" }))
8503
+ function Td(e) {
8504
+ return /* @__PURE__ */ a(nl.Provider, {
8505
+ value: tl,
8506
+ children: /* @__PURE__ */ a(dl.Provider, {
8507
+ value: Cd,
8508
+ children: /* @__PURE__ */ a($u.Provider, {
8509
+ value: wd,
8510
+ children: /* @__PURE__ */ a(rd, j(j({}, e), {}, { presentation: "print" }))
8408
8511
  })
8409
8512
  })
8410
8513
  });
8411
8514
  }
8412
- var _d = {
8515
+ var Ed = {
8413
8516
  root: "_root_17bqr_1",
8414
8517
  toolbar: "_toolbar_17bqr_26",
8415
8518
  "toolbar-title": "_toolbar-title_17bqr_36",
@@ -8461,7 +8564,7 @@ var _d = {
8461
8564
  "palette-section": "_palette-section_vhj2r_56",
8462
8565
  "palette-section-title": "_palette-section-title_vhj2r_62",
8463
8566
  "palette-button": "_palette-button_vhj2r_70"
8464
- }, vd = {
8567
+ }, Dd = {
8465
8568
  "en-US": {
8466
8569
  addElement: "Add element",
8467
8570
  addExtra: "Add extra attribute",
@@ -8683,24 +8786,24 @@ var _d = {
8683
8786
  wordBuilderLabel: "\u7ec4\u8bcd\u62fc\u5199"
8684
8787
  }
8685
8788
  };
8686
- function yd(e, t) {
8789
+ function Od(e, t) {
8687
8790
  var n;
8688
8791
  return (n = e.extraDescriptions.get(t)) == null ? t : n;
8689
8792
  }
8690
- function bd(e, t) {
8793
+ function kd(e, t) {
8691
8794
  var n;
8692
8795
  return (n = e.extraLabels.get(t)) == null ? t : n;
8693
8796
  }
8694
- function xd(e) {
8797
+ function Ad(e) {
8695
8798
  switch (e) {
8696
- case "en-US": return vd["en-US"];
8697
- case "zh-CN": return vd["zh-CN"];
8799
+ case "en-US": return Dd["en-US"];
8800
+ case "zh-CN": return Dd["zh-CN"];
8698
8801
  }
8699
8802
  }
8700
- function Sd(e, t) {
8701
- return t === "richText" ? e.richTextDescription : t === "ordering" ? e.orderingDescription : Td(e, t);
8803
+ function jd(e, t) {
8804
+ return t === "richText" ? e.richTextDescription : t === "ordering" ? e.orderingDescription : Pd(e, t);
8702
8805
  }
8703
- var Cd = {
8806
+ var Md = {
8704
8807
  choice: (e) => e.optionGroupDescription,
8705
8808
  classification: (e) => e.classificationDescription,
8706
8809
  fill: (e) => e.blankGroupDescription,
@@ -8711,7 +8814,7 @@ var Cd = {
8711
8814
  textMarker: (e) => e.textMarkerDescription,
8712
8815
  textResponse: (e) => e.textResponseDescription,
8713
8816
  wordBuilder: (e) => e.wordBuilderDescription
8714
- }, wd = {
8817
+ }, Nd = {
8715
8818
  choice: (e) => e.optionGroupLabel,
8716
8819
  classification: (e) => e.classificationLabel,
8717
8820
  fill: (e) => e.blankGroupLabel,
@@ -8723,30 +8826,30 @@ var Cd = {
8723
8826
  textResponse: (e) => e.textResponseLabel,
8724
8827
  wordBuilder: (e) => e.wordBuilderLabel
8725
8828
  };
8726
- function Td(e, t) {
8727
- return Cd[t](e);
8829
+ function Pd(e, t) {
8830
+ return Md[t](e);
8728
8831
  }
8729
- function Ed(e, t) {
8730
- return t === "richText" ? e.richTextLabel : t === "ordering" ? e.orderingLabel : Dd(e, t);
8832
+ function Fd(e, t) {
8833
+ return t === "richText" ? e.richTextLabel : t === "ordering" ? e.orderingLabel : Id(e, t);
8731
8834
  }
8732
- function Dd(e, t) {
8733
- return wd[t](e);
8835
+ function Id(e, t) {
8836
+ return Nd[t](e);
8734
8837
  }
8735
- function Od(e, t) {
8838
+ function Ld(e, t) {
8736
8839
  var n;
8737
8840
  return (n = e.optionValueLabels.get(t)) == null ? t : n;
8738
8841
  }
8739
- function kd(e, t) {
8842
+ function Rd(e, t) {
8740
8843
  var n;
8741
8844
  return (n = e.candidateModeValueLabels.get(t)) == null ? t : n;
8742
8845
  }
8743
- function Ad(e, t) {
8846
+ function zd(e, t) {
8744
8847
  var n;
8745
8848
  return (n = e.lineConnectLabelStyleLabels.get(t)) == null ? t : n;
8746
8849
  }
8747
8850
  //#endregion
8748
8851
  //#region src/question/structure-editor/QuestionStructureCanvas.tsx
8749
- function jd({ elements: e, extras: t, labels: n, onDeleteElement: r, onDeleteExtra: i, onMoveElement: s, onSelectElement: c, selectedElementClientId: l }) {
8852
+ function Bd({ elements: e, extras: t, labels: n, onDeleteElement: r, onDeleteExtra: i, onMoveElement: s, onSelectElement: c, selectedElementClientId: l }) {
8750
8853
  let [u, d] = h(null);
8751
8854
  return /* @__PURE__ */ o("section", {
8752
8855
  className: Q.panel,
@@ -8766,7 +8869,7 @@ function jd({ elements: e, extras: t, labels: n, onDeleteElement: r, onDeleteExt
8766
8869
  className: Z["element-list"],
8767
8870
  children: [
8768
8871
  e.map((t, i) => {
8769
- let f = t.clientId === l, p = Ed(n, t.type);
8872
+ let f = t.clientId === l, p = Fd(n, t.type);
8770
8873
  return /* @__PURE__ */ o("div", {
8771
8874
  className: `${Z["element-card"]} ${f ? Z.active : ""}`,
8772
8875
  onClick: () => c(t.clientId),
@@ -8830,7 +8933,7 @@ function jd({ elements: e, extras: t, labels: n, onDeleteElement: r, onDeleteExt
8830
8933
  children: n.extraTitle
8831
8934
  }) : null,
8832
8935
  t.map((t, r) => {
8833
- let s = t.clientId === l, f = bd(n, t.type);
8936
+ let s = t.clientId === l, f = kd(n, t.type);
8834
8937
  return /* @__PURE__ */ o("div", {
8835
8938
  className: `${Z["element-card"]} ${s ? Z.active : ""}`,
8836
8939
  onClick: () => c(t.clientId),
@@ -8879,7 +8982,7 @@ function jd({ elements: e, extras: t, labels: n, onDeleteElement: r, onDeleteExt
8879
8982
  }
8880
8983
  //#endregion
8881
8984
  //#region src/question/structure-editor/QuestionStructurePalette.tsx
8882
- function Md({ addedExtraTypes: e, labels: t, onAddElement: n, onAddExtra: r }) {
8985
+ function Vd({ addedExtraTypes: e, labels: t, onAddElement: n, onAddExtra: r }) {
8883
8986
  let i = new Set(e);
8884
8987
  return /* @__PURE__ */ o("aside", {
8885
8988
  className: Q.panel,
@@ -8894,11 +8997,11 @@ function Md({ addedExtraTypes: e, labels: t, onAddElement: n, onAddExtra: r }) {
8894
8997
  /* @__PURE__ */ a("div", {
8895
8998
  className: Q.palette,
8896
8999
  children: ae.map((e) => /* @__PURE__ */ o("button", {
8897
- "aria-label": `${t.addElement}: ${Ed(t, e)}`,
9000
+ "aria-label": `${t.addElement}: ${Fd(t, e)}`,
8898
9001
  className: Q["palette-button"],
8899
9002
  onClick: () => n(e),
8900
9003
  type: "button",
8901
- children: [/* @__PURE__ */ a("strong", { children: Ed(t, e) }), /* @__PURE__ */ a("small", { children: Sd(t, e) })]
9004
+ children: [/* @__PURE__ */ a("strong", { children: Fd(t, e) }), /* @__PURE__ */ a("small", { children: jd(t, e) })]
8902
9005
  }, e))
8903
9006
  }),
8904
9007
  /* @__PURE__ */ o("div", {
@@ -8911,12 +9014,12 @@ function Md({ addedExtraTypes: e, labels: t, onAddElement: n, onAddExtra: r }) {
8911
9014
  children: oe.map((e) => {
8912
9015
  let n = i.has(e);
8913
9016
  return /* @__PURE__ */ o("button", {
8914
- "aria-label": `${t.addExtra}: ${bd(t, e)}`,
9017
+ "aria-label": `${t.addExtra}: ${kd(t, e)}`,
8915
9018
  className: Q["palette-button"],
8916
9019
  disabled: n,
8917
9020
  onClick: () => r(e),
8918
9021
  type: "button",
8919
- children: [/* @__PURE__ */ a("strong", { children: bd(t, e) }), /* @__PURE__ */ a("small", { children: yd(t, e) })]
9022
+ children: [/* @__PURE__ */ a("strong", { children: kd(t, e) }), /* @__PURE__ */ a("small", { children: Od(t, e) })]
8920
9023
  }, e);
8921
9024
  })
8922
9025
  })]
@@ -8933,27 +9036,27 @@ var $ = {
8933
9036
  select: "_select_tgswd_27",
8934
9037
  textarea: "_textarea_tgswd_28",
8935
9038
  empty: "_empty_tgswd_61"
8936
- }, Nd = [
9039
+ }, Hd = [
8937
9040
  "none",
8938
9041
  "sharedPool",
8939
9042
  "perBlankOptions"
8940
- ], Pd = [
9043
+ ], Ud = [
8941
9044
  "upperAlpha",
8942
9045
  "lowerAlpha",
8943
9046
  "number"
8944
- ], Fd = [
9047
+ ], Wd = [
8945
9048
  "number",
8946
9049
  "upperAlpha",
8947
9050
  "lowerAlpha",
8948
9051
  "lowerRoman",
8949
9052
  "chineseNumber",
8950
9053
  "none"
8951
- ], Id = [
9054
+ ], Gd = [
8952
9055
  2,
8953
9056
  3,
8954
9057
  4,
8955
9058
  5
8956
- ], Ld = ["standard", "table"], Rd = ["single", "multiple"], zd = ["spelling", "sentence"], Bd = [
9059
+ ], Kd = ["standard", "table"], qd = ["single", "multiple"], Jd = ["spelling", "sentence"], Yd = [
8957
9060
  "correctWrong",
8958
9061
  "yesNo",
8959
9062
  "validInvalid",
@@ -8961,8 +9064,8 @@ var $ = {
8961
9064
  "rightWrong",
8962
9065
  "checkCross"
8963
9066
  ];
8964
- function Vd({ description: e, globalConfig: t, isSubjective: n, labels: r, onElementChange: i, onExtraChange: s, onGlobalConfigChange: c, onMetadataChange: l, selectedExtra: u, selectedElement: d }) {
8965
- let f = Hd({
9067
+ function Xd({ description: e, globalConfig: t, isSubjective: n, labels: r, onElementChange: i, onExtraChange: s, onGlobalConfigChange: c, onMetadataChange: l, selectedExtra: u, selectedElement: d }) {
9068
+ let f = Zd({
8966
9069
  labels: r,
8967
9070
  onElementChange: i,
8968
9071
  onExtraChange: s,
@@ -9044,7 +9147,7 @@ function Vd({ description: e, globalConfig: t, isSubjective: n, labels: r, onEle
9044
9147
  })]
9045
9148
  });
9046
9149
  }
9047
- function Hd({ labels: e, onElementChange: t, onExtraChange: n, selectedElement: r, selectedExtra: i }) {
9150
+ function Zd({ labels: e, onElementChange: t, onExtraChange: n, selectedElement: r, selectedExtra: i }) {
9048
9151
  return r ? /* @__PURE__ */ o("div", {
9049
9152
  className: $["form-stack"],
9050
9153
  children: [
@@ -9064,7 +9167,7 @@ function Hd({ labels: e, onElementChange: t, onExtraChange: n, selectedElement:
9064
9167
  value: r.enName
9065
9168
  })]
9066
9169
  }),
9067
- Ud(r, e, t)
9170
+ Qd(r, e, t)
9068
9171
  ]
9069
9172
  }) : i ? /* @__PURE__ */ o("div", {
9070
9173
  className: $["form-stack"],
@@ -9088,10 +9191,10 @@ function Hd({ labels: e, onElementChange: t, onExtraChange: n, selectedElement:
9088
9191
  children: e.noElement
9089
9192
  });
9090
9193
  }
9091
- function Ud(e, t, n) {
9092
- return e.type === "fill" || e.type === "classification" || e.type === "ordering" || e.type === "richText" || e.type === "textMarker" || e.type === "textResponse" ? null : Wd(e, t, n);
9194
+ function Qd(e, t, n) {
9195
+ return e.type === "fill" || e.type === "classification" || e.type === "ordering" || e.type === "richText" || e.type === "textMarker" || e.type === "textResponse" ? null : $d(e, t, n);
9093
9196
  }
9094
- function Wd(e, t, n) {
9197
+ function $d(e, t, n) {
9095
9198
  switch (e.type) {
9096
9199
  case "inlineFill": return /* @__PURE__ */ o(i, { children: [/* @__PURE__ */ o("label", {
9097
9200
  className: $["form-row"],
@@ -9099,9 +9202,9 @@ function Wd(e, t, n) {
9099
9202
  className: $.select,
9100
9203
  onChange: (t) => n(j(j({}, e), {}, { config: j(j({}, e.config), {}, { candidateMode: t.target.value }) })),
9101
9204
  value: e.config.candidateMode,
9102
- children: Nd.map((e) => /* @__PURE__ */ a("option", {
9205
+ children: Hd.map((e) => /* @__PURE__ */ a("option", {
9103
9206
  value: e,
9104
- children: kd(t, e)
9207
+ children: Rd(t, e)
9105
9208
  }, e))
9106
9209
  })]
9107
9210
  }), /* @__PURE__ */ o("label", {
@@ -9118,9 +9221,9 @@ function Wd(e, t, n) {
9118
9221
  className: $.select,
9119
9222
  onChange: (t) => n(j(j({}, e), {}, { config: { builderMode: t.target.value } })),
9120
9223
  value: e.config.builderMode,
9121
- children: zd.map((e) => /* @__PURE__ */ a("option", {
9224
+ children: Jd.map((e) => /* @__PURE__ */ a("option", {
9122
9225
  value: e,
9123
- children: Od(t, e)
9226
+ children: Ld(t, e)
9124
9227
  }, e))
9125
9228
  })]
9126
9229
  });
@@ -9130,18 +9233,18 @@ function Wd(e, t, n) {
9130
9233
  className: $.select,
9131
9234
  onChange: (t) => n(j(j({}, e), {}, { config: { judgeAnswerMode: t.target.value } })),
9132
9235
  value: e.config.judgeAnswerMode,
9133
- children: Bd.map((e) => /* @__PURE__ */ a("option", {
9236
+ children: Yd.map((e) => /* @__PURE__ */ a("option", {
9134
9237
  value: e,
9135
- children: Od(t, e)
9238
+ children: Ld(t, e)
9136
9239
  }, e))
9137
9240
  })]
9138
9241
  });
9139
- case "choice": return Gd(e, t, n);
9140
- case "lineConnect": return Kd(e, t, n);
9141
- case "matching": return qd(e, t, n);
9242
+ case "choice": return ef(e, t, n);
9243
+ case "lineConnect": return tf(e, t, n);
9244
+ case "matching": return nf(e, t, n);
9142
9245
  }
9143
9246
  }
9144
- function Gd(e, t, n) {
9247
+ function ef(e, t, n) {
9145
9248
  return /* @__PURE__ */ o(i, { children: [
9146
9249
  /* @__PURE__ */ o("label", {
9147
9250
  className: $["form-row"],
@@ -9149,9 +9252,9 @@ function Gd(e, t, n) {
9149
9252
  className: $.select,
9150
9253
  onChange: (t) => n(j(j({}, e), {}, { config: j(j({}, e.config), {}, { selectionType: t.target.value }) })),
9151
9254
  value: e.config.selectionType,
9152
- children: Rd.map((e) => /* @__PURE__ */ a("option", {
9255
+ children: qd.map((e) => /* @__PURE__ */ a("option", {
9153
9256
  value: e,
9154
- children: Od(t, e)
9257
+ children: Ld(t, e)
9155
9258
  }, e))
9156
9259
  })]
9157
9260
  }),
@@ -9161,9 +9264,9 @@ function Gd(e, t, n) {
9161
9264
  className: $.select,
9162
9265
  onChange: (t) => n(j(j({}, e), {}, { config: j(j({}, e.config), {}, { optionLabelStyle: t.target.value }) })),
9163
9266
  value: e.config.optionLabelStyle,
9164
- children: Pd.map((e) => /* @__PURE__ */ a("option", {
9267
+ children: Ud.map((e) => /* @__PURE__ */ a("option", {
9165
9268
  value: e,
9166
- children: Od(t, e)
9269
+ children: Ld(t, e)
9167
9270
  }, e))
9168
9271
  })]
9169
9272
  }),
@@ -9173,23 +9276,23 @@ function Gd(e, t, n) {
9173
9276
  className: $.select,
9174
9277
  onChange: (t) => n(j(j({}, e), {}, { config: j(j({}, e.config), {}, { renderer: t.target.value }) })),
9175
9278
  value: e.config.renderer,
9176
- children: Ld.map((e) => /* @__PURE__ */ a("option", {
9279
+ children: Kd.map((e) => /* @__PURE__ */ a("option", {
9177
9280
  value: e,
9178
- children: Od(t, e)
9281
+ children: Ld(t, e)
9179
9282
  }, e))
9180
9283
  })]
9181
9284
  })
9182
9285
  ] });
9183
9286
  }
9184
- function Kd(e, t, n) {
9185
- let r = Jd(e.config.columns);
9287
+ function tf(e, t, n) {
9288
+ let r = rf(e.config.columns);
9186
9289
  return /* @__PURE__ */ o(i, { children: [/* @__PURE__ */ o("label", {
9187
9290
  className: $["form-row"],
9188
9291
  children: [/* @__PURE__ */ a("span", { children: t.lineConnectColumnCount }), /* @__PURE__ */ a("select", {
9189
9292
  className: $.select,
9190
- onChange: (t) => n(j(j({}, e), {}, { config: { columns: Xd(r, Number(t.target.value)) } })),
9293
+ onChange: (t) => n(j(j({}, e), {}, { config: { columns: of(r, Number(t.target.value)) } })),
9191
9294
  value: r.length,
9192
- children: Id.map((e) => /* @__PURE__ */ a("option", {
9295
+ children: Gd.map((e) => /* @__PURE__ */ a("option", {
9193
9296
  value: e,
9194
9297
  children: e
9195
9298
  }, e))
@@ -9200,47 +9303,47 @@ function Kd(e, t, n) {
9200
9303
  className: $.select,
9201
9304
  onChange: (t) => n(j(j({}, e), {}, { config: { columns: r.map((e, n) => n === s ? { labelStyle: t.target.value } : e) } })),
9202
9305
  value: i.labelStyle,
9203
- children: Fd.map((e) => /* @__PURE__ */ a("option", {
9306
+ children: Wd.map((e) => /* @__PURE__ */ a("option", {
9204
9307
  value: e,
9205
- children: Ad(t, e)
9308
+ children: zd(t, e)
9206
9309
  }, e))
9207
9310
  })]
9208
9311
  }, `line-column-${s}`))] });
9209
9312
  }
9210
- function qd(e, t, n) {
9211
- let r = Yd(e.config.columns);
9313
+ function nf(e, t, n) {
9314
+ let r = af(e.config.columns);
9212
9315
  return /* @__PURE__ */ a(i, { children: r.map((i, s) => /* @__PURE__ */ o("label", {
9213
9316
  className: $["form-row"],
9214
9317
  children: [/* @__PURE__ */ a("span", { children: t.lineConnectColumnLabel(s + 1) }), /* @__PURE__ */ a("select", {
9215
9318
  className: $.select,
9216
9319
  onChange: (t) => n(j(j({}, e), {}, { config: { columns: r.map((e, n) => n === s ? { labelStyle: t.target.value } : e) } })),
9217
9320
  value: i.labelStyle,
9218
- children: Fd.map((e) => /* @__PURE__ */ a("option", {
9321
+ children: Wd.map((e) => /* @__PURE__ */ a("option", {
9219
9322
  value: e,
9220
- children: Ad(t, e)
9323
+ children: zd(t, e)
9221
9324
  }, e))
9222
9325
  })]
9223
9326
  }, `matching-column-${s}`)) });
9224
9327
  }
9225
- function Jd(e) {
9328
+ function rf(e) {
9226
9329
  let t = e.slice(0, 5);
9227
- return t.length >= 2 ? t : [...t, ...Fd.slice(t.length, 2).map((e) => ({ labelStyle: e }))];
9330
+ return t.length >= 2 ? t : [...t, ...Wd.slice(t.length, 2).map((e) => ({ labelStyle: e }))];
9228
9331
  }
9229
- function Yd(e) {
9332
+ function af(e) {
9230
9333
  let t = e.slice(0, 2);
9231
- return t.length >= 2 ? t : [...t, ...Fd.slice(t.length, 2).map((e) => ({ labelStyle: e }))];
9334
+ return t.length >= 2 ? t : [...t, ...Wd.slice(t.length, 2).map((e) => ({ labelStyle: e }))];
9232
9335
  }
9233
- function Xd(e, t) {
9336
+ function of(e, t) {
9234
9337
  return Array.from({ length: Math.min(5, Math.max(2, t)) }, (t, n) => {
9235
9338
  var r, i;
9236
- return (r = e.slice(n, n + 1)[0]) == null ? { labelStyle: (i = Fd[n]) == null ? "number" : i } : r;
9339
+ return (r = e.slice(n, n + 1)[0]) == null ? { labelStyle: (i = Wd[n]) == null ? "number" : i } : r;
9237
9340
  });
9238
9341
  }
9239
9342
  //#endregion
9240
9343
  //#region src/question/structure-editor/QuestionStructureEditor.tsx
9241
- function Zd({ locale: e = "zh-CN", onChange: t, value: n }) {
9344
+ function sf({ locale: e = "zh-CN", onChange: t, value: n }) {
9242
9345
  var r, i, s, c;
9243
- let l = xd(e), [u, d] = h((r = (i = n.elements[0]) == null ? void 0 : i.clientId) == null ? null : r), { selectedElement: f, selectedExtra: p } = Qd(n, u);
9346
+ let l = Ad(e), [u, d] = h((r = (i = n.elements[0]) == null ? void 0 : i.clientId) == null ? null : r), { selectedElement: f, selectedExtra: p } = cf(n, u);
9244
9347
  function m(e) {
9245
9348
  let r = pe(e, n.elements);
9246
9349
  t(j(j({}, n), {}, { elements: [...n.elements, r] })), d(r.clientId);
@@ -9252,11 +9355,11 @@ function Zd({ locale: e = "zh-CN", onChange: t, value: n }) {
9252
9355
  }
9253
9356
  function _(e) {
9254
9357
  let r = _e(n, e);
9255
- t(r), d($d(r));
9358
+ t(r), d(lf(r));
9256
9359
  }
9257
9360
  function v(e) {
9258
9361
  let r = ge(n, e);
9259
- t(r), d($d(r));
9362
+ t(r), d(lf(r));
9260
9363
  }
9261
9364
  function y(e) {
9262
9365
  t(be(n, e.clientId, e));
@@ -9271,19 +9374,19 @@ function Zd({ locale: e = "zh-CN", onChange: t, value: n }) {
9271
9374
  t(Se(n, e));
9272
9375
  }
9273
9376
  return /* @__PURE__ */ a("section", {
9274
- className: _d.root,
9377
+ className: Ed.root,
9275
9378
  children: /* @__PURE__ */ a("div", {
9276
9379
  className: Q.shell,
9277
9380
  children: /* @__PURE__ */ o("div", {
9278
9381
  className: Q.grid,
9279
9382
  children: [
9280
- /* @__PURE__ */ a(Md, {
9383
+ /* @__PURE__ */ a(Vd, {
9281
9384
  addedExtraTypes: n.extras.map((e) => e.type),
9282
9385
  labels: l,
9283
9386
  onAddElement: m,
9284
9387
  onAddExtra: g
9285
9388
  }),
9286
- /* @__PURE__ */ a(jd, {
9389
+ /* @__PURE__ */ a(Bd, {
9287
9390
  elements: n.elements,
9288
9391
  extras: n.extras,
9289
9392
  labels: l,
@@ -9293,7 +9396,7 @@ function Zd({ locale: e = "zh-CN", onChange: t, value: n }) {
9293
9396
  onSelectElement: d,
9294
9397
  selectedElementClientId: (s = (c = f == null ? void 0 : f.clientId) == null ? p == null ? void 0 : p.clientId : c) == null ? null : s
9295
9398
  }),
9296
- /* @__PURE__ */ a(Vd, {
9399
+ /* @__PURE__ */ a(Xd, {
9297
9400
  description: n.description,
9298
9401
  globalConfig: n.globalConfig,
9299
9402
  isSubjective: n.isSubjective,
@@ -9310,7 +9413,7 @@ function Zd({ locale: e = "zh-CN", onChange: t, value: n }) {
9310
9413
  })
9311
9414
  });
9312
9415
  }
9313
- function Qd(e, t) {
9416
+ function cf(e, t) {
9314
9417
  var n, r, i, a;
9315
9418
  let o = (n = e.elements.find((e) => e.clientId === t)) == null ? null : n, s = (r = e.extras.find((e) => e.clientId === t)) == null ? null : r;
9316
9419
  return o || s ? {
@@ -9321,9 +9424,9 @@ function Qd(e, t) {
9321
9424
  selectedExtra: e.elements[0] || (a = e.extras[0]) == null ? null : a
9322
9425
  };
9323
9426
  }
9324
- function $d(e) {
9427
+ function lf(e) {
9325
9428
  var t, n, r, i;
9326
9429
  return (t = (n = (r = e.elements[0]) == null ? void 0 : r.clientId) == null ? (i = e.extras[0]) == null ? void 0 : i.clientId : n) == null ? null : t;
9327
9430
  }
9328
9431
  //#endregion
9329
- export { ss as QuestionContentEditor, _u as QuestionPlayer, td as QuestionPreview, gd as QuestionPrintPreview, q as QuestionRichContentView, Zd as QuestionStructureEditor, Hn as addBlankToGroup, gn as alignQuestionContentDraftWithStructure, Kn as assignBlankToAnswerGroup, Qa as cn, qn as createBlankAnswerGroupWithBlank, Kt as createEmptyQuestionContentDraft, Ys as createEmptyQuestionPlayerResponse, de as createEmptyQuestionStructureDraft, hn as createQuestionContentDraftFromSerialized, k as createQuestionContentId, us as createQuestionContentStructureFromDraft, ds as createQuestionPreviewDraft, pe as createQuestionStructureElement, fe as createQuestionStructureExtra, P as createRichContentValue, Zt as createRichContentValueFromDocument, Me as createRichTextContent, Un as deleteBlankFromGroup, _e as deleteQuestionStructureElement, ge as deleteQuestionStructureExtra, Jn as detachBlankFromAnswerGroup, ia as findQuestionContentQuestionTypeStructure, ca as findQuestionContentQuestionTypeTemplate, cn as getQuestionContentJudgementOptions, an as getQuestionContentOptionMarker, en as getQuestionContentTextMarkerAnswerText, ps as getQuestionStructureDraftChangeKind, N as getQuestionStructureElementDefaultEnName, M as getQuestionStructureElementDefaultName, we as getQuestionStructureExtraDefaultEnName, Ce as getQuestionStructureExtraDefaultName, tn as getRichContentDocument, Gn as getSharedBlankAnswerGroups, Gt as isCompositeQuestionContentStructure, pn as isQuestionContentDraftEmpty, ve as moveQuestionStructureElement, Tn as normalizeFillTextCandidateState, Ne as normalizeRichTextContent, ae as questionStructureElementTypes, oe as questionStructureExtraTypes, la as reconcileQuestionContentDraftWithTemplates, mn as serializeQuestionContentDraft, fs as serializeQuestionStructureDraft, be as updateQuestionStructureElement, ye as updateQuestionStructureExtra, xe as updateQuestionStructureGlobalConfig, Se as updateQuestionStructureMetadata };
9432
+ export { ss as QuestionContentEditor, Eu as QuestionPlayer, ud as QuestionPreview, Td as QuestionPrintPreview, q as QuestionRichContentView, sf as QuestionStructureEditor, Hn as addBlankToGroup, gn as alignQuestionContentDraftWithStructure, Kn as assignBlankToAnswerGroup, Qa as cn, qn as createBlankAnswerGroupWithBlank, Kt as createEmptyQuestionContentDraft, Ys as createEmptyQuestionPlayerResponse, de as createEmptyQuestionStructureDraft, hn as createQuestionContentDraftFromSerialized, k as createQuestionContentId, us as createQuestionContentStructureFromDraft, ds as createQuestionPreviewDraft, pe as createQuestionStructureElement, fe as createQuestionStructureExtra, P as createRichContentValue, Zt as createRichContentValueFromDocument, Me as createRichTextContent, Un as deleteBlankFromGroup, _e as deleteQuestionStructureElement, ge as deleteQuestionStructureExtra, Jn as detachBlankFromAnswerGroup, ia as findQuestionContentQuestionTypeStructure, ca as findQuestionContentQuestionTypeTemplate, cn as getQuestionContentJudgementOptions, an as getQuestionContentOptionMarker, en as getQuestionContentTextMarkerAnswerText, ps as getQuestionStructureDraftChangeKind, N as getQuestionStructureElementDefaultEnName, M as getQuestionStructureElementDefaultName, we as getQuestionStructureExtraDefaultEnName, Ce as getQuestionStructureExtraDefaultName, tn as getRichContentDocument, Gn as getSharedBlankAnswerGroups, Gt as isCompositeQuestionContentStructure, pn as isQuestionContentDraftEmpty, ve as moveQuestionStructureElement, Tn as normalizeFillTextCandidateState, Ne as normalizeRichTextContent, ae as questionStructureElementTypes, oe as questionStructureExtraTypes, la as reconcileQuestionContentDraftWithTemplates, mn as serializeQuestionContentDraft, fs as serializeQuestionStructureDraft, be as updateQuestionStructureElement, ye as updateQuestionStructureExtra, xe as updateQuestionStructureGlobalConfig, Se as updateQuestionStructureMetadata };