eat-js-sdk 1.0.26 → 1.0.28

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.
@@ -326,9 +326,95 @@
326
326
  detach(iframe);
327
327
  };
328
328
  }
329
+ function toggle_class(element2, name, toggle) {
330
+ element2.classList.toggle(name, !!toggle);
331
+ }
329
332
  function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
330
333
  return new CustomEvent(type, { detail, bubbles, cancelable });
331
334
  }
335
+ var HtmlTag = class {
336
+ /**
337
+ * @private
338
+ * @default false
339
+ */
340
+ is_svg = false;
341
+ /** parent for creating node */
342
+ e = void 0;
343
+ /** html tag nodes */
344
+ n = void 0;
345
+ /** target */
346
+ t = void 0;
347
+ /** anchor */
348
+ a = void 0;
349
+ constructor(is_svg = false) {
350
+ this.is_svg = is_svg;
351
+ this.e = this.n = null;
352
+ }
353
+ /**
354
+ * @param {string} html
355
+ * @returns {void}
356
+ */
357
+ c(html) {
358
+ this.h(html);
359
+ }
360
+ /**
361
+ * @param {string} html
362
+ * @param {HTMLElement | SVGElement} target
363
+ * @param {HTMLElement | SVGElement} anchor
364
+ * @returns {void}
365
+ */
366
+ m(html, target, anchor = null) {
367
+ if (!this.e) {
368
+ if (this.is_svg)
369
+ this.e = svg_element(
370
+ /** @type {keyof SVGElementTagNameMap} */
371
+ target.nodeName
372
+ );
373
+ else
374
+ this.e = element(
375
+ /** @type {keyof HTMLElementTagNameMap} */
376
+ target.nodeType === 11 ? "TEMPLATE" : target.nodeName
377
+ );
378
+ this.t = target.tagName !== "TEMPLATE" ? target : (
379
+ /** @type {HTMLTemplateElement} */
380
+ target.content
381
+ );
382
+ this.c(html);
383
+ }
384
+ this.i(anchor);
385
+ }
386
+ /**
387
+ * @param {string} html
388
+ * @returns {void}
389
+ */
390
+ h(html) {
391
+ this.e.innerHTML = html;
392
+ this.n = Array.from(
393
+ this.e.nodeName === "TEMPLATE" ? this.e.content.childNodes : this.e.childNodes
394
+ );
395
+ }
396
+ /**
397
+ * @returns {void} */
398
+ i(anchor) {
399
+ for (let i = 0; i < this.n.length; i += 1) {
400
+ insert(this.t, this.n[i], anchor);
401
+ }
402
+ }
403
+ /**
404
+ * @param {string} html
405
+ * @returns {void}
406
+ */
407
+ p(html) {
408
+ this.d();
409
+ this.h(html);
410
+ this.i(this.a);
411
+ }
412
+ /**
413
+ * @returns {void} */
414
+ d() {
415
+ this.n.forEach(detach);
416
+ }
417
+ };
332
418
  function get_custom_elements_slots(element2) {
333
419
  const result = {};
334
420
  element2.childNodes.forEach(
@@ -389,6 +475,9 @@
389
475
  function add_render_callback(fn) {
390
476
  render_callbacks.push(fn);
391
477
  }
478
+ function add_flush_callback(fn) {
479
+ flush_callbacks.push(fn);
480
+ }
392
481
  var seen_callbacks = /* @__PURE__ */ new Set();
393
482
  var flushidx = 0;
394
483
  function flush() {
@@ -499,7 +588,7 @@
499
588
  lookup.delete(block.key);
500
589
  });
501
590
  }
502
- function update_keyed_each(old_blocks, dirty, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block5, next2, get_context) {
591
+ function update_keyed_each(old_blocks, dirty, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block8, next2, get_context) {
503
592
  let o2 = old_blocks.length;
504
593
  let n2 = list.length;
505
594
  let i = o2;
@@ -516,7 +605,7 @@
516
605
  const key = get_key(child_ctx);
517
606
  let block = lookup.get(key);
518
607
  if (!block) {
519
- block = create_each_block5(key, child_ctx);
608
+ block = create_each_block8(key, child_ctx);
520
609
  block.c();
521
610
  } else if (dynamic) {
522
611
  updates.push(() => block.p(child_ctx, dirty));
@@ -603,6 +692,13 @@
603
692
  var boolean_attributes = /* @__PURE__ */ new Set([..._boolean_attributes]);
604
693
 
605
694
  // node_modules/svelte/src/runtime/internal/Component.js
695
+ function bind(component, name, callback) {
696
+ const index = component.$$.props[name];
697
+ if (index !== void 0) {
698
+ component.$$.bound[index] = callback;
699
+ callback(component.$$.ctx[index]);
700
+ }
701
+ }
606
702
  function create_component(block) {
607
703
  block && block.c();
608
704
  }
@@ -638,7 +734,7 @@
638
734
  }
639
735
  component.$$.dirty[i / 31 | 0] |= 1 << i % 31;
640
736
  }
641
- function init(component, options, instance15, create_fragment30, not_equal, props, append_styles2 = null, dirty = [-1]) {
737
+ function init(component, options, instance21, create_fragment34, not_equal, props, append_styles2 = null, dirty = [-1]) {
642
738
  const parent_component = current_component;
643
739
  set_current_component(component);
644
740
  const $$ = component.$$ = {
@@ -664,7 +760,7 @@
664
760
  };
665
761
  append_styles2 && append_styles2($$.root);
666
762
  let ready = false;
667
- $$.ctx = instance15 ? instance15(component, options.props || {}, (i, ret, ...rest) => {
763
+ $$.ctx = instance21 ? instance21(component, options.props || {}, (i, ret, ...rest) => {
668
764
  const value = rest.length ? rest[0] : ret;
669
765
  if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
670
766
  if (!$$.skip_bound && $$.bound[i])
@@ -677,7 +773,7 @@
677
773
  $$.update();
678
774
  ready = true;
679
775
  run_all($$.before_update);
680
- $$.fragment = create_fragment30 ? create_fragment30($$.ctx) : false;
776
+ $$.fragment = create_fragment34 ? create_fragment34($$.ctx) : false;
681
777
  if (options.target) {
682
778
  if (options.hydrate) {
683
779
  start_hydrating();
@@ -1284,6 +1380,7 @@
1284
1380
  var INTERACTION_TYPE_MCQ = "multipleChoiceInteraction";
1285
1381
  var INTERACTION_TYPE_TYPEIN = "typeInInteraction";
1286
1382
  var INTERACTION_TYPE_CATEGORISE = "categoriseInteraction";
1383
+ var INTERACTION_TYPE_DROPDOWN = "dropdownInteraction";
1287
1384
  var TYPEIN_TYPE_SHORT = "Short-Text";
1288
1385
  var TYPEIN_TYPE_LONG = "Long-Text";
1289
1386
  var TYPEIN_TYPE_INLINE = "Inline Text";
@@ -2611,7 +2708,13 @@
2611
2708
  stimulusTextAlignment = stimulusTextAlignmentRaw;
2612
2709
  }
2613
2710
  }
2614
- const isAllowedInteraction = interactionType === INTERACTION_TYPE_MCQ || interactionType === INTERACTION_TYPE_TYPEIN;
2711
+ const allowedInteractions = [
2712
+ INTERACTION_TYPE_MCQ,
2713
+ INTERACTION_TYPE_TYPEIN,
2714
+ INTERACTION_TYPE_DROPDOWN,
2715
+ INTERACTION_TYPE_DROPDOWN
2716
+ ];
2717
+ const isAllowedInteraction = allowedInteractions.includes(interactionType);
2615
2718
  const showAsset = isAllowedInteraction && fileUrl;
2616
2719
  const showTextStimulus = isAllowedInteraction && stimulusText;
2617
2720
  const showAssetAlignmentDefault = showAsset && fileAlignment === ASSET_ALIGNMENT_DEFAULT;
@@ -11804,17 +11907,47 @@
11804
11907
  attr(path, "clip-rule", "evenodd");
11805
11908
  attr(path, "d", "M4 1.60948L1.13807 4.4714C0.877721 4.73175 0.455612 4.73175 0.195262 4.4714C-0.0650874 4.21105 -0.0650874 3.78894 0.195262 3.5286L3.5286 0.195262C3.78895 -0.0650874 4.21105 -0.0650874 4.4714 0.195262L7.80474 3.5286C8.06509 3.78894 8.06509 4.21105 7.80474 4.4714C7.54439 4.73175 7.12228 4.73175 6.86193 4.4714L4 1.60948Z");
11806
11909
  attr(path, "fill", "currentColor");
11807
- attr(svg, "width", "8");
11808
- attr(svg, "height", "5");
11910
+ attr(
11911
+ svg,
11912
+ "width",
11913
+ /*width*/
11914
+ ctx[0]
11915
+ );
11916
+ attr(
11917
+ svg,
11918
+ "height",
11919
+ /*height*/
11920
+ ctx[1]
11921
+ );
11809
11922
  attr(svg, "viewBox", "0 0 8 5");
11810
11923
  attr(svg, "fill", "none");
11811
11924
  attr(svg, "xmlns", "http://www.w3.org/2000/svg");
11925
+ attr(svg, "aria-hidden", "true");
11812
11926
  },
11813
11927
  m(target, anchor) {
11814
11928
  insert(target, svg, anchor);
11815
11929
  append(svg, path);
11816
11930
  },
11817
- p: noop,
11931
+ p(ctx2, [dirty]) {
11932
+ if (dirty & /*width*/
11933
+ 1) {
11934
+ attr(
11935
+ svg,
11936
+ "width",
11937
+ /*width*/
11938
+ ctx2[0]
11939
+ );
11940
+ }
11941
+ if (dirty & /*height*/
11942
+ 2) {
11943
+ attr(
11944
+ svg,
11945
+ "height",
11946
+ /*height*/
11947
+ ctx2[1]
11948
+ );
11949
+ }
11950
+ },
11818
11951
  i: noop,
11819
11952
  o: noop,
11820
11953
  d(detaching) {
@@ -11824,13 +11957,38 @@
11824
11957
  }
11825
11958
  };
11826
11959
  }
11960
+ function instance13($$self, $$props, $$invalidate) {
11961
+ let { width = 8 } = $$props;
11962
+ let { height = 5 } = $$props;
11963
+ $$self.$$set = ($$props2) => {
11964
+ if ("width" in $$props2)
11965
+ $$invalidate(0, width = $$props2.width);
11966
+ if ("height" in $$props2)
11967
+ $$invalidate(1, height = $$props2.height);
11968
+ };
11969
+ return [width, height];
11970
+ }
11827
11971
  var SmallChevronUp = class extends SvelteComponent {
11828
11972
  constructor(options) {
11829
11973
  super();
11830
- init(this, options, null, create_fragment22, safe_not_equal, {});
11974
+ init(this, options, instance13, create_fragment22, safe_not_equal, { width: 0, height: 1 });
11975
+ }
11976
+ get width() {
11977
+ return this.$$.ctx[0];
11978
+ }
11979
+ set width(width) {
11980
+ this.$$set({ width });
11981
+ flush();
11982
+ }
11983
+ get height() {
11984
+ return this.$$.ctx[1];
11985
+ }
11986
+ set height(height) {
11987
+ this.$$set({ height });
11988
+ flush();
11831
11989
  }
11832
11990
  };
11833
- create_custom_element(SmallChevronUp, {}, [], [], true);
11991
+ create_custom_element(SmallChevronUp, { "width": {}, "height": {} }, [], [], true);
11834
11992
  var SmallChevronUp_default = SmallChevronUp;
11835
11993
 
11836
11994
  // src/lib/assets/img/messaging/SmallChevronDown.svelte
@@ -11845,17 +12003,47 @@
11845
12003
  attr(path, "clip-rule", "evenodd");
11846
12004
  attr(path, "d", "M4 3.05719L6.86193 0.195262C7.12228 -0.0650874 7.54439 -0.0650874 7.80474 0.195262C8.06509 0.455612 8.06509 0.877721 7.80474 1.13807L4.4714 4.4714C4.21105 4.73175 3.78895 4.73175 3.5286 4.4714L0.195262 1.13807C-0.0650874 0.877721 -0.0650874 0.455612 0.195262 0.195262C0.455612 -0.0650874 0.877721 -0.0650874 1.13807 0.195262L4 3.05719Z");
11847
12005
  attr(path, "fill", "currentColor");
11848
- attr(svg, "width", "8");
11849
- attr(svg, "height", "5");
12006
+ attr(
12007
+ svg,
12008
+ "width",
12009
+ /*width*/
12010
+ ctx[0]
12011
+ );
12012
+ attr(
12013
+ svg,
12014
+ "height",
12015
+ /*height*/
12016
+ ctx[1]
12017
+ );
11850
12018
  attr(svg, "viewBox", "0 0 8 5");
11851
12019
  attr(svg, "fill", "none");
11852
12020
  attr(svg, "xmlns", "http://www.w3.org/2000/svg");
12021
+ attr(svg, "aria-hidden", "true");
11853
12022
  },
11854
12023
  m(target, anchor) {
11855
12024
  insert(target, svg, anchor);
11856
12025
  append(svg, path);
11857
12026
  },
11858
- p: noop,
12027
+ p(ctx2, [dirty]) {
12028
+ if (dirty & /*width*/
12029
+ 1) {
12030
+ attr(
12031
+ svg,
12032
+ "width",
12033
+ /*width*/
12034
+ ctx2[0]
12035
+ );
12036
+ }
12037
+ if (dirty & /*height*/
12038
+ 2) {
12039
+ attr(
12040
+ svg,
12041
+ "height",
12042
+ /*height*/
12043
+ ctx2[1]
12044
+ );
12045
+ }
12046
+ },
11859
12047
  i: noop,
11860
12048
  o: noop,
11861
12049
  d(detaching) {
@@ -11865,13 +12053,38 @@
11865
12053
  }
11866
12054
  };
11867
12055
  }
12056
+ function instance14($$self, $$props, $$invalidate) {
12057
+ let { width = 8 } = $$props;
12058
+ let { height = 5 } = $$props;
12059
+ $$self.$$set = ($$props2) => {
12060
+ if ("width" in $$props2)
12061
+ $$invalidate(0, width = $$props2.width);
12062
+ if ("height" in $$props2)
12063
+ $$invalidate(1, height = $$props2.height);
12064
+ };
12065
+ return [width, height];
12066
+ }
11868
12067
  var SmallChevronDown = class extends SvelteComponent {
11869
12068
  constructor(options) {
11870
12069
  super();
11871
- init(this, options, null, create_fragment23, safe_not_equal, {});
12070
+ init(this, options, instance14, create_fragment23, safe_not_equal, { width: 0, height: 1 });
12071
+ }
12072
+ get width() {
12073
+ return this.$$.ctx[0];
12074
+ }
12075
+ set width(width) {
12076
+ this.$$set({ width });
12077
+ flush();
12078
+ }
12079
+ get height() {
12080
+ return this.$$.ctx[1];
12081
+ }
12082
+ set height(height) {
12083
+ this.$$set({ height });
12084
+ flush();
11872
12085
  }
11873
12086
  };
11874
- create_custom_element(SmallChevronDown, {}, [], [], true);
12087
+ create_custom_element(SmallChevronDown, { "width": {}, "height": {} }, [], [], true);
11875
12088
  var SmallChevronDown_default = SmallChevronDown;
11876
12089
 
11877
12090
  // src/lib/assets/img/messaging/SmallChevronLeft.svelte
@@ -14078,7 +14291,7 @@
14078
14291
  }
14079
14292
  };
14080
14293
  }
14081
- function instance13($$self, $$props, $$invalidate) {
14294
+ function instance15($$self, $$props, $$invalidate) {
14082
14295
  let { sessionData } = $$props;
14083
14296
  let { isFinished = false } = $$props;
14084
14297
  let { isPreviewMode = false } = $$props;
@@ -14507,7 +14720,7 @@
14507
14720
  init(
14508
14721
  this,
14509
14722
  options,
14510
- instance13,
14723
+ instance15,
14511
14724
  create_fragment27,
14512
14725
  safe_not_equal,
14513
14726
  {
@@ -14560,94 +14773,149 @@
14560
14773
  customElements.define("prompt-categorise", create_custom_element(PromptCategorise, { "sessionData": {}, "isFinished": { "type": "Boolean" }, "isPreviewMode": { "type": "Boolean" }, "isPreviewModeInteractive": { "type": "Boolean" }, "isDataSaving": { "type": "Boolean" } }, [], [], true));
14561
14774
  var PromptCategorise_default = PromptCategorise;
14562
14775
 
14563
- // src/lib/components/prompt/skeleton/PromptSkeleton.svelte
14564
- function create_fragment28(ctx) {
14565
- let div3;
14776
+ // src/lib/components/prompt/dropdown/PromptDropdownContainer.svelte
14777
+ function get_each_context5(ctx, list, i) {
14778
+ const child_ctx = ctx.slice();
14779
+ child_ctx[28] = list[i];
14780
+ child_ctx[30] = i;
14781
+ return child_ctx;
14782
+ }
14783
+ function create_else_block_32(ctx) {
14784
+ let t0;
14785
+ let t1;
14566
14786
  return {
14567
14787
  c() {
14568
- div3 = element("div");
14569
- div3.innerHTML = `<div class="animate-skeleton w-full h-6 mb-2 rounded md:mb-4"></div> <div class="animate-skeleton w-full h-6 mb-12 rounded"></div> <div class="animate-skeleton w-full h-52 rounded"></div>`;
14788
+ t0 = text("Item number ");
14789
+ t1 = text(
14790
+ /*idNo*/
14791
+ ctx[8]
14792
+ );
14570
14793
  },
14571
14794
  m(target, anchor) {
14572
- insert(target, div3, anchor);
14795
+ insert(target, t0, anchor);
14796
+ insert(target, t1, anchor);
14573
14797
  },
14574
14798
  p: noop,
14575
- i: noop,
14576
- o: noop,
14577
14799
  d(detaching) {
14578
14800
  if (detaching) {
14579
- detach(div3);
14801
+ detach(t0);
14802
+ detach(t1);
14580
14803
  }
14581
14804
  }
14582
14805
  };
14583
14806
  }
14584
- var PromptSkeleton = class extends SvelteComponent {
14585
- constructor(options) {
14586
- super();
14587
- init(this, options, null, create_fragment28, safe_not_equal, {});
14807
+ function create_if_block_37(ctx) {
14808
+ let t0;
14809
+ let show_if;
14810
+ let t1;
14811
+ let t2;
14812
+ function select_block_type_1(ctx2, dirty) {
14813
+ if (dirty & /*selected*/
14814
+ 64)
14815
+ show_if = null;
14816
+ if (show_if == null)
14817
+ show_if = !!/*getSessionCorrectAnswer*/
14818
+ ctx2[12]().includes(
14819
+ /*selected*/
14820
+ ctx2[6]
14821
+ );
14822
+ if (show_if)
14823
+ return create_if_block_45;
14824
+ return create_else_block_22;
14588
14825
  }
14589
- };
14590
- customElements.define("prompt-skeleton", create_custom_element(PromptSkeleton, {}, [], [], true));
14591
- var PromptSkeleton_default = PromptSkeleton;
14592
-
14593
- // src/lib/components/prompt/PromptBuilder.svelte
14594
- function add_css2(target) {
14595
- append_styles(target, "svelte-1u9vntl", '*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;font-feature-settings:normal;font-family:Mulish, sans-serif;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*{font-family:Mulish, sans-serif}input::-moz-selection,textarea::-moz-selection{background-color:hsla(0, 0%, 85%, 0.4)}input::selection,textarea::selection{background-color:hsla(0, 0%, 85%, 0.4)}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.p2{font-size:0.875rem;font-weight:600;line-height:1.25rem;line-height:1.5}.blanket-overlay{--tw-bg-opacity:1;background-color:rgb(33 37 41/var(--tw-bg-opacity));inset:0;opacity:0.3;position:absolute}.item-heading{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity));font-size:1.25rem;letter-spacing:-0.025em;line-height:1.5rem}.focus-ring:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.hover-focus-ring:hover,.raw-focus-ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.divider{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(218 224 224/var(--tw-border-opacity))}@keyframes svelte-1u9vntl-pulse{50%{opacity:0.5}}.animate-skeleton{--tw-bg-opacity:1;animation:svelte-1u9vntl-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;background-color:rgb(226 232 240/var(--tw-bg-opacity))}.btn-mcq-option:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-ring-offset-color:#212529;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.btn-mcq-option{--tw-text-opacity:1;--tw-border-opacity:1;--tw-bg-opacity:1;align-items:center;background-color:rgb(248 248 248/var(--tw-bg-opacity));border-color:rgb(75 85 99/var(--tw-border-opacity));border-radius:0.5rem;border-width:1px;color:rgb(33 37 41/var(--tw-text-opacity));display:flex;font-size:1rem;justify-content:space-between;line-height:1.5rem;line-height:19.2px;margin-bottom:1rem;min-height:52px;padding:0.25rem 0.75rem;width:100%}.btn-mcq-option:active{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}@media(hover: hover) and (pointer: fine){.btn-mcq-option:hover{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity));border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}}.btn-mcq-option{box-sizing:border-box}.btn-mcq-option:active{--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity))}.btn-mcq-option>span>span>.choice{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;align-items:center;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(156 163 175/var(--tw-border-opacity));border-radius:1rem;border-width:1px;color:rgb(33 37 41/var(--tw-text-opacity));display:flex;font-size:1rem;font-weight:700;height:2rem;justify-content:center;letter-spacing:0.05em;line-height:1rem;margin-right:1rem;padding:0.5rem;width:2rem}.btn-mcq-option.selected{--tw-border-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity));border-color:rgb(40 44 135/var(--tw-border-opacity));border-width:2px}.btn-mcq-option.selected,.btn-mcq-option.selected:active{--tw-bg-opacity:1;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.btn-mcq-option.selected:active{background-color:rgb(84 101 251/var(--tw-bg-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option.selected:hover{--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}}.btn-mcq-option.finished{cursor:default}.btn-mcq-option.finished:active,.btn-mcq-option.finished:hover{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity));border-color:rgb(75 85 99/var(--tw-border-opacity));border-width:1px}.btn-mcq-option.selected>span>span>.choice{--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity))}.btn-mcq-option>span>span>.custom-checkbox{--tw-border-opacity:1;--tw-bg-opacity:1;align-items:center;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(75 85 99/var(--tw-border-opacity));border-radius:0.25rem;border-width:1px;display:flex;height:1.75rem;justify-content:center;margin-left:1rem;pointer-events:none;width:1.75rem}@media(hover: hover) and (pointer: fine){.btn-mcq-option:hover>span>span>.custom-checkbox{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}.btn-mcq-option:hover>span>span>.custom-checkbox.preview-only{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));border-width:1px}}.btn-mcq-option:active>span>span>.custom-checkbox{--tw-border-opacity:1;border-color:rgb(40 44 135/var(--tw-border-opacity));border-width:2px}.btn-mcq-option.selected>span>span>.custom-checkbox{--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity));border-width:0;pointer-events:none}@media(hover: hover) and (pointer: fine){.btn-mcq-option.selected:hover>span>span>.custom-checkbox{--tw-bg-opacity:1;background-color:rgb(76 91 226/var(--tw-bg-opacity));border-width:0}}.btn-mcq-option.selected:active>span>span>.custom-checkbox{--tw-bg-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity));border-width:0}.btn-mcq-option.missing.correct{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity));border-color:rgb(21 128 61/var(--tw-border-opacity));border-width:1px;padding-bottom:0.5rem;padding-top:0.5rem}@media(hover: hover) and (pointer: fine){.btn-mcq-option.correct.interactive:active,.btn-mcq-option.correct.interactive:hover,.btn-mcq-option.incorrect.interactive:active,.btn-mcq-option.incorrect.interactive:hover,.btn-mcq-option.missing.interactive:active,.btn-mcq-option.missing.interactive:hover{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity));border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}}.btn-mcq-option.selected.correct{background-color:rgb(240 253 244/var(--tw-bg-opacity));border-color:rgb(21 128 61/var(--tw-border-opacity));border-width:1px}.btn-mcq-option.selected.correct,.btn-mcq-option.selected.incorrect{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.btn-mcq-option.selected.incorrect{background-color:rgb(253 242 248/var(--tw-bg-opacity));border-color:rgb(190 24 93/var(--tw-border-opacity));border-width:1px}.btn-mcq-option.selected.correct>span>span>.choice,.btn-mcq-option.selected.incorrect>span>span>.choice{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(113 115 119/var(--tw-border-opacity));border-width:1px}.typein-textbox:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.typein-textbox{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(75 85 99/var(--tw-border-opacity));border-radius:0.5rem;border-width:1px;color:rgb(33 37 41/var(--tw-text-opacity));font-size:1rem;line-height:1.5rem;padding:0.75rem 1rem;width:100%}.typein-textbox::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(55 65 81/var(--tw-placeholder-opacity))}.typein-textbox::placeholder{--tw-placeholder-opacity:1;color:rgb(55 65 81/var(--tw-placeholder-opacity))}.typein-textbox:focus{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}}.typein-textbox:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0)) !important}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{transition-duration:50ms}}.typein-textbox:focus-visible{outline-color:#212529;outline-width:2px}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{outline-color:#212529;outline-width:2px}}.typein-textbox:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity))}.inline-typein-container>p{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity));font-size:1.25rem;font-weight:600;line-height:3rem}#dnd-action-dragged-el{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-border-opacity:1!important;--tw-bg-opacity:1!important;background-color:rgb(205 208 254/var(--tw-bg-opacity)) !important;border-color:rgb(93 99 107/var(--tw-border-opacity)) !important;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));cursor:grabbing !important;outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}#dnd-action-dragged-el .btn-vertical-icon{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity));cursor:grabbing !important}#dnd-action-dragged-el .preview-icon{display:none !important}#dnd-action-dragged-el .preview-vertical{display:block !important}.category-content>.missing-answer-label{display:block}.category-content>.missing-answer-label~.missing-answer-label{display:none}.text-stimulus{padding-bottom:1rem;padding-top:1rem}.text-stimulus p{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity));font-size:1.25rem;line-height:1.75rem;padding-bottom:0.5rem}.text-stimulus ol,.text-stimulus ul{font-size:1rem;line-height:1.5rem;list-style-position:inside;padding-bottom:0.5rem;padding-left:0.5rem}.text-stimulus ol ::marker,.text-stimulus ul ::marker{color:#282c87}.text-stimulus ol::marker,.text-stimulus ul::marker{color:#282c87}.text-stimulus ul{list-style-type:disc}.text-stimulus ol{list-style-type:decimal}.text-stimulus ul li>p{margin-left:-0.5rem}.text-stimulus ol>li>p,.text-stimulus ul>li>p{display:inline;font-size:1rem;line-height:1.5rem;padding-bottom:0;padding-top:0}.text-stimulus div.table-container:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.text-stimulus div.table-container{border-radius:0.5rem;overflow:auto;padding-left:0.125rem;padding-right:0.125rem}.text-stimulus table{--tw-border-spacing-x:0.75rem;--tw-border-spacing-y:0.75rem;--tw-shadow:0 0 0 1px #9ca3af;--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color);border-radius:0.5rem;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);margin-bottom:1rem;margin-top:0.5rem;overflow-x:auto;width:100%}.text-stimulus table tr{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(156 163 175/var(--tw-border-opacity))}.text-stimulus table tr:last-child{border-color:transparent}.text-stimulus table td,.text-stimulus table th{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity));border-left-width:1px;min-width:140px}.text-stimulus table td:first-child,.text-stimulus table th:first-child{border-style:none}.text-stimulus table td>p,.text-stimulus table th>p{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity));font-size:1rem;line-height:1.5rem;padding:0.75rem;text-align:left}.text-stimulus table th>p{font-weight:400}.prompt p,.text-stimulus table th p{font-weight:600}.prompt p b,.prompt p b i,.prompt p b i u,.prompt p b u,.prompt p b u i,.prompt p i b,.prompt p i b u,.prompt p i u b,.prompt p u b,.prompt p u b i,.prompt p u i b,.text-stimulus table th p b,.text-stimulus table th p b i,.text-stimulus table th p b i u,.text-stimulus table th p b u,.text-stimulus table th p b u i,.text-stimulus table th p i b,.text-stimulus table th p i b u,.text-stimulus table th p i u b,.text-stimulus table th p u b,.text-stimulus table th p u b i,.text-stimulus table th p u i b{font-weight:900}.sr-only{clip:rect(0, 0, 0, 0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-y-0{bottom:0;top:0}.-top-2{top:-0.5rem}.-top-2\\.5{top:-0.625rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-\\[7px\\]{bottom:7px}.left-0{left:0}.left-4{left:1rem}.left-\\[-9999px\\]{left:-9999px}.right-0{right:0}.right-4{right:1rem}.top-0{top:0}.top-1{top:0.25rem}.top-1\\/2{top:50%}.top-12{top:3rem}.top-3{top:0.75rem}.top-3\\.5{top:0.875rem}.top-\\[13px\\]{top:13px}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.m-auto{margin:auto}.mx-0{margin-left:0;margin-right:0}.mx-0\\.5{margin-left:0.125rem;margin-right:0.125rem}.my-2{margin-bottom:0.5rem;margin-top:0.5rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.my-auto{margin-bottom:auto;margin-top:auto}.-mt-0{margin-top:0}.-mt-0\\.5{margin-top:-0.125rem}.mb-1{margin-bottom:0.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:0.25rem}.ml-3{margin-left:0.75rem}.ml-8{margin-left:2rem}.ml-8\\.5{margin-left:2.125rem}.ml-\\[3px\\]{margin-left:3px}.mr-1{margin-right:0.25rem}.mr-2{margin-right:0.5rem}.mr-4{margin-right:1rem}.mt-0{margin-top:0}.mt-0\\.5{margin-top:0.125rem}.mt-1{margin-top:0.25rem}.mt-2{margin-top:0.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-7\\.5{margin-top:1.875}.mt-9{margin-top:2.25rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-10\\.5{height:2.625rem}.h-11{height:2.75rem}.h-2{height:0.5rem}.h-4{height:1rem}.h-52{height:13rem}.h-6{height:1.5rem}.h-fit{height:-moz-fit-content;height:fit-content}.h-full{height:100%}.max-h-\\[470px\\]{max-height:470px}.max-h-\\[660px\\]{max-height:660px}.min-h-\\[133px\\]{min-height:133px}.min-h-\\[140px\\]{min-height:140px}.min-h-\\[54px\\]{min-height:54px}.min-h-\\[86px\\]{min-height:86px}.w-11{width:2.75rem}.w-2{width:0.5rem}.w-2\\/4{width:50%}.w-3{width:0.75rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-8{width:2rem}.w-8\\.5{width:2.125rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-\\[44px\\]{min-width:44px}.min-w-\\[85px\\]{min-width:85px}.max-w-\\[400px\\]{max-width:400px}.grow{flex-grow:1}.basis-0{flex-basis:0px}.-translate-y-1\\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\!cursor-default{cursor:default !important}.\\!cursor-pointer{cursor:pointer !important}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:0.5rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0.5rem * var(--tw-space-y-reverse));margin-top:calc(0.5rem * (1 - var(--tw-space-y-reverse)))}.space-y-reverse>:not([hidden])~:not([hidden]){--tw-space-y-reverse:1}.overflow-hidden,.truncate{overflow:hidden}.truncate{text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:0.25rem}.rounded-\\[32px\\]{border-radius:32px}.rounded-lg{border-radius:0.5rem}.rounded-md{border-radius:0.375rem}.rounded-b-lg{border-bottom-right-radius:0.5rem}.rounded-b-lg,.rounded-l-lg{border-bottom-left-radius:0.5rem}.rounded-l-lg,.rounded-t-lg{border-top-left-radius:0.5rem}.rounded-t-lg{border-top-right-radius:0.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-l-6,.border-l-\\[6px\\]{border-left-width:6px}.border-dashed{border-style:dashed}.\\!border-blue-1000{--tw-border-opacity:1!important;border-color:rgb(40 44 135/var(--tw-border-opacity)) !important}.border-blue-1000{--tw-border-opacity:1;border-color:rgb(40 44 135/var(--tw-border-opacity))}.border-blue-950{--tw-border-opacity:1;border-color:rgb(29 78 216/var(--tw-border-opacity))}.border-charcoal{--tw-border-opacity:1;border-color:rgb(33 37 41/var(--tw-border-opacity))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.border-gray-800{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.border-gray-850{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity))}.border-green-800{--tw-border-opacity:1;border-color:rgb(0 102 5/var(--tw-border-opacity))}.border-green-900{--tw-border-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity))}.border-red-600{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.border-red-800{--tw-border-opacity:1;border-color:rgb(217 12 85/var(--tw-border-opacity))}.border-red-900{--tw-border-opacity:1;border-color:rgb(190 24 93/var(--tw-border-opacity))}.border-soft-blue{--tw-border-opacity:1;border-color:rgb(84 101 251/var(--tw-border-opacity))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity))}.\\!bg-violet-100{--tw-bg-opacity:1!important;background-color:rgb(235 235 255/var(--tw-bg-opacity)) !important}.\\!bg-violet-150{--tw-bg-opacity:1!important;background-color:rgb(205 208 254/var(--tw-bg-opacity)) !important}.\\!bg-white{--tw-bg-opacity:1!important;background-color:rgb(255 255 255/var(--tw-bg-opacity)) !important}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-blue-1000{--tw-bg-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(247 250 250/var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(244 244 244/var(--tw-bg-opacity))}.bg-green-300{--tw-bg-opacity:1;background-color:rgb(241 254 241/var(--tw-bg-opacity))}.bg-red-200{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(253 243 247/var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(253 242 248/var(--tw-bg-opacity))}.bg-soft-blue{--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-violet-100{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.bg-violet-150{--tw-bg-opacity:1;background-color:rgb(205 208 254/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-yellow-1000{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity))}.p-0{padding:0}.p-0\\.5{padding:0.125rem}.p-1{padding:0.25rem}.p-1\\.5{padding:0.375rem}.p-2{padding:0.5rem}.p-3{padding:0.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-3{padding-left:0.75rem;padding-right:0.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-bottom:0.25rem;padding-top:0.25rem}.py-1\\.5{padding-bottom:0.375rem;padding-top:0.375rem}.py-2{padding-bottom:0.5rem;padding-top:0.5rem}.py-\\[9px\\]{padding-bottom:9px;padding-top:9px}.\\!pr-11{padding-right:2.75rem !important}.pb-0{padding-bottom:0}.pb-10{padding-bottom:2.5rem}.pb-2{padding-bottom:0.5rem}.pb-3{padding-bottom:0.75rem}.pl-13\\.2{padding-left:3.125rem}.pl-24{padding-left:6rem}.pl-3{padding-left:0.75rem}.pl-4{padding-left:1rem}.pr-3{padding-right:0.75rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-0\\.5{padding-top:0.125rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-\\[15px\\]{padding-top:15px}.pt-\\[55px\\]{padding-top:55px}.text-left{text-align:left}.text-center{text-align:center}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:0.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-\\[19\\.2px\\]{line-height:19.2px}.leading-\\[19px\\]{line-height:19px}.leading-\\[22px\\]{line-height:22px}.\\!text-gray-900{--tw-text-opacity:1!important;color:rgb(57 62 69/var(--tw-text-opacity)) !important}.text-blue-1000{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}.text-blue-950{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity))}.text-charcoal{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity:1;color:rgb(93 99 107/var(--tw-text-opacity))}.text-gray-860{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-green-800{--tw-text-opacity:1;color:rgb(0 102 5/var(--tw-text-opacity))}.text-green-900{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity))}.text-inherit{color:inherit}.text-red-800{--tw-text-opacity:1;color:rgb(217 12 85/var(--tw-text-opacity))}.text-red-900{--tw-text-opacity:1;color:rgb(190 24 93/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.opacity-5{opacity:0.05}.opacity-50{opacity:0.5}.shadow-\\[0_-12px_14px_-16px_\\#00000033\\]{--tw-shadow:0 -12px 14px -16px #00000033;--tw-shadow-colored:0 -12px 14px -16px var(--tw-shadow-color)}.shadow-\\[0_-12px_14px_-16px_\\#00000033\\],.shadow-md{box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow)}.shadow-md{--tw-shadow:0px 2px 8px rgba(0,0,0,.2);--tw-shadow-colored:0px 2px 8px var(--tw-shadow-color)}.\\!outline-none{outline:2px solid transparent !important;outline-offset:2px !important}.outline-none{outline:2px solid transparent;outline-offset:2px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:0.15s;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.duration-300{transition-duration:0.3s}.active\\:raw-focus-ring-by:active{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-ring-offset-color:#212529}.active\\:raw-focus-ring-by:active,.active\\:raw-focus-ring:active{box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.active\\:raw-focus-ring:active{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px}@media(min-width: 732px){.md\\:item-heading{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity));font-size:1.25rem;letter-spacing:-0.025em;line-height:1.5rem}.category-content>.md\\:missing-answer-label{display:block}.category-content>.md\\:missing-answer-label~.md\\:missing-answer-label{display:none}}@media(hover: hover) and (pointer: fine){.td\\:hover-focus-ring:hover{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}}.last\\:mr-0:last-child{margin-right:0}.focus-within\\:left-0:focus-within{left:0}.focus-within\\:right-0:focus-within{right:0}.focus-within\\:top-0:focus-within{top:0}.focus-within\\:z-30:focus-within{z-index:30}.hover\\:bg-black-50:hover{background-color:rgba(0, 0, 0, 0.0509803922)}.hover\\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(222 222 255/var(--tw-bg-opacity))}.hover\\:bg-violet-100:hover{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.hover\\:bg-yellow-1000:hover{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity))}.hover\\:text-charcoal:hover{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.focus\\:outline-transparent:focus{outline-color:transparent}.focus-visible\\:border:focus-visible{border-width:1px}.focus-visible\\:border-charcoal:focus-visible{--tw-border-opacity:1;border-color:rgb(33 37 41/var(--tw-border-opacity))}.focus-visible\\:border-gray-400:focus-visible{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.focus-visible\\:border-gray-800:focus-visible{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.active\\:bg-black-55:active,.active\\:bg-black-60:active{background-color:rgba(0, 0, 0, 0.1019607843)}.active\\:bg-yellow-1100:active{--tw-bg-opacity:1;background-color:rgb(238 206 26/var(--tw-bg-opacity))}.active\\:text-charcoal:active{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.disabled\\:text-gray-40:disabled{--tw-text-opacity:1;color:rgb(142 147 153/var(--tw-text-opacity))}.disabled\\:hover\\:bg-white:hover:disabled{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.group\\/itemContainer:hover .group-hover\\/itemContainer\\:bg-violet-100{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.group:hover .group-hover\\:underline{text-decoration-line:underline}@media(min-width: 732px){.md\\:inset-0{inset:0}.md\\:top-20{top:5rem}.md\\:mb-2{margin-bottom:0.5rem}.md\\:mb-4{margin-bottom:1rem}.md\\:mb-8{margin-bottom:2rem}.md\\:ml-0{margin-left:0}.md\\:mt-0{margin-top:0}.md\\:mt-14{margin-top:3.5rem}.md\\:block{display:block}.md\\:inline-block{display:inline-block}.md\\:flex{display:flex}.md\\:hidden{display:none}.md\\:h-fit{height:-moz-fit-content;height:fit-content}.md\\:min-h-0{min-height:0}.md\\:min-h-\\[140px\\]{min-height:140px}.md\\:min-h-\\[164px\\]{min-height:164px}.md\\:w-1\\/2{width:50%}.md\\:w-fit{width:-moz-fit-content;width:fit-content}.md\\:grow-0{flex-grow:0}.md\\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.md\\:flex-row{flex-direction:row}.md\\:flex-col{flex-direction:column}.md\\:items-center{align-items:center}.md\\:justify-normal{justify-content:normal}.md\\:justify-center{justify-content:center}.md\\:justify-between{justify-content:space-between}.md\\:gap-6{gap:1.5rem}.md\\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px * var(--tw-space-y-reverse));margin-top:calc(0px * (1 - var(--tw-space-y-reverse)))}.md\\:rounded-b-none{border-bottom-left-radius:0;border-bottom-right-radius:0}.md\\:border{border-width:1px}.md\\:border-gray-400{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.md\\:\\!bg-white{--tw-bg-opacity:1!important;background-color:rgb(255 255 255/var(--tw-bg-opacity)) !important}.md\\:p-4{padding:1rem}.md\\:px-0{padding-left:0;padding-right:0}.md\\:pb-0{padding-bottom:0}.md\\:pl-13\\.2{padding-left:3.125rem}.md\\:pl-4{padding-left:1rem}.md\\:pr-4{padding-right:1rem}.md\\:pt-20{padding-top:5rem}.md\\:pt-20\\.5{padding-top:5.125rem}.md\\:text-center{text-align:center}.md\\:shadow-\\[0_0_\\#0000\\]{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow)}.group\\/itemContainer:hover .md\\:group-hover\\/itemContainer\\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}}@media(min-width: 1196px){.lg\\:mr-6{margin-right:1.5rem}.lg\\:flex{display:flex}.lg\\:hidden{display:none}.lg\\:min-h-\\[224px\\]{min-height:224px}.lg\\:w-full{width:100%}.lg\\:max-w-\\[50\\%\\]{max-width:50%}.lg\\:grow{flex-grow:1}.lg\\:basis-1\\/2{flex-basis:50%}.lg\\:items-center{align-items:center}.lg\\:justify-between{justify-content:space-between}.lg\\:gap-0{gap:0}.lg\\:last\\:mr-0:last-child{margin-right:0}}@media(hover: hover) and (pointer: fine){.td\\:hover\\:cursor-grab:hover{cursor:grab}.td\\:hover\\:border-gray-800:hover{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.td\\:hover\\:bg-black-50:hover{background-color:rgba(0, 0, 0, 0.0509803922)}.td\\:hover\\:bg-violet-100:hover{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.td\\:hover\\:text-soft-blue:hover{--tw-text-opacity:1;color:rgb(84 101 251/var(--tw-text-opacity))}.group:hover .td\\:group-hover\\:bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.group:hover .td\\:group-hover\\:opacity-5{opacity:0.05}}');
14826
+ let current_block_type = select_block_type_1(ctx, -1);
14827
+ let if_block = current_block_type(ctx);
14828
+ return {
14829
+ c() {
14830
+ t0 = text("Student's answer (");
14831
+ if_block.c();
14832
+ t1 = text("),\n Item number ");
14833
+ t2 = text(
14834
+ /*idNo*/
14835
+ ctx[8]
14836
+ );
14837
+ },
14838
+ m(target, anchor) {
14839
+ insert(target, t0, anchor);
14840
+ if_block.m(target, anchor);
14841
+ insert(target, t1, anchor);
14842
+ insert(target, t2, anchor);
14843
+ },
14844
+ p(ctx2, dirty) {
14845
+ if (current_block_type !== (current_block_type = select_block_type_1(ctx2, dirty))) {
14846
+ if_block.d(1);
14847
+ if_block = current_block_type(ctx2);
14848
+ if (if_block) {
14849
+ if_block.c();
14850
+ if_block.m(t1.parentNode, t1);
14851
+ }
14852
+ }
14853
+ },
14854
+ d(detaching) {
14855
+ if (detaching) {
14856
+ detach(t0);
14857
+ detach(t1);
14858
+ detach(t2);
14859
+ }
14860
+ if_block.d(detaching);
14861
+ }
14862
+ };
14596
14863
  }
14597
- function create_else_block_12(ctx) {
14598
- let invalidbanner;
14599
- let current;
14600
- invalidbanner = new InvalidBanner_default({ props: { bannerLabel } });
14864
+ function create_else_block_22(ctx) {
14865
+ let t2;
14601
14866
  return {
14602
14867
  c() {
14603
- create_component(invalidbanner.$$.fragment);
14868
+ t2 = text("Incorrect");
14604
14869
  },
14605
14870
  m(target, anchor) {
14606
- mount_component(invalidbanner, target, anchor);
14607
- current = true;
14871
+ insert(target, t2, anchor);
14608
14872
  },
14609
- p: noop,
14610
- i(local) {
14611
- if (current)
14612
- return;
14613
- transition_in(invalidbanner.$$.fragment, local);
14614
- current = true;
14873
+ d(detaching) {
14874
+ if (detaching) {
14875
+ detach(t2);
14876
+ }
14877
+ }
14878
+ };
14879
+ }
14880
+ function create_if_block_45(ctx) {
14881
+ let t2;
14882
+ return {
14883
+ c() {
14884
+ t2 = text("Correct");
14615
14885
  },
14616
- o(local) {
14617
- transition_out(invalidbanner.$$.fragment, local);
14618
- current = false;
14886
+ m(target, anchor) {
14887
+ insert(target, t2, anchor);
14619
14888
  },
14620
14889
  d(detaching) {
14621
- destroy_component(invalidbanner, detaching);
14890
+ if (detaching) {
14891
+ detach(t2);
14892
+ }
14622
14893
  }
14623
14894
  };
14624
14895
  }
14625
14896
  function create_if_block_110(ctx) {
14897
+ let show_if;
14626
14898
  let current_block_type_index;
14627
14899
  let if_block;
14628
14900
  let if_block_anchor;
14629
14901
  let current;
14630
- const if_block_creators = [create_if_block_29, create_if_block_37, create_if_block_45, create_else_block5];
14902
+ const if_block_creators = [create_if_block_29, create_else_block_12];
14631
14903
  const if_blocks = [];
14632
- function select_block_type_1(ctx2, dirty) {
14633
- if (
14634
- /*interactionType*/
14635
- ctx2[3] === INTERACTION_TYPE_MCQ
14636
- )
14904
+ function select_block_type_2(ctx2, dirty) {
14905
+ if (dirty & /*selected*/
14906
+ 64)
14907
+ show_if = null;
14908
+ if (show_if == null)
14909
+ show_if = !!/*getSessionCorrectAnswer*/
14910
+ ctx2[12]().includes(
14911
+ /*selected*/
14912
+ ctx2[6]
14913
+ );
14914
+ if (show_if)
14637
14915
  return 0;
14638
- if (
14639
- /*interactionType*/
14640
- ctx2[3] === INTERACTION_TYPE_TYPEIN
14641
- )
14642
- return 1;
14643
- if (
14644
- /*interactionType*/
14645
- ctx2[3] === INTERACTION_TYPE_CATEGORISE
14646
- )
14647
- return 2;
14648
- return 3;
14916
+ return 1;
14649
14917
  }
14650
- current_block_type_index = select_block_type_1(ctx, -1);
14918
+ current_block_type_index = select_block_type_2(ctx, -1);
14651
14919
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
14652
14920
  return {
14653
14921
  c() {
@@ -14661,10 +14929,8 @@
14661
14929
  },
14662
14930
  p(ctx2, dirty) {
14663
14931
  let previous_block_index = current_block_type_index;
14664
- current_block_type_index = select_block_type_1(ctx2, dirty);
14665
- if (current_block_type_index === previous_block_index) {
14666
- if_blocks[current_block_type_index].p(ctx2, dirty);
14667
- } else {
14932
+ current_block_type_index = select_block_type_2(ctx2, dirty);
14933
+ if (current_block_type_index !== previous_block_index) {
14668
14934
  group_outros();
14669
14935
  transition_out(if_blocks[previous_block_index], 1, 1, () => {
14670
14936
  if_blocks[previous_block_index] = null;
@@ -14675,7 +14941,6 @@
14675
14941
  if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx2);
14676
14942
  if_block.c();
14677
14943
  } else {
14678
- if_block.p(ctx2, dirty);
14679
14944
  }
14680
14945
  transition_in(if_block, 1);
14681
14946
  if_block.m(if_block_anchor.parentNode, if_block_anchor);
@@ -14699,35 +14964,3234 @@
14699
14964
  }
14700
14965
  };
14701
14966
  }
14702
- function create_if_block11(ctx) {
14703
- let promptskeleton;
14967
+ function create_else_block_12(ctx) {
14968
+ let span;
14969
+ let errorsolid;
14704
14970
  let current;
14705
- promptskeleton = new PromptSkeleton_default({});
14971
+ errorsolid = new ErrorSolid_default({});
14706
14972
  return {
14707
14973
  c() {
14708
- create_component(promptskeleton.$$.fragment);
14974
+ span = element("span");
14975
+ create_component(errorsolid.$$.fragment);
14976
+ attr(span, "class", "text-red-900 mr-2");
14709
14977
  },
14710
14978
  m(target, anchor) {
14711
- mount_component(promptskeleton, target, anchor);
14979
+ insert(target, span, anchor);
14980
+ mount_component(errorsolid, span, null);
14712
14981
  current = true;
14713
14982
  },
14714
- p: noop,
14715
14983
  i(local) {
14716
14984
  if (current)
14717
14985
  return;
14718
- transition_in(promptskeleton.$$.fragment, local);
14986
+ transition_in(errorsolid.$$.fragment, local);
14719
14987
  current = true;
14720
14988
  },
14721
14989
  o(local) {
14722
- transition_out(promptskeleton.$$.fragment, local);
14990
+ transition_out(errorsolid.$$.fragment, local);
14723
14991
  current = false;
14724
14992
  },
14725
14993
  d(detaching) {
14726
- destroy_component(promptskeleton, detaching);
14727
- }
14728
- };
14729
- }
14994
+ if (detaching) {
14995
+ detach(span);
14996
+ }
14997
+ destroy_component(errorsolid);
14998
+ }
14999
+ };
15000
+ }
15001
+ function create_if_block_29(ctx) {
15002
+ let span;
15003
+ let successsolid;
15004
+ let current;
15005
+ successsolid = new SuccessSolid_default({});
15006
+ return {
15007
+ c() {
15008
+ span = element("span");
15009
+ create_component(successsolid.$$.fragment);
15010
+ attr(span, "class", "text-green-900 mr-2");
15011
+ },
15012
+ m(target, anchor) {
15013
+ insert(target, span, anchor);
15014
+ mount_component(successsolid, span, null);
15015
+ current = true;
15016
+ },
15017
+ i(local) {
15018
+ if (current)
15019
+ return;
15020
+ transition_in(successsolid.$$.fragment, local);
15021
+ current = true;
15022
+ },
15023
+ o(local) {
15024
+ transition_out(successsolid.$$.fragment, local);
15025
+ current = false;
15026
+ },
15027
+ d(detaching) {
15028
+ if (detaching) {
15029
+ detach(span);
15030
+ }
15031
+ destroy_component(successsolid);
15032
+ }
15033
+ };
15034
+ }
14730
15035
  function create_else_block5(ctx) {
15036
+ let span;
15037
+ let smallchevrondown;
15038
+ let current;
15039
+ smallchevrondown = new SmallChevronDown_default({ props: { width: 12, height: 7 } });
15040
+ return {
15041
+ c() {
15042
+ span = element("span");
15043
+ create_component(smallchevrondown.$$.fragment);
15044
+ attr(span, "class", "flex items-center justify-center text-blue-1000");
15045
+ },
15046
+ m(target, anchor) {
15047
+ insert(target, span, anchor);
15048
+ mount_component(smallchevrondown, span, null);
15049
+ current = true;
15050
+ },
15051
+ i(local) {
15052
+ if (current)
15053
+ return;
15054
+ transition_in(smallchevrondown.$$.fragment, local);
15055
+ current = true;
15056
+ },
15057
+ o(local) {
15058
+ transition_out(smallchevrondown.$$.fragment, local);
15059
+ current = false;
15060
+ },
15061
+ d(detaching) {
15062
+ if (detaching) {
15063
+ detach(span);
15064
+ }
15065
+ destroy_component(smallchevrondown);
15066
+ }
15067
+ };
15068
+ }
15069
+ function create_if_block11(ctx) {
15070
+ let span;
15071
+ let smallchevronup;
15072
+ let current;
15073
+ smallchevronup = new SmallChevronUp_default({ props: { width: 12, height: 7 } });
15074
+ return {
15075
+ c() {
15076
+ span = element("span");
15077
+ create_component(smallchevronup.$$.fragment);
15078
+ attr(span, "class", "flex items-center justify-center text-blue-1000");
15079
+ },
15080
+ m(target, anchor) {
15081
+ insert(target, span, anchor);
15082
+ mount_component(smallchevronup, span, null);
15083
+ current = true;
15084
+ },
15085
+ i(local) {
15086
+ if (current)
15087
+ return;
15088
+ transition_in(smallchevronup.$$.fragment, local);
15089
+ current = true;
15090
+ },
15091
+ o(local) {
15092
+ transition_out(smallchevronup.$$.fragment, local);
15093
+ current = false;
15094
+ },
15095
+ d(detaching) {
15096
+ if (detaching) {
15097
+ detach(span);
15098
+ }
15099
+ destroy_component(smallchevronup);
15100
+ }
15101
+ };
15102
+ }
15103
+ function create_each_block5(ctx) {
15104
+ let li;
15105
+ let div;
15106
+ let commonstringtohtml;
15107
+ let t0;
15108
+ let span0;
15109
+ let successsolid;
15110
+ let span0_class_value;
15111
+ let t1;
15112
+ let span1;
15113
+ let errorsolid;
15114
+ let span1_class_value;
15115
+ let t2;
15116
+ let li_id_value;
15117
+ let li_aria_selected_value;
15118
+ let li_aria_disabled_value;
15119
+ let current;
15120
+ let mounted;
15121
+ let dispose;
15122
+ commonstringtohtml = new CommonStringToHtml_default({
15123
+ props: {
15124
+ htmlString: (
15125
+ /*option*/
15126
+ ctx[28]
15127
+ ),
15128
+ otherClass: "dropdown-itemtext mr-2 \n " + (!/*isFinished*/
15129
+ ctx[1] ? "hover:hover-option" : "") + "\n " + /*index*/
15130
+ (ctx[30] === /*activeIndex*/
15131
+ ctx[7] ? "current-option" : "")
15132
+ }
15133
+ });
15134
+ successsolid = new SuccessSolid_default({});
15135
+ errorsolid = new ErrorSolid_default({});
15136
+ function mousedown_handler() {
15137
+ return (
15138
+ /*mousedown_handler*/
15139
+ ctx[20](
15140
+ /*option*/
15141
+ ctx[28],
15142
+ /*index*/
15143
+ ctx[30]
15144
+ )
15145
+ );
15146
+ }
15147
+ return {
15148
+ c() {
15149
+ li = element("li");
15150
+ div = element("div");
15151
+ create_component(commonstringtohtml.$$.fragment);
15152
+ t0 = space();
15153
+ span0 = element("span");
15154
+ create_component(successsolid.$$.fragment);
15155
+ t1 = space();
15156
+ span1 = element("span");
15157
+ create_component(errorsolid.$$.fragment);
15158
+ t2 = space();
15159
+ attr(span0, "class", span0_class_value = "flex items-center " + /*isFinished*/
15160
+ (ctx[1] && /*getSessionCorrectAnswer*/
15161
+ ctx[12]().includes(
15162
+ /*option*/
15163
+ ctx[28]
15164
+ ) ? "text-green-900" : (
15165
+ /*selected*/
15166
+ ctx[6] === /*option*/
15167
+ ctx[28] && !/*isFinished*/
15168
+ ctx[1] ? "text-blue-850" : "hidden"
15169
+ )));
15170
+ attr(span1, "class", span1_class_value = /*isFinished*/
15171
+ ctx[1] && !/*getSessionCorrectAnswer*/
15172
+ ctx[12]().includes(
15173
+ /*option*/
15174
+ ctx[28]
15175
+ ) ? "flex items-center text-red-900" : "hidden");
15176
+ attr(div, "class", "p-0.5 flex justify-between w-full text-base break-words whitespace-normal");
15177
+ attr(li, "id", li_id_value = "combo" + /*idNo*/
15178
+ ctx[8] + "-" + /*index*/
15179
+ ctx[30]);
15180
+ attr(li, "role", "option");
15181
+ attr(li, "aria-selected", li_aria_selected_value = /*index*/
15182
+ ctx[30] === /*activeIndex*/
15183
+ ctx[7]);
15184
+ attr(li, "placeholder", "Select answer");
15185
+ attr(li, "class", "dropdown-item flex align-middle items-center w-full");
15186
+ attr(li, "aria-disabled", li_aria_disabled_value = /*isFinished*/
15187
+ ctx[1] ? true : null);
15188
+ },
15189
+ m(target, anchor) {
15190
+ insert(target, li, anchor);
15191
+ append(li, div);
15192
+ mount_component(commonstringtohtml, div, null);
15193
+ append(div, t0);
15194
+ append(div, span0);
15195
+ mount_component(successsolid, span0, null);
15196
+ append(div, t1);
15197
+ append(div, span1);
15198
+ mount_component(errorsolid, span1, null);
15199
+ append(li, t2);
15200
+ current = true;
15201
+ if (!mounted) {
15202
+ dispose = [
15203
+ listen(li, "mousedown", function() {
15204
+ if (is_function(!/*isFinished*/
15205
+ ctx[1] ? mousedown_handler : (
15206
+ /*closeDropdownMenu*/
15207
+ ctx[10]
15208
+ )))
15209
+ (!/*isFinished*/
15210
+ ctx[1] ? mousedown_handler : (
15211
+ /*closeDropdownMenu*/
15212
+ ctx[10]
15213
+ )).apply(this, arguments);
15214
+ }),
15215
+ listen(
15216
+ li,
15217
+ "keydown",
15218
+ /*handleKeydown*/
15219
+ ctx[14]
15220
+ )
15221
+ ];
15222
+ mounted = true;
15223
+ }
15224
+ },
15225
+ p(new_ctx, dirty) {
15226
+ ctx = new_ctx;
15227
+ const commonstringtohtml_changes = {};
15228
+ if (dirty & /*options*/
15229
+ 8)
15230
+ commonstringtohtml_changes.htmlString = /*option*/
15231
+ ctx[28];
15232
+ if (dirty & /*isFinished, activeIndex*/
15233
+ 130)
15234
+ commonstringtohtml_changes.otherClass = "dropdown-itemtext mr-2 \n " + (!/*isFinished*/
15235
+ ctx[1] ? "hover:hover-option" : "") + "\n " + /*index*/
15236
+ (ctx[30] === /*activeIndex*/
15237
+ ctx[7] ? "current-option" : "");
15238
+ commonstringtohtml.$set(commonstringtohtml_changes);
15239
+ if (!current || dirty & /*isFinished, options, selected*/
15240
+ 74 && span0_class_value !== (span0_class_value = "flex items-center " + /*isFinished*/
15241
+ (ctx[1] && /*getSessionCorrectAnswer*/
15242
+ ctx[12]().includes(
15243
+ /*option*/
15244
+ ctx[28]
15245
+ ) ? "text-green-900" : (
15246
+ /*selected*/
15247
+ ctx[6] === /*option*/
15248
+ ctx[28] && !/*isFinished*/
15249
+ ctx[1] ? "text-blue-850" : "hidden"
15250
+ )))) {
15251
+ attr(span0, "class", span0_class_value);
15252
+ }
15253
+ if (!current || dirty & /*isFinished, options*/
15254
+ 10 && span1_class_value !== (span1_class_value = /*isFinished*/
15255
+ ctx[1] && !/*getSessionCorrectAnswer*/
15256
+ ctx[12]().includes(
15257
+ /*option*/
15258
+ ctx[28]
15259
+ ) ? "flex items-center text-red-900" : "hidden")) {
15260
+ attr(span1, "class", span1_class_value);
15261
+ }
15262
+ if (!current || dirty & /*activeIndex*/
15263
+ 128 && li_aria_selected_value !== (li_aria_selected_value = /*index*/
15264
+ ctx[30] === /*activeIndex*/
15265
+ ctx[7])) {
15266
+ attr(li, "aria-selected", li_aria_selected_value);
15267
+ }
15268
+ if (!current || dirty & /*isFinished*/
15269
+ 2 && li_aria_disabled_value !== (li_aria_disabled_value = /*isFinished*/
15270
+ ctx[1] ? true : null)) {
15271
+ attr(li, "aria-disabled", li_aria_disabled_value);
15272
+ }
15273
+ },
15274
+ i(local) {
15275
+ if (current)
15276
+ return;
15277
+ transition_in(commonstringtohtml.$$.fragment, local);
15278
+ transition_in(successsolid.$$.fragment, local);
15279
+ transition_in(errorsolid.$$.fragment, local);
15280
+ current = true;
15281
+ },
15282
+ o(local) {
15283
+ transition_out(commonstringtohtml.$$.fragment, local);
15284
+ transition_out(successsolid.$$.fragment, local);
15285
+ transition_out(errorsolid.$$.fragment, local);
15286
+ current = false;
15287
+ },
15288
+ d(detaching) {
15289
+ if (detaching) {
15290
+ detach(li);
15291
+ }
15292
+ destroy_component(commonstringtohtml);
15293
+ destroy_component(successsolid);
15294
+ destroy_component(errorsolid);
15295
+ mounted = false;
15296
+ run_all(dispose);
15297
+ }
15298
+ };
15299
+ }
15300
+ function create_fragment28(ctx) {
15301
+ let span1;
15302
+ let div0;
15303
+ let div0_class_value;
15304
+ let t0;
15305
+ let div5;
15306
+ let span0;
15307
+ let span0_id_value;
15308
+ let t1;
15309
+ let div2;
15310
+ let div1;
15311
+ let div2_class_value;
15312
+ let t3;
15313
+ let div4;
15314
+ let commonstringtohtml;
15315
+ let t4;
15316
+ let div3;
15317
+ let t5;
15318
+ let current_block_type_index;
15319
+ let if_block2;
15320
+ let div5_id_value;
15321
+ let div5_aria_controls_value;
15322
+ let div5_aria_expanded_value;
15323
+ let div5_aria_labelledby_value;
15324
+ let div5_aria_activedescendant_value;
15325
+ let t6;
15326
+ let ul;
15327
+ let ul_id_value;
15328
+ let ul_class_value;
15329
+ let ul_aria_labelledby_value;
15330
+ let current;
15331
+ let mounted;
15332
+ let dispose;
15333
+ function select_block_type(ctx2, dirty) {
15334
+ if (
15335
+ /*isFinished*/
15336
+ ctx2[1]
15337
+ )
15338
+ return create_if_block_37;
15339
+ return create_else_block_32;
15340
+ }
15341
+ let current_block_type = select_block_type(ctx, -1);
15342
+ let if_block0 = current_block_type(ctx);
15343
+ commonstringtohtml = new CommonStringToHtml_default({
15344
+ props: {
15345
+ htmlString: (
15346
+ /*selected*/
15347
+ ctx[6]
15348
+ ),
15349
+ otherClass: "truncate mr-2 " + /*selected*/
15350
+ (ctx[6] === "Select Answer" ? "text-gray-860" : "")
15351
+ }
15352
+ });
15353
+ let if_block1 = (
15354
+ /*isFinished*/
15355
+ ctx[1] && /*selected*/
15356
+ ctx[6] !== "Select Answer" && create_if_block_110(ctx)
15357
+ );
15358
+ const if_block_creators = [create_if_block11, create_else_block5];
15359
+ const if_blocks = [];
15360
+ function select_block_type_3(ctx2, dirty) {
15361
+ if (
15362
+ /*openDropdown*/
15363
+ ctx2[0] === /*options*/
15364
+ ctx2[3].id
15365
+ )
15366
+ return 0;
15367
+ return 1;
15368
+ }
15369
+ current_block_type_index = select_block_type_3(ctx, -1);
15370
+ if_block2 = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
15371
+ let each_value = ensure_array_like(
15372
+ /*options*/
15373
+ ctx[3].list
15374
+ );
15375
+ let each_blocks = [];
15376
+ for (let i = 0; i < each_value.length; i += 1) {
15377
+ each_blocks[i] = create_each_block5(get_each_context5(ctx, each_value, i));
15378
+ }
15379
+ const out = (i) => transition_out(each_blocks[i], 1, 1, () => {
15380
+ each_blocks[i] = null;
15381
+ });
15382
+ return {
15383
+ c() {
15384
+ span1 = element("span");
15385
+ div0 = element("div");
15386
+ t0 = space();
15387
+ div5 = element("div");
15388
+ span0 = element("span");
15389
+ if_block0.c();
15390
+ t1 = space();
15391
+ div2 = element("div");
15392
+ div1 = element("div");
15393
+ div1.textContent = `${/*idNo*/
15394
+ ctx[8]}`;
15395
+ t3 = space();
15396
+ div4 = element("div");
15397
+ create_component(commonstringtohtml.$$.fragment);
15398
+ t4 = space();
15399
+ div3 = element("div");
15400
+ if (if_block1)
15401
+ if_block1.c();
15402
+ t5 = space();
15403
+ if_block2.c();
15404
+ t6 = space();
15405
+ ul = element("ul");
15406
+ for (let i = 0; i < each_blocks.length; i += 1) {
15407
+ each_blocks[i].c();
15408
+ }
15409
+ attr(div0, "class", div0_class_value = "absolute inset-0 bg-transparent " + /*isDataSaving*/
15410
+ (ctx[2] ? "" : "hidden"));
15411
+ attr(span0, "id", span0_id_value = "combo-label-" + /*idNo*/
15412
+ ctx[8]);
15413
+ attr(span0, "class", "hidden");
15414
+ attr(span0, "aria-hidden", "true");
15415
+ attr(div1, "class", "font-semibold text-base leading-[19px] text-charcoal px-3 flex items-center");
15416
+ attr(div2, "class", div2_class_value = /*answer*/
15417
+ ctx[4].length > 1 ? "bg-black bg-opacity-5 h-full flex flex-none justify-center items-center" : "hidden");
15418
+ attr(div3, "class", "flex items-center");
15419
+ attr(div4, "class", "px-4 flex flex-1 min-w-0 align-middle truncate items-center justify-between w-full");
15420
+ attr(div5, "id", div5_id_value = "combo-" + /*idNo*/
15421
+ ctx[8]);
15422
+ attr(div5, "role", "combobox");
15423
+ attr(div5, "class", "dropdown-container");
15424
+ attr(div5, "aria-haspopup", "listbox");
15425
+ attr(div5, "aria-controls", div5_aria_controls_value = "listbox-" + /*idNo*/
15426
+ ctx[8]);
15427
+ attr(div5, "aria-expanded", div5_aria_expanded_value = /*openDropdown*/
15428
+ ctx[0] === /*options*/
15429
+ ctx[3].id);
15430
+ attr(div5, "aria-labelledby", div5_aria_labelledby_value = "combo-label-" + /*idNo*/
15431
+ ctx[8]);
15432
+ attr(div5, "aria-activedescendant", div5_aria_activedescendant_value = /*openDropdown*/
15433
+ ctx[0] === /*options*/
15434
+ ctx[3].id ? `combo${/*idNo*/
15435
+ ctx[8]}-${/*activeIndex*/
15436
+ ctx[7]}` : null);
15437
+ attr(div5, "tabindex", "0");
15438
+ toggle_class(
15439
+ div5,
15440
+ "focus-ring-by-dropdown",
15441
+ /*openDropdown*/
15442
+ ctx[0] === /*options*/
15443
+ ctx[3].id
15444
+ );
15445
+ toggle_class(
15446
+ div5,
15447
+ "border-2",
15448
+ /*hasBorder*/
15449
+ ctx[17]
15450
+ );
15451
+ toggle_class(
15452
+ div5,
15453
+ "border-green-900",
15454
+ /*isCorrect*/
15455
+ ctx[15]
15456
+ );
15457
+ toggle_class(
15458
+ div5,
15459
+ "bg-red-50",
15460
+ /*isWrong*/
15461
+ ctx[16]
15462
+ );
15463
+ toggle_class(
15464
+ div5,
15465
+ "border-red-900",
15466
+ /*isWrong*/
15467
+ ctx[16]
15468
+ );
15469
+ toggle_class(
15470
+ div5,
15471
+ "td:border-2",
15472
+ /*openDropdown*/
15473
+ ctx[0] === /*options*/
15474
+ ctx[3].id
15475
+ );
15476
+ toggle_class(
15477
+ div5,
15478
+ "td:border-blue-900",
15479
+ /*openDropdown*/
15480
+ ctx[0] === /*options*/
15481
+ ctx[3].id
15482
+ );
15483
+ attr(ul, "id", ul_id_value = "listbox-" + /*idNo*/
15484
+ ctx[8]);
15485
+ attr(ul, "class", ul_class_value = "dropdown-menu " + /*openDropdown*/
15486
+ (ctx[0] === /*options*/
15487
+ ctx[3].id ? "block" : "hidden"));
15488
+ attr(ul, "role", "listbox");
15489
+ attr(ul, "aria-labelledby", ul_aria_labelledby_value = "combo-label-" + /*idNo*/
15490
+ ctx[8]);
15491
+ attr(ul, "tabindex", "-1");
15492
+ attr(span1, "class", "dropdown inline-block");
15493
+ },
15494
+ m(target, anchor) {
15495
+ insert(target, span1, anchor);
15496
+ append(span1, div0);
15497
+ append(span1, t0);
15498
+ append(span1, div5);
15499
+ append(div5, span0);
15500
+ if_block0.m(span0, null);
15501
+ append(div5, t1);
15502
+ append(div5, div2);
15503
+ append(div2, div1);
15504
+ append(div5, t3);
15505
+ append(div5, div4);
15506
+ mount_component(commonstringtohtml, div4, null);
15507
+ append(div4, t4);
15508
+ append(div4, div3);
15509
+ if (if_block1)
15510
+ if_block1.m(div3, null);
15511
+ append(div3, t5);
15512
+ if_blocks[current_block_type_index].m(div3, null);
15513
+ append(span1, t6);
15514
+ append(span1, ul);
15515
+ for (let i = 0; i < each_blocks.length; i += 1) {
15516
+ if (each_blocks[i]) {
15517
+ each_blocks[i].m(ul, null);
15518
+ }
15519
+ }
15520
+ ctx[21](ul);
15521
+ current = true;
15522
+ if (!mounted) {
15523
+ dispose = [
15524
+ listen(div5, "click", function() {
15525
+ if (is_function(!/*openDropdown*/
15526
+ ctx[0] ? (
15527
+ /*openDropdownMenu*/
15528
+ ctx[9]
15529
+ ) : (
15530
+ /*closeDropdownMenu*/
15531
+ ctx[10]
15532
+ )))
15533
+ (!/*openDropdown*/
15534
+ ctx[0] ? (
15535
+ /*openDropdownMenu*/
15536
+ ctx[9]
15537
+ ) : (
15538
+ /*closeDropdownMenu*/
15539
+ ctx[10]
15540
+ )).apply(this, arguments);
15541
+ }),
15542
+ listen(
15543
+ div5,
15544
+ "keydown",
15545
+ /*handleKeydown*/
15546
+ ctx[14]
15547
+ ),
15548
+ listen(
15549
+ div5,
15550
+ "focusout",
15551
+ /*handleFocusOut*/
15552
+ ctx[11]
15553
+ )
15554
+ ];
15555
+ mounted = true;
15556
+ }
15557
+ },
15558
+ p(new_ctx, [dirty]) {
15559
+ ctx = new_ctx;
15560
+ if (!current || dirty & /*isDataSaving*/
15561
+ 4 && div0_class_value !== (div0_class_value = "absolute inset-0 bg-transparent " + /*isDataSaving*/
15562
+ (ctx[2] ? "" : "hidden"))) {
15563
+ attr(div0, "class", div0_class_value);
15564
+ }
15565
+ if (current_block_type === (current_block_type = select_block_type(ctx, dirty)) && if_block0) {
15566
+ if_block0.p(ctx, dirty);
15567
+ } else {
15568
+ if_block0.d(1);
15569
+ if_block0 = current_block_type(ctx);
15570
+ if (if_block0) {
15571
+ if_block0.c();
15572
+ if_block0.m(span0, null);
15573
+ }
15574
+ }
15575
+ if (!current || dirty & /*answer*/
15576
+ 16 && div2_class_value !== (div2_class_value = /*answer*/
15577
+ ctx[4].length > 1 ? "bg-black bg-opacity-5 h-full flex flex-none justify-center items-center" : "hidden")) {
15578
+ attr(div2, "class", div2_class_value);
15579
+ }
15580
+ const commonstringtohtml_changes = {};
15581
+ if (dirty & /*selected*/
15582
+ 64)
15583
+ commonstringtohtml_changes.htmlString = /*selected*/
15584
+ ctx[6];
15585
+ if (dirty & /*selected*/
15586
+ 64)
15587
+ commonstringtohtml_changes.otherClass = "truncate mr-2 " + /*selected*/
15588
+ (ctx[6] === "Select Answer" ? "text-gray-860" : "");
15589
+ commonstringtohtml.$set(commonstringtohtml_changes);
15590
+ if (
15591
+ /*isFinished*/
15592
+ ctx[1] && /*selected*/
15593
+ ctx[6] !== "Select Answer"
15594
+ ) {
15595
+ if (if_block1) {
15596
+ if_block1.p(ctx, dirty);
15597
+ if (dirty & /*isFinished, selected*/
15598
+ 66) {
15599
+ transition_in(if_block1, 1);
15600
+ }
15601
+ } else {
15602
+ if_block1 = create_if_block_110(ctx);
15603
+ if_block1.c();
15604
+ transition_in(if_block1, 1);
15605
+ if_block1.m(div3, t5);
15606
+ }
15607
+ } else if (if_block1) {
15608
+ group_outros();
15609
+ transition_out(if_block1, 1, 1, () => {
15610
+ if_block1 = null;
15611
+ });
15612
+ check_outros();
15613
+ }
15614
+ let previous_block_index = current_block_type_index;
15615
+ current_block_type_index = select_block_type_3(ctx, dirty);
15616
+ if (current_block_type_index !== previous_block_index) {
15617
+ group_outros();
15618
+ transition_out(if_blocks[previous_block_index], 1, 1, () => {
15619
+ if_blocks[previous_block_index] = null;
15620
+ });
15621
+ check_outros();
15622
+ if_block2 = if_blocks[current_block_type_index];
15623
+ if (!if_block2) {
15624
+ if_block2 = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
15625
+ if_block2.c();
15626
+ } else {
15627
+ }
15628
+ transition_in(if_block2, 1);
15629
+ if_block2.m(div3, null);
15630
+ }
15631
+ if (!current || dirty & /*openDropdown, options*/
15632
+ 9 && div5_aria_expanded_value !== (div5_aria_expanded_value = /*openDropdown*/
15633
+ ctx[0] === /*options*/
15634
+ ctx[3].id)) {
15635
+ attr(div5, "aria-expanded", div5_aria_expanded_value);
15636
+ }
15637
+ if (!current || dirty & /*openDropdown, options, activeIndex*/
15638
+ 137 && div5_aria_activedescendant_value !== (div5_aria_activedescendant_value = /*openDropdown*/
15639
+ ctx[0] === /*options*/
15640
+ ctx[3].id ? `combo${/*idNo*/
15641
+ ctx[8]}-${/*activeIndex*/
15642
+ ctx[7]}` : null)) {
15643
+ attr(div5, "aria-activedescendant", div5_aria_activedescendant_value);
15644
+ }
15645
+ if (!current || dirty & /*openDropdown, options*/
15646
+ 9) {
15647
+ toggle_class(
15648
+ div5,
15649
+ "focus-ring-by-dropdown",
15650
+ /*openDropdown*/
15651
+ ctx[0] === /*options*/
15652
+ ctx[3].id
15653
+ );
15654
+ }
15655
+ if (!current || dirty & /*openDropdown, options*/
15656
+ 9) {
15657
+ toggle_class(
15658
+ div5,
15659
+ "td:border-2",
15660
+ /*openDropdown*/
15661
+ ctx[0] === /*options*/
15662
+ ctx[3].id
15663
+ );
15664
+ }
15665
+ if (!current || dirty & /*openDropdown, options*/
15666
+ 9) {
15667
+ toggle_class(
15668
+ div5,
15669
+ "td:border-blue-900",
15670
+ /*openDropdown*/
15671
+ ctx[0] === /*options*/
15672
+ ctx[3].id
15673
+ );
15674
+ }
15675
+ if (dirty & /*idNo, activeIndex, isFinished, selectOption, options, closeDropdownMenu, handleKeydown, getSessionCorrectAnswer, selected*/
15676
+ 30154) {
15677
+ each_value = ensure_array_like(
15678
+ /*options*/
15679
+ ctx[3].list
15680
+ );
15681
+ let i;
15682
+ for (i = 0; i < each_value.length; i += 1) {
15683
+ const child_ctx = get_each_context5(ctx, each_value, i);
15684
+ if (each_blocks[i]) {
15685
+ each_blocks[i].p(child_ctx, dirty);
15686
+ transition_in(each_blocks[i], 1);
15687
+ } else {
15688
+ each_blocks[i] = create_each_block5(child_ctx);
15689
+ each_blocks[i].c();
15690
+ transition_in(each_blocks[i], 1);
15691
+ each_blocks[i].m(ul, null);
15692
+ }
15693
+ }
15694
+ group_outros();
15695
+ for (i = each_value.length; i < each_blocks.length; i += 1) {
15696
+ out(i);
15697
+ }
15698
+ check_outros();
15699
+ }
15700
+ if (!current || dirty & /*openDropdown, options*/
15701
+ 9 && ul_class_value !== (ul_class_value = "dropdown-menu " + /*openDropdown*/
15702
+ (ctx[0] === /*options*/
15703
+ ctx[3].id ? "block" : "hidden"))) {
15704
+ attr(ul, "class", ul_class_value);
15705
+ }
15706
+ },
15707
+ i(local) {
15708
+ if (current)
15709
+ return;
15710
+ transition_in(commonstringtohtml.$$.fragment, local);
15711
+ transition_in(if_block1);
15712
+ transition_in(if_block2);
15713
+ for (let i = 0; i < each_value.length; i += 1) {
15714
+ transition_in(each_blocks[i]);
15715
+ }
15716
+ current = true;
15717
+ },
15718
+ o(local) {
15719
+ transition_out(commonstringtohtml.$$.fragment, local);
15720
+ transition_out(if_block1);
15721
+ transition_out(if_block2);
15722
+ each_blocks = each_blocks.filter(Boolean);
15723
+ for (let i = 0; i < each_blocks.length; i += 1) {
15724
+ transition_out(each_blocks[i]);
15725
+ }
15726
+ current = false;
15727
+ },
15728
+ d(detaching) {
15729
+ if (detaching) {
15730
+ detach(span1);
15731
+ }
15732
+ if_block0.d();
15733
+ destroy_component(commonstringtohtml);
15734
+ if (if_block1)
15735
+ if_block1.d();
15736
+ if_blocks[current_block_type_index].d();
15737
+ destroy_each(each_blocks, detaching);
15738
+ ctx[21](null);
15739
+ mounted = false;
15740
+ run_all(dispose);
15741
+ }
15742
+ };
15743
+ }
15744
+ var keyPressDelay = 1e3;
15745
+ function instance16($$self, $$props, $$invalidate) {
15746
+ let activeIndex;
15747
+ let lastKeyPressTime;
15748
+ let { metadata } = $$props;
15749
+ let { scoringMetadata } = $$props;
15750
+ let { isFinished = false } = $$props;
15751
+ let { isDataSaving = false } = $$props;
15752
+ let { options } = $$props;
15753
+ let { openDropdown } = $$props;
15754
+ let { answer } = $$props;
15755
+ const answerMatch = answer.find((ans) => ans.id === options.id);
15756
+ let lastKey = "";
15757
+ let dropdownMenuRef = null;
15758
+ const idNo = answer.findIndex((data) => data.id === options.id) + 1;
15759
+ const dispatch = createEventDispatcher();
15760
+ const openDropdownMenu = () => {
15761
+ $$invalidate(0, openDropdown = options.id);
15762
+ };
15763
+ const closeDropdownMenu = () => {
15764
+ $$invalidate(0, openDropdown = null);
15765
+ };
15766
+ const getDropdownAnswerEvent = () => {
15767
+ if (!metadata) {
15768
+ return;
15769
+ }
15770
+ const dropdownAnswerEvents = metadata.interactions.events;
15771
+ return dropdownAnswerEvents[dropdownAnswerEvents.length - 1]?.answer.find((data) => data.id === options.id).choice;
15772
+ };
15773
+ const handleFocusOut = (event) => {
15774
+ const relatedTarget = event.relatedTarget;
15775
+ if (relatedTarget && (relatedTarget.closest(`#combo-${idNo}`) || relatedTarget.closest(`#listbox-${idNo}`))) {
15776
+ return;
15777
+ }
15778
+ closeDropdownMenu();
15779
+ };
15780
+ const getSessionCorrectAnswer = () => {
15781
+ if (!isFinished)
15782
+ return [];
15783
+ const { correctAnswer: sessionCorrectAnswer } = scoringMetadata;
15784
+ const match = sessionCorrectAnswer.find((item) => item.id === options.id);
15785
+ return match ? match.correct_answer_list : [];
15786
+ };
15787
+ let selected = getDropdownAnswerEvent() || "Select Answer";
15788
+ const selectOption = (id, option) => {
15789
+ if (isFinished) {
15790
+ closeDropdownMenu();
15791
+ return;
15792
+ }
15793
+ $$invalidate(6, selected = option);
15794
+ answer.forEach((data) => {
15795
+ if (data.id === id) {
15796
+ data.choice = option;
15797
+ }
15798
+ });
15799
+ dispatch("select", answer);
15800
+ closeDropdownMenu();
15801
+ };
15802
+ const scrollIntoViewIfNeeded = (element2) => {
15803
+ const parent = dropdownMenuRef;
15804
+ if (!parent)
15805
+ return;
15806
+ const parentRect = parent.getBoundingClientRect();
15807
+ const elementRect = element2.getBoundingClientRect();
15808
+ if (elementRect.bottom > parentRect.bottom) {
15809
+ parent.scrollTop += elementRect.bottom - parentRect.bottom;
15810
+ } else if (elementRect.top < parentRect.top) {
15811
+ parent.scrollTop -= parentRect.top - elementRect.top;
15812
+ }
15813
+ };
15814
+ const handleKeydown = (event) => {
15815
+ const { key, altKey, ctrlKey, metaKey } = event;
15816
+ const openKeys = ["ArrowDown", "ArrowUp", "Enter", " "];
15817
+ const isDropdownOpen = openDropdown === options.id;
15818
+ const listLength = options.list.length;
15819
+ const now2 = Date.now();
15820
+ let menuOptions = dropdownMenuRef?.querySelectorAll("li");
15821
+ if (!menuOptions)
15822
+ return;
15823
+ const updateActiveIndex = (newIndex) => {
15824
+ $$invalidate(7, activeIndex = newIndex);
15825
+ scrollIntoViewIfNeeded(menuOptions[activeIndex]);
15826
+ };
15827
+ const handleSelectTyped = () => {
15828
+ const sanitizeOptionsList = options.list.map((item) => useRemoveRichTextHtmlTags(item).toLowerCase());
15829
+ const matchingIndices = sanitizeOptionsList.map((item, index) => ({ item, index })).filter(({ item }) => item.startsWith(key)).map(({ index }) => index);
15830
+ if (matchingIndices.length === 0)
15831
+ return;
15832
+ if (lastKey === key && now2 - lastKeyPressTime < keyPressDelay) {
15833
+ const currentIndex = matchingIndices.indexOf(activeIndex);
15834
+ updateActiveIndex(currentIndex === -1 || currentIndex === matchingIndices.length - 1 ? matchingIndices[0] : matchingIndices[currentIndex + 1]);
15835
+ } else {
15836
+ updateActiveIndex(matchingIndices[0]);
15837
+ }
15838
+ lastKey = key;
15839
+ lastKeyPressTime = now2;
15840
+ };
15841
+ if (!isDropdownOpen && openKeys.includes(key)) {
15842
+ event.preventDefault();
15843
+ openDropdownMenu();
15844
+ return;
15845
+ }
15846
+ const keyHandlers = {
15847
+ Home: () => {
15848
+ if (!isDropdownOpen)
15849
+ openDropdownMenu();
15850
+ updateActiveIndex(0);
15851
+ },
15852
+ End: () => {
15853
+ if (!isDropdownOpen)
15854
+ openDropdownMenu();
15855
+ setTimeout(() => updateActiveIndex(listLength - 1), 50);
15856
+ },
15857
+ ArrowDown: () => {
15858
+ if (!isDropdownOpen)
15859
+ return;
15860
+ if (altKey) {
15861
+ closeDropdownMenu();
15862
+ }
15863
+ updateActiveIndex((activeIndex + 1) % listLength);
15864
+ },
15865
+ ArrowUp: () => {
15866
+ if (!isDropdownOpen)
15867
+ return;
15868
+ updateActiveIndex((activeIndex - 1 + listLength) % listLength);
15869
+ },
15870
+ PageDown: () => {
15871
+ if (!isDropdownOpen)
15872
+ return;
15873
+ updateActiveIndex(Math.min(listLength - 1, activeIndex + 10));
15874
+ },
15875
+ PageUp: () => {
15876
+ if (!isDropdownOpen)
15877
+ return;
15878
+ updateActiveIndex(Math.max(0, activeIndex - 10));
15879
+ },
15880
+ Enter: () => {
15881
+ if (isDropdownOpen) {
15882
+ selectOption(options.id, options.list[activeIndex]);
15883
+ }
15884
+ },
15885
+ " ": () => {
15886
+ if (isDropdownOpen) {
15887
+ selectOption(options.id, options.list[activeIndex]);
15888
+ }
15889
+ },
15890
+ Escape: closeDropdownMenu
15891
+ };
15892
+ if (key in keyHandlers) {
15893
+ event.preventDefault();
15894
+ keyHandlers[key]();
15895
+ return;
15896
+ }
15897
+ if (key === "Backspace" || key === "Clear" || key.length === 1 && key !== " " && !altKey && !ctrlKey && !metaKey) {
15898
+ if (!isDropdownOpen)
15899
+ openDropdownMenu();
15900
+ handleSelectTyped();
15901
+ return;
15902
+ }
15903
+ };
15904
+ const isCorrect = isFinished && getSessionCorrectAnswer().includes(selected) && selected !== "Select Answer";
15905
+ const isWrong = isFinished && !getSessionCorrectAnswer().includes(selected) && selected !== "Select Answer";
15906
+ const hasBorder = isFinished && selected !== "Select Answer";
15907
+ const mousedown_handler = (option, index) => {
15908
+ selectOption(options.id, option);
15909
+ $$invalidate(7, activeIndex = index);
15910
+ };
15911
+ function ul_binding($$value) {
15912
+ binding_callbacks[$$value ? "unshift" : "push"](() => {
15913
+ dropdownMenuRef = $$value;
15914
+ $$invalidate(5, dropdownMenuRef);
15915
+ });
15916
+ }
15917
+ $$self.$$set = ($$props2) => {
15918
+ if ("metadata" in $$props2)
15919
+ $$invalidate(18, metadata = $$props2.metadata);
15920
+ if ("scoringMetadata" in $$props2)
15921
+ $$invalidate(19, scoringMetadata = $$props2.scoringMetadata);
15922
+ if ("isFinished" in $$props2)
15923
+ $$invalidate(1, isFinished = $$props2.isFinished);
15924
+ if ("isDataSaving" in $$props2)
15925
+ $$invalidate(2, isDataSaving = $$props2.isDataSaving);
15926
+ if ("options" in $$props2)
15927
+ $$invalidate(3, options = $$props2.options);
15928
+ if ("openDropdown" in $$props2)
15929
+ $$invalidate(0, openDropdown = $$props2.openDropdown);
15930
+ if ("answer" in $$props2)
15931
+ $$invalidate(4, answer = $$props2.answer);
15932
+ };
15933
+ $$self.$$.update = () => {
15934
+ if ($$self.$$.dirty & /*options*/
15935
+ 8) {
15936
+ $:
15937
+ $$invalidate(7, activeIndex = answerMatch ? options.list.indexOf(answerMatch.choice) : 0);
15938
+ }
15939
+ };
15940
+ $:
15941
+ lastKeyPressTime = 0;
15942
+ return [
15943
+ openDropdown,
15944
+ isFinished,
15945
+ isDataSaving,
15946
+ options,
15947
+ answer,
15948
+ dropdownMenuRef,
15949
+ selected,
15950
+ activeIndex,
15951
+ idNo,
15952
+ openDropdownMenu,
15953
+ closeDropdownMenu,
15954
+ handleFocusOut,
15955
+ getSessionCorrectAnswer,
15956
+ selectOption,
15957
+ handleKeydown,
15958
+ isCorrect,
15959
+ isWrong,
15960
+ hasBorder,
15961
+ metadata,
15962
+ scoringMetadata,
15963
+ mousedown_handler,
15964
+ ul_binding
15965
+ ];
15966
+ }
15967
+ var PromptDropdownContainer = class extends SvelteComponent {
15968
+ constructor(options) {
15969
+ super();
15970
+ init(this, options, instance16, create_fragment28, safe_not_equal, {
15971
+ metadata: 18,
15972
+ scoringMetadata: 19,
15973
+ isFinished: 1,
15974
+ isDataSaving: 2,
15975
+ options: 3,
15976
+ openDropdown: 0,
15977
+ answer: 4
15978
+ });
15979
+ }
15980
+ get metadata() {
15981
+ return this.$$.ctx[18];
15982
+ }
15983
+ set metadata(metadata) {
15984
+ this.$$set({ metadata });
15985
+ flush();
15986
+ }
15987
+ get scoringMetadata() {
15988
+ return this.$$.ctx[19];
15989
+ }
15990
+ set scoringMetadata(scoringMetadata) {
15991
+ this.$$set({ scoringMetadata });
15992
+ flush();
15993
+ }
15994
+ get isFinished() {
15995
+ return this.$$.ctx[1];
15996
+ }
15997
+ set isFinished(isFinished) {
15998
+ this.$$set({ isFinished });
15999
+ flush();
16000
+ }
16001
+ get isDataSaving() {
16002
+ return this.$$.ctx[2];
16003
+ }
16004
+ set isDataSaving(isDataSaving) {
16005
+ this.$$set({ isDataSaving });
16006
+ flush();
16007
+ }
16008
+ get options() {
16009
+ return this.$$.ctx[3];
16010
+ }
16011
+ set options(options) {
16012
+ this.$$set({ options });
16013
+ flush();
16014
+ }
16015
+ get openDropdown() {
16016
+ return this.$$.ctx[0];
16017
+ }
16018
+ set openDropdown(openDropdown) {
16019
+ this.$$set({ openDropdown });
16020
+ flush();
16021
+ }
16022
+ get answer() {
16023
+ return this.$$.ctx[4];
16024
+ }
16025
+ set answer(answer) {
16026
+ this.$$set({ answer });
16027
+ flush();
16028
+ }
16029
+ };
16030
+ customElements.define("prompt-dropdown-container", create_custom_element(PromptDropdownContainer, { "metadata": {}, "scoringMetadata": {}, "isFinished": { "type": "Boolean" }, "isDataSaving": { "type": "Boolean" }, "options": {}, "openDropdown": {}, "answer": {} }, [], [], true));
16031
+ var PromptDropdownContainer_default = PromptDropdownContainer;
16032
+
16033
+ // src/lib/components/prompt/template/PromptResultFeedbackv3.svelte
16034
+ function create_if_block12(ctx) {
16035
+ let div1;
16036
+ let t0;
16037
+ let div0;
16038
+ let t1;
16039
+ let t2;
16040
+ let span;
16041
+ let commonstringtohtml;
16042
+ let div1_role_value;
16043
+ let div1_class_value;
16044
+ let current;
16045
+ let if_block0 = (
16046
+ /*hasIcon*/
16047
+ ctx[2] && create_if_block_38(ctx)
16048
+ );
16049
+ let if_block1 = !/*isFeedbackAlert*/
16050
+ ctx[3] && create_if_block_210(ctx);
16051
+ let if_block2 = (
16052
+ /*resultFeedbackTitle*/
16053
+ ctx[1] && create_if_block_111(ctx)
16054
+ );
16055
+ commonstringtohtml = new CommonStringToHtml_default({
16056
+ props: { htmlString: (
16057
+ /*resultFeedback*/
16058
+ ctx[0]
16059
+ ) }
16060
+ });
16061
+ return {
16062
+ c() {
16063
+ div1 = element("div");
16064
+ if (if_block0)
16065
+ if_block0.c();
16066
+ t0 = space();
16067
+ div0 = element("div");
16068
+ if (if_block1)
16069
+ if_block1.c();
16070
+ t1 = space();
16071
+ if (if_block2)
16072
+ if_block2.c();
16073
+ t2 = space();
16074
+ span = element("span");
16075
+ create_component(commonstringtohtml.$$.fragment);
16076
+ attr(div1, "role", div1_role_value = /*isFeedbackAlert*/
16077
+ ctx[3] ? "alert" : null);
16078
+ attr(div1, "class", div1_class_value = "my-6 p-4 border-l-4 text-charcoal text-base flex " + /*isSkipped*/
16079
+ (ctx[5] ? "border-blue-950 bg-blue-50" : (
16080
+ /*isResultCorrect*/
16081
+ ctx[4] ? "border-green-900 bg-green-300" : "border-red-900 bg-red-50"
16082
+ )));
16083
+ },
16084
+ m(target, anchor) {
16085
+ insert(target, div1, anchor);
16086
+ if (if_block0)
16087
+ if_block0.m(div1, null);
16088
+ append(div1, t0);
16089
+ append(div1, div0);
16090
+ if (if_block1)
16091
+ if_block1.m(div0, null);
16092
+ append(div0, t1);
16093
+ if (if_block2)
16094
+ if_block2.m(div0, null);
16095
+ append(div0, t2);
16096
+ append(div0, span);
16097
+ mount_component(commonstringtohtml, span, null);
16098
+ current = true;
16099
+ },
16100
+ p(ctx2, dirty) {
16101
+ if (
16102
+ /*hasIcon*/
16103
+ ctx2[2]
16104
+ ) {
16105
+ if (if_block0) {
16106
+ if_block0.p(ctx2, dirty);
16107
+ if (dirty & /*hasIcon*/
16108
+ 4) {
16109
+ transition_in(if_block0, 1);
16110
+ }
16111
+ } else {
16112
+ if_block0 = create_if_block_38(ctx2);
16113
+ if_block0.c();
16114
+ transition_in(if_block0, 1);
16115
+ if_block0.m(div1, t0);
16116
+ }
16117
+ } else if (if_block0) {
16118
+ group_outros();
16119
+ transition_out(if_block0, 1, 1, () => {
16120
+ if_block0 = null;
16121
+ });
16122
+ check_outros();
16123
+ }
16124
+ if (!/*isFeedbackAlert*/
16125
+ ctx2[3]) {
16126
+ if (if_block1) {
16127
+ } else {
16128
+ if_block1 = create_if_block_210(ctx2);
16129
+ if_block1.c();
16130
+ if_block1.m(div0, t1);
16131
+ }
16132
+ } else if (if_block1) {
16133
+ if_block1.d(1);
16134
+ if_block1 = null;
16135
+ }
16136
+ if (
16137
+ /*resultFeedbackTitle*/
16138
+ ctx2[1]
16139
+ ) {
16140
+ if (if_block2) {
16141
+ if_block2.p(ctx2, dirty);
16142
+ } else {
16143
+ if_block2 = create_if_block_111(ctx2);
16144
+ if_block2.c();
16145
+ if_block2.m(div0, t2);
16146
+ }
16147
+ } else if (if_block2) {
16148
+ if_block2.d(1);
16149
+ if_block2 = null;
16150
+ }
16151
+ const commonstringtohtml_changes = {};
16152
+ if (dirty & /*resultFeedback*/
16153
+ 1)
16154
+ commonstringtohtml_changes.htmlString = /*resultFeedback*/
16155
+ ctx2[0];
16156
+ commonstringtohtml.$set(commonstringtohtml_changes);
16157
+ if (!current || dirty & /*isFeedbackAlert*/
16158
+ 8 && div1_role_value !== (div1_role_value = /*isFeedbackAlert*/
16159
+ ctx2[3] ? "alert" : null)) {
16160
+ attr(div1, "role", div1_role_value);
16161
+ }
16162
+ if (!current || dirty & /*isSkipped, isResultCorrect*/
16163
+ 48 && div1_class_value !== (div1_class_value = "my-6 p-4 border-l-4 text-charcoal text-base flex " + /*isSkipped*/
16164
+ (ctx2[5] ? "border-blue-950 bg-blue-50" : (
16165
+ /*isResultCorrect*/
16166
+ ctx2[4] ? "border-green-900 bg-green-300" : "border-red-900 bg-red-50"
16167
+ )))) {
16168
+ attr(div1, "class", div1_class_value);
16169
+ }
16170
+ },
16171
+ i(local) {
16172
+ if (current)
16173
+ return;
16174
+ transition_in(if_block0);
16175
+ transition_in(commonstringtohtml.$$.fragment, local);
16176
+ current = true;
16177
+ },
16178
+ o(local) {
16179
+ transition_out(if_block0);
16180
+ transition_out(commonstringtohtml.$$.fragment, local);
16181
+ current = false;
16182
+ },
16183
+ d(detaching) {
16184
+ if (detaching) {
16185
+ detach(div1);
16186
+ }
16187
+ if (if_block0)
16188
+ if_block0.d();
16189
+ if (if_block1)
16190
+ if_block1.d();
16191
+ if (if_block2)
16192
+ if_block2.d();
16193
+ destroy_component(commonstringtohtml);
16194
+ }
16195
+ };
16196
+ }
16197
+ function create_if_block_38(ctx) {
16198
+ let span;
16199
+ let infosolid;
16200
+ let span_class_value;
16201
+ let current;
16202
+ infosolid = new InfoSolid_default({});
16203
+ return {
16204
+ c() {
16205
+ span = element("span");
16206
+ create_component(infosolid.$$.fragment);
16207
+ attr(span, "aria-hidden", "true");
16208
+ attr(span, "class", span_class_value = "h-6 w-6 flex items-center pt-0.5 mr-2 " + /*isSkipped*/
16209
+ (ctx[5] ? "text-blue-950" : (
16210
+ /*isResultCorrect*/
16211
+ ctx[4] ? "text-green-900" : "text-red-900"
16212
+ )));
16213
+ },
16214
+ m(target, anchor) {
16215
+ insert(target, span, anchor);
16216
+ mount_component(infosolid, span, null);
16217
+ current = true;
16218
+ },
16219
+ p(ctx2, dirty) {
16220
+ if (!current || dirty & /*isSkipped, isResultCorrect*/
16221
+ 48 && span_class_value !== (span_class_value = "h-6 w-6 flex items-center pt-0.5 mr-2 " + /*isSkipped*/
16222
+ (ctx2[5] ? "text-blue-950" : (
16223
+ /*isResultCorrect*/
16224
+ ctx2[4] ? "text-green-900" : "text-red-900"
16225
+ )))) {
16226
+ attr(span, "class", span_class_value);
16227
+ }
16228
+ },
16229
+ i(local) {
16230
+ if (current)
16231
+ return;
16232
+ transition_in(infosolid.$$.fragment, local);
16233
+ current = true;
16234
+ },
16235
+ o(local) {
16236
+ transition_out(infosolid.$$.fragment, local);
16237
+ current = false;
16238
+ },
16239
+ d(detaching) {
16240
+ if (detaching) {
16241
+ detach(span);
16242
+ }
16243
+ destroy_component(infosolid);
16244
+ }
16245
+ };
16246
+ }
16247
+ function create_if_block_210(ctx) {
16248
+ let span;
16249
+ return {
16250
+ c() {
16251
+ span = element("span");
16252
+ span.textContent = "Alert. \xA0";
16253
+ attr(span, "class", "sr-only");
16254
+ },
16255
+ m(target, anchor) {
16256
+ insert(target, span, anchor);
16257
+ },
16258
+ d(detaching) {
16259
+ if (detaching) {
16260
+ detach(span);
16261
+ }
16262
+ }
16263
+ };
16264
+ }
16265
+ function create_if_block_111(ctx) {
16266
+ let span;
16267
+ let t2;
16268
+ return {
16269
+ c() {
16270
+ span = element("span");
16271
+ t2 = text(
16272
+ /*resultFeedbackTitle*/
16273
+ ctx[1]
16274
+ );
16275
+ attr(span, "class", "block mb-1 font-semibold");
16276
+ },
16277
+ m(target, anchor) {
16278
+ insert(target, span, anchor);
16279
+ append(span, t2);
16280
+ },
16281
+ p(ctx2, dirty) {
16282
+ if (dirty & /*resultFeedbackTitle*/
16283
+ 2)
16284
+ set_data(
16285
+ t2,
16286
+ /*resultFeedbackTitle*/
16287
+ ctx2[1]
16288
+ );
16289
+ },
16290
+ d(detaching) {
16291
+ if (detaching) {
16292
+ detach(span);
16293
+ }
16294
+ }
16295
+ };
16296
+ }
16297
+ function create_fragment29(ctx) {
16298
+ let if_block_anchor;
16299
+ let current;
16300
+ let if_block = (
16301
+ /*resultFeedback*/
16302
+ ctx[0] && create_if_block12(ctx)
16303
+ );
16304
+ return {
16305
+ c() {
16306
+ if (if_block)
16307
+ if_block.c();
16308
+ if_block_anchor = empty();
16309
+ },
16310
+ m(target, anchor) {
16311
+ if (if_block)
16312
+ if_block.m(target, anchor);
16313
+ insert(target, if_block_anchor, anchor);
16314
+ current = true;
16315
+ },
16316
+ p(ctx2, [dirty]) {
16317
+ if (
16318
+ /*resultFeedback*/
16319
+ ctx2[0]
16320
+ ) {
16321
+ if (if_block) {
16322
+ if_block.p(ctx2, dirty);
16323
+ if (dirty & /*resultFeedback*/
16324
+ 1) {
16325
+ transition_in(if_block, 1);
16326
+ }
16327
+ } else {
16328
+ if_block = create_if_block12(ctx2);
16329
+ if_block.c();
16330
+ transition_in(if_block, 1);
16331
+ if_block.m(if_block_anchor.parentNode, if_block_anchor);
16332
+ }
16333
+ } else if (if_block) {
16334
+ group_outros();
16335
+ transition_out(if_block, 1, 1, () => {
16336
+ if_block = null;
16337
+ });
16338
+ check_outros();
16339
+ }
16340
+ },
16341
+ i(local) {
16342
+ if (current)
16343
+ return;
16344
+ transition_in(if_block);
16345
+ current = true;
16346
+ },
16347
+ o(local) {
16348
+ transition_out(if_block);
16349
+ current = false;
16350
+ },
16351
+ d(detaching) {
16352
+ if (detaching) {
16353
+ detach(if_block_anchor);
16354
+ }
16355
+ if (if_block)
16356
+ if_block.d(detaching);
16357
+ }
16358
+ };
16359
+ }
16360
+ function instance17($$self, $$props, $$invalidate) {
16361
+ let { hasIcon = false } = $$props;
16362
+ let { isFeedbackAlert = true } = $$props;
16363
+ let { isResultCorrect = true } = $$props;
16364
+ let { isSkipped = false } = $$props;
16365
+ let { resultFeedback = null } = $$props;
16366
+ let { resultFeedbackTitle = null } = $$props;
16367
+ $$self.$$set = ($$props2) => {
16368
+ if ("hasIcon" in $$props2)
16369
+ $$invalidate(2, hasIcon = $$props2.hasIcon);
16370
+ if ("isFeedbackAlert" in $$props2)
16371
+ $$invalidate(3, isFeedbackAlert = $$props2.isFeedbackAlert);
16372
+ if ("isResultCorrect" in $$props2)
16373
+ $$invalidate(4, isResultCorrect = $$props2.isResultCorrect);
16374
+ if ("isSkipped" in $$props2)
16375
+ $$invalidate(5, isSkipped = $$props2.isSkipped);
16376
+ if ("resultFeedback" in $$props2)
16377
+ $$invalidate(0, resultFeedback = $$props2.resultFeedback);
16378
+ if ("resultFeedbackTitle" in $$props2)
16379
+ $$invalidate(1, resultFeedbackTitle = $$props2.resultFeedbackTitle);
16380
+ };
16381
+ $$self.$$.update = () => {
16382
+ if ($$self.$$.dirty & /*isSkipped*/
16383
+ 32) {
16384
+ $:
16385
+ if (isSkipped) {
16386
+ $$invalidate(1, resultFeedbackTitle = "No answer was provided");
16387
+ $$invalidate(0, resultFeedback = "It may be that the student struggled with this question or mistakenly skipped this question.");
16388
+ }
16389
+ }
16390
+ };
16391
+ return [
16392
+ resultFeedback,
16393
+ resultFeedbackTitle,
16394
+ hasIcon,
16395
+ isFeedbackAlert,
16396
+ isResultCorrect,
16397
+ isSkipped
16398
+ ];
16399
+ }
16400
+ var PromptResultFeedbackv3 = class extends SvelteComponent {
16401
+ constructor(options) {
16402
+ super();
16403
+ init(this, options, instance17, create_fragment29, safe_not_equal, {
16404
+ hasIcon: 2,
16405
+ isFeedbackAlert: 3,
16406
+ isResultCorrect: 4,
16407
+ isSkipped: 5,
16408
+ resultFeedback: 0,
16409
+ resultFeedbackTitle: 1
16410
+ });
16411
+ }
16412
+ get hasIcon() {
16413
+ return this.$$.ctx[2];
16414
+ }
16415
+ set hasIcon(hasIcon) {
16416
+ this.$$set({ hasIcon });
16417
+ flush();
16418
+ }
16419
+ get isFeedbackAlert() {
16420
+ return this.$$.ctx[3];
16421
+ }
16422
+ set isFeedbackAlert(isFeedbackAlert) {
16423
+ this.$$set({ isFeedbackAlert });
16424
+ flush();
16425
+ }
16426
+ get isResultCorrect() {
16427
+ return this.$$.ctx[4];
16428
+ }
16429
+ set isResultCorrect(isResultCorrect) {
16430
+ this.$$set({ isResultCorrect });
16431
+ flush();
16432
+ }
16433
+ get isSkipped() {
16434
+ return this.$$.ctx[5];
16435
+ }
16436
+ set isSkipped(isSkipped) {
16437
+ this.$$set({ isSkipped });
16438
+ flush();
16439
+ }
16440
+ get resultFeedback() {
16441
+ return this.$$.ctx[0];
16442
+ }
16443
+ set resultFeedback(resultFeedback) {
16444
+ this.$$set({ resultFeedback });
16445
+ flush();
16446
+ }
16447
+ get resultFeedbackTitle() {
16448
+ return this.$$.ctx[1];
16449
+ }
16450
+ set resultFeedbackTitle(resultFeedbackTitle) {
16451
+ this.$$set({ resultFeedbackTitle });
16452
+ flush();
16453
+ }
16454
+ };
16455
+ customElements.define("prompt-result-feedbackv3", create_custom_element(PromptResultFeedbackv3, { "hasIcon": { "type": "Boolean" }, "isFeedbackAlert": { "type": "Boolean" }, "isResultCorrect": { "type": "Boolean" }, "isSkipped": { "type": "Boolean" }, "resultFeedback": {}, "resultFeedbackTitle": {} }, [], [], true));
16456
+ var PromptResultFeedbackv3_default = PromptResultFeedbackv3;
16457
+
16458
+ // src/lib/components/prompt/template/PromptResultFeedbackTable.svelte
16459
+ function get_each_context6(ctx, list, i) {
16460
+ const child_ctx = ctx.slice();
16461
+ child_ctx[6] = list[i];
16462
+ child_ctx[8] = i;
16463
+ return child_ctx;
16464
+ }
16465
+ function get_each_context_12(ctx, list, i) {
16466
+ const child_ctx = ctx.slice();
16467
+ child_ctx[9] = list[i];
16468
+ child_ctx[11] = i;
16469
+ return child_ctx;
16470
+ }
16471
+ function create_else_block_23(ctx) {
16472
+ let commonstringtohtml;
16473
+ let t0;
16474
+ let div;
16475
+ let t1_value = (
16476
+ /*answerResults*/
16477
+ (ctx[1][
16478
+ /*itemIndex*/
16479
+ ctx[8]
16480
+ ] ? useRemoveRichTextHtmlTags(
16481
+ /*sessionAnswer*/
16482
+ ctx[3][
16483
+ /*itemIndex*/
16484
+ ctx[8]
16485
+ ]
16486
+ ) : useRemoveRichTextHtmlTags(
16487
+ /*item*/
16488
+ ctx[6][0]
16489
+ )) + ""
16490
+ );
16491
+ let t1;
16492
+ let current;
16493
+ commonstringtohtml = new CommonStringToHtml_default({
16494
+ props: {
16495
+ htmlString: (
16496
+ /*answerResults*/
16497
+ ctx[1][
16498
+ /*itemIndex*/
16499
+ ctx[8]
16500
+ ] ? (
16501
+ /*sessionAnswer*/
16502
+ ctx[3][
16503
+ /*itemIndex*/
16504
+ ctx[8]
16505
+ ]
16506
+ ) : (
16507
+ /*item*/
16508
+ ctx[6][0]
16509
+ )
16510
+ ),
16511
+ otherClass: "overflow-y-visible break-words",
16512
+ ariaHidden: true
16513
+ }
16514
+ });
16515
+ return {
16516
+ c() {
16517
+ create_component(commonstringtohtml.$$.fragment);
16518
+ t0 = space();
16519
+ div = element("div");
16520
+ t1 = text(t1_value);
16521
+ attr(div, "class", "sr-only");
16522
+ },
16523
+ m(target, anchor) {
16524
+ mount_component(commonstringtohtml, target, anchor);
16525
+ insert(target, t0, anchor);
16526
+ insert(target, div, anchor);
16527
+ append(div, t1);
16528
+ current = true;
16529
+ },
16530
+ p(ctx2, dirty) {
16531
+ const commonstringtohtml_changes = {};
16532
+ if (dirty & /*answerResults, sessionAnswer, correctAnswers*/
16533
+ 14)
16534
+ commonstringtohtml_changes.htmlString = /*answerResults*/
16535
+ ctx2[1][
16536
+ /*itemIndex*/
16537
+ ctx2[8]
16538
+ ] ? (
16539
+ /*sessionAnswer*/
16540
+ ctx2[3][
16541
+ /*itemIndex*/
16542
+ ctx2[8]
16543
+ ]
16544
+ ) : (
16545
+ /*item*/
16546
+ ctx2[6][0]
16547
+ );
16548
+ commonstringtohtml.$set(commonstringtohtml_changes);
16549
+ if ((!current || dirty & /*answerResults, sessionAnswer, correctAnswers*/
16550
+ 14) && t1_value !== (t1_value = /*answerResults*/
16551
+ (ctx2[1][
16552
+ /*itemIndex*/
16553
+ ctx2[8]
16554
+ ] ? useRemoveRichTextHtmlTags(
16555
+ /*sessionAnswer*/
16556
+ ctx2[3][
16557
+ /*itemIndex*/
16558
+ ctx2[8]
16559
+ ]
16560
+ ) : useRemoveRichTextHtmlTags(
16561
+ /*item*/
16562
+ ctx2[6][0]
16563
+ )) + ""))
16564
+ set_data(t1, t1_value);
16565
+ },
16566
+ i(local) {
16567
+ if (current)
16568
+ return;
16569
+ transition_in(commonstringtohtml.$$.fragment, local);
16570
+ current = true;
16571
+ },
16572
+ o(local) {
16573
+ transition_out(commonstringtohtml.$$.fragment, local);
16574
+ current = false;
16575
+ },
16576
+ d(detaching) {
16577
+ if (detaching) {
16578
+ detach(t0);
16579
+ detach(div);
16580
+ }
16581
+ destroy_component(commonstringtohtml, detaching);
16582
+ }
16583
+ };
16584
+ }
16585
+ function create_if_block_211(ctx) {
16586
+ let current_block_type_index;
16587
+ let if_block;
16588
+ let if_block_anchor;
16589
+ let current;
16590
+ const if_block_creators = [create_if_block_39, create_else_block_13];
16591
+ const if_blocks = [];
16592
+ function select_block_type_1(ctx2, dirty) {
16593
+ if (
16594
+ /*sessionAnswer*/
16595
+ ctx2[3][
16596
+ /*itemIndex*/
16597
+ ctx2[8]
16598
+ ]
16599
+ )
16600
+ return 0;
16601
+ return 1;
16602
+ }
16603
+ current_block_type_index = select_block_type_1(ctx, -1);
16604
+ if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
16605
+ return {
16606
+ c() {
16607
+ if_block.c();
16608
+ if_block_anchor = empty();
16609
+ },
16610
+ m(target, anchor) {
16611
+ if_blocks[current_block_type_index].m(target, anchor);
16612
+ insert(target, if_block_anchor, anchor);
16613
+ current = true;
16614
+ },
16615
+ p(ctx2, dirty) {
16616
+ let previous_block_index = current_block_type_index;
16617
+ current_block_type_index = select_block_type_1(ctx2, dirty);
16618
+ if (current_block_type_index === previous_block_index) {
16619
+ if_blocks[current_block_type_index].p(ctx2, dirty);
16620
+ } else {
16621
+ group_outros();
16622
+ transition_out(if_blocks[previous_block_index], 1, 1, () => {
16623
+ if_blocks[previous_block_index] = null;
16624
+ });
16625
+ check_outros();
16626
+ if_block = if_blocks[current_block_type_index];
16627
+ if (!if_block) {
16628
+ if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx2);
16629
+ if_block.c();
16630
+ } else {
16631
+ if_block.p(ctx2, dirty);
16632
+ }
16633
+ transition_in(if_block, 1);
16634
+ if_block.m(if_block_anchor.parentNode, if_block_anchor);
16635
+ }
16636
+ },
16637
+ i(local) {
16638
+ if (current)
16639
+ return;
16640
+ transition_in(if_block);
16641
+ current = true;
16642
+ },
16643
+ o(local) {
16644
+ transition_out(if_block);
16645
+ current = false;
16646
+ },
16647
+ d(detaching) {
16648
+ if (detaching) {
16649
+ detach(if_block_anchor);
16650
+ }
16651
+ if_blocks[current_block_type_index].d(detaching);
16652
+ }
16653
+ };
16654
+ }
16655
+ function create_else_block_13(ctx) {
16656
+ let t2;
16657
+ return {
16658
+ c() {
16659
+ t2 = text("No answer provided");
16660
+ },
16661
+ m(target, anchor) {
16662
+ insert(target, t2, anchor);
16663
+ },
16664
+ p: noop,
16665
+ i: noop,
16666
+ o: noop,
16667
+ d(detaching) {
16668
+ if (detaching) {
16669
+ detach(t2);
16670
+ }
16671
+ }
16672
+ };
16673
+ }
16674
+ function create_if_block_39(ctx) {
16675
+ let commonstringtohtml;
16676
+ let t0;
16677
+ let div;
16678
+ let t1_value = useRemoveRichTextHtmlTags(
16679
+ /*sessionAnswer*/
16680
+ ctx[3][
16681
+ /*itemIndex*/
16682
+ ctx[8]
16683
+ ]
16684
+ ) + "";
16685
+ let t1;
16686
+ let current;
16687
+ commonstringtohtml = new CommonStringToHtml_default({
16688
+ props: {
16689
+ htmlString: (
16690
+ /*sessionAnswer*/
16691
+ ctx[3][
16692
+ /*itemIndex*/
16693
+ ctx[8]
16694
+ ]
16695
+ ),
16696
+ otherClass: "overflow-y-visible break-words",
16697
+ ariaHidden: true
16698
+ }
16699
+ });
16700
+ return {
16701
+ c() {
16702
+ create_component(commonstringtohtml.$$.fragment);
16703
+ t0 = space();
16704
+ div = element("div");
16705
+ t1 = text(t1_value);
16706
+ attr(div, "class", "sr-only");
16707
+ },
16708
+ m(target, anchor) {
16709
+ mount_component(commonstringtohtml, target, anchor);
16710
+ insert(target, t0, anchor);
16711
+ insert(target, div, anchor);
16712
+ append(div, t1);
16713
+ current = true;
16714
+ },
16715
+ p(ctx2, dirty) {
16716
+ const commonstringtohtml_changes = {};
16717
+ if (dirty & /*sessionAnswer*/
16718
+ 8)
16719
+ commonstringtohtml_changes.htmlString = /*sessionAnswer*/
16720
+ ctx2[3][
16721
+ /*itemIndex*/
16722
+ ctx2[8]
16723
+ ];
16724
+ commonstringtohtml.$set(commonstringtohtml_changes);
16725
+ if ((!current || dirty & /*sessionAnswer*/
16726
+ 8) && t1_value !== (t1_value = useRemoveRichTextHtmlTags(
16727
+ /*sessionAnswer*/
16728
+ ctx2[3][
16729
+ /*itemIndex*/
16730
+ ctx2[8]
16731
+ ]
16732
+ ) + ""))
16733
+ set_data(t1, t1_value);
16734
+ },
16735
+ i(local) {
16736
+ if (current)
16737
+ return;
16738
+ transition_in(commonstringtohtml.$$.fragment, local);
16739
+ current = true;
16740
+ },
16741
+ o(local) {
16742
+ transition_out(commonstringtohtml.$$.fragment, local);
16743
+ current = false;
16744
+ },
16745
+ d(detaching) {
16746
+ if (detaching) {
16747
+ detach(t0);
16748
+ detach(div);
16749
+ }
16750
+ destroy_component(commonstringtohtml, detaching);
16751
+ }
16752
+ };
16753
+ }
16754
+ function create_if_block13(ctx) {
16755
+ let span1;
16756
+ let span0;
16757
+ let current_block_type_index;
16758
+ let if_block;
16759
+ let span0_class_value;
16760
+ let current;
16761
+ const if_block_creators = [create_if_block_112, create_else_block6];
16762
+ const if_blocks = [];
16763
+ function select_block_type_2(ctx2, dirty) {
16764
+ if (
16765
+ /*answerResults*/
16766
+ ctx2[1][
16767
+ /*itemIndex*/
16768
+ ctx2[8]
16769
+ ]
16770
+ )
16771
+ return 0;
16772
+ return 1;
16773
+ }
16774
+ current_block_type_index = select_block_type_2(ctx, -1);
16775
+ if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
16776
+ return {
16777
+ c() {
16778
+ span1 = element("span");
16779
+ span0 = element("span");
16780
+ if_block.c();
16781
+ attr(span0, "class", span0_class_value = /*answerResults*/
16782
+ (ctx[1][
16783
+ /*itemIndex*/
16784
+ ctx[8]
16785
+ ] ? "text-green-900" : "text-red-900") + " p-0.5");
16786
+ attr(span1, "class", "w-6 h-6 absolute right-4 top-3 bottom-0 my-auto flex item-center justify-center");
16787
+ },
16788
+ m(target, anchor) {
16789
+ insert(target, span1, anchor);
16790
+ append(span1, span0);
16791
+ if_blocks[current_block_type_index].m(span0, null);
16792
+ current = true;
16793
+ },
16794
+ p(ctx2, dirty) {
16795
+ let previous_block_index = current_block_type_index;
16796
+ current_block_type_index = select_block_type_2(ctx2, dirty);
16797
+ if (current_block_type_index !== previous_block_index) {
16798
+ group_outros();
16799
+ transition_out(if_blocks[previous_block_index], 1, 1, () => {
16800
+ if_blocks[previous_block_index] = null;
16801
+ });
16802
+ check_outros();
16803
+ if_block = if_blocks[current_block_type_index];
16804
+ if (!if_block) {
16805
+ if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx2);
16806
+ if_block.c();
16807
+ } else {
16808
+ }
16809
+ transition_in(if_block, 1);
16810
+ if_block.m(span0, null);
16811
+ }
16812
+ if (!current || dirty & /*answerResults*/
16813
+ 2 && span0_class_value !== (span0_class_value = /*answerResults*/
16814
+ (ctx2[1][
16815
+ /*itemIndex*/
16816
+ ctx2[8]
16817
+ ] ? "text-green-900" : "text-red-900") + " p-0.5")) {
16818
+ attr(span0, "class", span0_class_value);
16819
+ }
16820
+ },
16821
+ i(local) {
16822
+ if (current)
16823
+ return;
16824
+ transition_in(if_block);
16825
+ current = true;
16826
+ },
16827
+ o(local) {
16828
+ transition_out(if_block);
16829
+ current = false;
16830
+ },
16831
+ d(detaching) {
16832
+ if (detaching) {
16833
+ detach(span1);
16834
+ }
16835
+ if_blocks[current_block_type_index].d();
16836
+ }
16837
+ };
16838
+ }
16839
+ function create_else_block6(ctx) {
16840
+ let errorsolid;
16841
+ let current;
16842
+ errorsolid = new ErrorSolid_default({});
16843
+ return {
16844
+ c() {
16845
+ create_component(errorsolid.$$.fragment);
16846
+ },
16847
+ m(target, anchor) {
16848
+ mount_component(errorsolid, target, anchor);
16849
+ current = true;
16850
+ },
16851
+ i(local) {
16852
+ if (current)
16853
+ return;
16854
+ transition_in(errorsolid.$$.fragment, local);
16855
+ current = true;
16856
+ },
16857
+ o(local) {
16858
+ transition_out(errorsolid.$$.fragment, local);
16859
+ current = false;
16860
+ },
16861
+ d(detaching) {
16862
+ destroy_component(errorsolid, detaching);
16863
+ }
16864
+ };
16865
+ }
16866
+ function create_if_block_112(ctx) {
16867
+ let successsolid;
16868
+ let current;
16869
+ successsolid = new SuccessSolid_default({});
16870
+ return {
16871
+ c() {
16872
+ create_component(successsolid.$$.fragment);
16873
+ },
16874
+ m(target, anchor) {
16875
+ mount_component(successsolid, target, anchor);
16876
+ current = true;
16877
+ },
16878
+ i(local) {
16879
+ if (current)
16880
+ return;
16881
+ transition_in(successsolid.$$.fragment, local);
16882
+ current = true;
16883
+ },
16884
+ o(local) {
16885
+ transition_out(successsolid.$$.fragment, local);
16886
+ current = false;
16887
+ },
16888
+ d(detaching) {
16889
+ destroy_component(successsolid, detaching);
16890
+ }
16891
+ };
16892
+ }
16893
+ function create_each_block_12(ctx) {
16894
+ let div2;
16895
+ let p;
16896
+ let t0_value = useIsEven(
16897
+ /*iterationIndex*/
16898
+ ctx[11]
16899
+ ) ? `Student's` : "Correct";
16900
+ let t0;
16901
+ let t1;
16902
+ let p_class_value;
16903
+ let t2;
16904
+ let div1;
16905
+ let label;
16906
+ let span0;
16907
+ let t3;
16908
+ let span1;
16909
+ let label_for_value;
16910
+ let label_class_value;
16911
+ let t5;
16912
+ let div0;
16913
+ let show_if_1;
16914
+ let current_block_type_index;
16915
+ let if_block0;
16916
+ let div0_aria_label_value;
16917
+ let div0_class_value;
16918
+ let div0_id_value;
16919
+ let div0_tabindex_value;
16920
+ let autosize_action;
16921
+ let t6;
16922
+ let show_if = useIsEven(
16923
+ /*iterationIndex*/
16924
+ ctx[11]
16925
+ );
16926
+ let div1_class_value;
16927
+ let div2_class_value;
16928
+ let current;
16929
+ let mounted;
16930
+ let dispose;
16931
+ const if_block_creators = [create_if_block_211, create_else_block_23];
16932
+ const if_blocks = [];
16933
+ function select_block_type(ctx2, dirty) {
16934
+ if (useIsEven(
16935
+ /*iterationIndex*/
16936
+ ctx2[11]
16937
+ ))
16938
+ return 0;
16939
+ return 1;
16940
+ }
16941
+ current_block_type_index = select_block_type(ctx, -1);
16942
+ if_block0 = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
16943
+ let if_block1 = show_if && create_if_block13(ctx);
16944
+ return {
16945
+ c() {
16946
+ div2 = element("div");
16947
+ p = element("p");
16948
+ t0 = text(t0_value);
16949
+ t1 = text(" answers:");
16950
+ t2 = space();
16951
+ div1 = element("div");
16952
+ label = element("label");
16953
+ span0 = element("span");
16954
+ t3 = space();
16955
+ span1 = element("span");
16956
+ span1.textContent = `${/*itemIndex*/
16957
+ ctx[8] + 1}`;
16958
+ t5 = space();
16959
+ div0 = element("div");
16960
+ if_block0.c();
16961
+ t6 = space();
16962
+ if (if_block1)
16963
+ if_block1.c();
16964
+ attr(p, "class", p_class_value = "text-base text-charcoal font-semibold " + (useIsEven(
16965
+ /*iterationIndex*/
16966
+ ctx[11]
16967
+ ) && /*itemIndex*/
16968
+ ctx[8] !== 0 ? "hidden" : !useIsEven(
16969
+ /*iterationIndex*/
16970
+ ctx[11]
16971
+ ) && /*itemIndex*/
16972
+ ctx[8] !== 0 ? "mt-2 md:mt-0 md:hidden" : !useIsEven(
16973
+ /*iterationIndex*/
16974
+ ctx[11]
16975
+ ) && /*itemIndex*/
16976
+ ctx[8] === 0 ? "mt-2 md:mt-0" : (
16977
+ /*itemIndex*/
16978
+ ctx[8] === 0 ? "" : ""
16979
+ )) + " " + (!useIsEven(
16980
+ /*iterationIndex*/
16981
+ ctx[11]
16982
+ ) && /*answerResults*/
16983
+ ctx[1][
16984
+ /*itemIndex*/
16985
+ ctx[8]
16986
+ ] ? "hidden md:block" : ""));
16987
+ attr(span0, "class", "absolute inset-0 bg-black opacity-5 rounded-l-lg w-8.5 top-1");
16988
+ attr(span1, "class", "absolute font-semibold text-base leading-[19px] text-charcoal px-3 inline-block top-1/2 -translate-y-1/2");
16989
+ attr(label, "for", label_for_value = `${/*iterationIndex*/
16990
+ ctx[11]}-${/*sessionId*/
16991
+ ctx[0]}-${/*itemIndex*/
16992
+ ctx[8]}`);
16993
+ attr(label, "class", label_class_value = "absolute left-0 top-[13px] bottom-0 " + /*correctAnswerDataLength*/
16994
+ (ctx[4] > 1 && !useIsEven(
16995
+ /*iterationIndex*/
16996
+ ctx[11]
16997
+ ) ? "hidden md:inline-block" : (
16998
+ /*correctAnswerDataLength*/
16999
+ ctx[4] > 1 && useIsEven(
17000
+ /*iterationIndex*/
17001
+ ctx[11]
17002
+ ) ? "" : "hidden"
17003
+ )));
17004
+ attr(div0, "role", "textbox");
17005
+ attr(div0, "aria-label", div0_aria_label_value = `${useIsEven(
17006
+ /*iterationIndex*/
17007
+ ctx[11]
17008
+ ) ? `Student's` : "Correct"} answer${useIsEven(
17009
+ /*iterationIndex*/
17010
+ ctx[11]
17011
+ ) && /*answerResults*/
17012
+ ctx[1][
17013
+ /*itemIndex*/
17014
+ ctx[8]
17015
+ ] ? " (Correct)" : useIsEven(
17016
+ /*iterationIndex*/
17017
+ ctx[11]
17018
+ ) && !/*answerResults*/
17019
+ ctx[1][
17020
+ /*itemIndex*/
17021
+ ctx[8]
17022
+ ] ? " (Incorrect)" : ""}, Item number ${/*itemIndex*/
17023
+ ctx[8] + 1}:`);
17024
+ attr(div0, "class", div0_class_value = "typein-textbox py-[9px] pr-4 mt-4 " + /*correctAnswerDataLength*/
17025
+ (ctx[4] > 1 && !useIsEven(
17026
+ /*iterationIndex*/
17027
+ ctx[11]
17028
+ ) ? "md:pl-13.2" : (
17029
+ /*correctAnswerDataLength*/
17030
+ ctx[4] > 1 && useIsEven(
17031
+ /*iterationIndex*/
17032
+ ctx[11]
17033
+ ) ? "pl-13.2" : ""
17034
+ )) + " " + (useIsEven(
17035
+ /*iterationIndex*/
17036
+ ctx[11]
17037
+ ) ? "!pr-11" : "") + " " + (useIsEven(
17038
+ /*iterationIndex*/
17039
+ ctx[11]
17040
+ ) && /*answerResults*/
17041
+ ctx[1][
17042
+ /*itemIndex*/
17043
+ ctx[8]
17044
+ ] ? "border-2 border-green-900" : useIsEven(
17045
+ /*iterationIndex*/
17046
+ ctx[11]
17047
+ ) && !/*answerResults*/
17048
+ ctx[1][
17049
+ /*itemIndex*/
17050
+ ctx[8]
17051
+ ] ? "border-2 border-red-900 bg-red-50" : ""));
17052
+ attr(div0, "aria-readonly", "true");
17053
+ attr(div0, "id", div0_id_value = `${/*iterationIndex*/
17054
+ ctx[11]}-${/*sessionId*/
17055
+ ctx[0]}-${/*itemIndex*/
17056
+ ctx[8]}`);
17057
+ attr(div0, "tabindex", div0_tabindex_value = !useIsEven(
17058
+ /*iterationIndex*/
17059
+ ctx[11]
17060
+ ) && /*answerResults*/
17061
+ ctx[1][
17062
+ /*itemIndex*/
17063
+ ctx[8]
17064
+ ] ? "-1" : "0");
17065
+ attr(div1, "class", div1_class_value = "h-fit relative " + (!useIsEven(
17066
+ /*iterationIndex*/
17067
+ ctx[11]
17068
+ ) && /*answerResults*/
17069
+ ctx[1][
17070
+ /*itemIndex*/
17071
+ ctx[8]
17072
+ ] ? "hidden md:block" : ""));
17073
+ attr(div2, "class", div2_class_value = "flex flex-col md:w-1/2 " + (useIsEven(
17074
+ /*iterationIndex*/
17075
+ ctx[11]
17076
+ ) ? "md:pr-4" : "ml-8.5 md:ml-0 md:pl-4"));
17077
+ },
17078
+ m(target, anchor) {
17079
+ insert(target, div2, anchor);
17080
+ append(div2, p);
17081
+ append(p, t0);
17082
+ append(p, t1);
17083
+ append(div2, t2);
17084
+ append(div2, div1);
17085
+ append(div1, label);
17086
+ append(label, span0);
17087
+ append(label, t3);
17088
+ append(label, span1);
17089
+ append(div1, t5);
17090
+ append(div1, div0);
17091
+ if_blocks[current_block_type_index].m(div0, null);
17092
+ append(div1, t6);
17093
+ if (if_block1)
17094
+ if_block1.m(div1, null);
17095
+ current = true;
17096
+ if (!mounted) {
17097
+ dispose = action_destroyer(autosize_action = svelte_autosize_default.call(null, div0));
17098
+ mounted = true;
17099
+ }
17100
+ },
17101
+ p(ctx2, dirty) {
17102
+ if (!current || dirty & /*answerResults*/
17103
+ 2 && p_class_value !== (p_class_value = "text-base text-charcoal font-semibold " + (useIsEven(
17104
+ /*iterationIndex*/
17105
+ ctx2[11]
17106
+ ) && /*itemIndex*/
17107
+ ctx2[8] !== 0 ? "hidden" : !useIsEven(
17108
+ /*iterationIndex*/
17109
+ ctx2[11]
17110
+ ) && /*itemIndex*/
17111
+ ctx2[8] !== 0 ? "mt-2 md:mt-0 md:hidden" : !useIsEven(
17112
+ /*iterationIndex*/
17113
+ ctx2[11]
17114
+ ) && /*itemIndex*/
17115
+ ctx2[8] === 0 ? "mt-2 md:mt-0" : (
17116
+ /*itemIndex*/
17117
+ ctx2[8] === 0 ? "" : ""
17118
+ )) + " " + (!useIsEven(
17119
+ /*iterationIndex*/
17120
+ ctx2[11]
17121
+ ) && /*answerResults*/
17122
+ ctx2[1][
17123
+ /*itemIndex*/
17124
+ ctx2[8]
17125
+ ] ? "hidden md:block" : ""))) {
17126
+ attr(p, "class", p_class_value);
17127
+ }
17128
+ if (!current || dirty & /*sessionId*/
17129
+ 1 && label_for_value !== (label_for_value = `${/*iterationIndex*/
17130
+ ctx2[11]}-${/*sessionId*/
17131
+ ctx2[0]}-${/*itemIndex*/
17132
+ ctx2[8]}`)) {
17133
+ attr(label, "for", label_for_value);
17134
+ }
17135
+ if_block0.p(ctx2, dirty);
17136
+ if (!current || dirty & /*answerResults*/
17137
+ 2 && div0_aria_label_value !== (div0_aria_label_value = `${useIsEven(
17138
+ /*iterationIndex*/
17139
+ ctx2[11]
17140
+ ) ? `Student's` : "Correct"} answer${useIsEven(
17141
+ /*iterationIndex*/
17142
+ ctx2[11]
17143
+ ) && /*answerResults*/
17144
+ ctx2[1][
17145
+ /*itemIndex*/
17146
+ ctx2[8]
17147
+ ] ? " (Correct)" : useIsEven(
17148
+ /*iterationIndex*/
17149
+ ctx2[11]
17150
+ ) && !/*answerResults*/
17151
+ ctx2[1][
17152
+ /*itemIndex*/
17153
+ ctx2[8]
17154
+ ] ? " (Incorrect)" : ""}, Item number ${/*itemIndex*/
17155
+ ctx2[8] + 1}:`)) {
17156
+ attr(div0, "aria-label", div0_aria_label_value);
17157
+ }
17158
+ if (!current || dirty & /*answerResults*/
17159
+ 2 && div0_class_value !== (div0_class_value = "typein-textbox py-[9px] pr-4 mt-4 " + /*correctAnswerDataLength*/
17160
+ (ctx2[4] > 1 && !useIsEven(
17161
+ /*iterationIndex*/
17162
+ ctx2[11]
17163
+ ) ? "md:pl-13.2" : (
17164
+ /*correctAnswerDataLength*/
17165
+ ctx2[4] > 1 && useIsEven(
17166
+ /*iterationIndex*/
17167
+ ctx2[11]
17168
+ ) ? "pl-13.2" : ""
17169
+ )) + " " + (useIsEven(
17170
+ /*iterationIndex*/
17171
+ ctx2[11]
17172
+ ) ? "!pr-11" : "") + " " + (useIsEven(
17173
+ /*iterationIndex*/
17174
+ ctx2[11]
17175
+ ) && /*answerResults*/
17176
+ ctx2[1][
17177
+ /*itemIndex*/
17178
+ ctx2[8]
17179
+ ] ? "border-2 border-green-900" : useIsEven(
17180
+ /*iterationIndex*/
17181
+ ctx2[11]
17182
+ ) && !/*answerResults*/
17183
+ ctx2[1][
17184
+ /*itemIndex*/
17185
+ ctx2[8]
17186
+ ] ? "border-2 border-red-900 bg-red-50" : ""))) {
17187
+ attr(div0, "class", div0_class_value);
17188
+ }
17189
+ if (!current || dirty & /*sessionId*/
17190
+ 1 && div0_id_value !== (div0_id_value = `${/*iterationIndex*/
17191
+ ctx2[11]}-${/*sessionId*/
17192
+ ctx2[0]}-${/*itemIndex*/
17193
+ ctx2[8]}`)) {
17194
+ attr(div0, "id", div0_id_value);
17195
+ }
17196
+ if (!current || dirty & /*answerResults*/
17197
+ 2 && div0_tabindex_value !== (div0_tabindex_value = !useIsEven(
17198
+ /*iterationIndex*/
17199
+ ctx2[11]
17200
+ ) && /*answerResults*/
17201
+ ctx2[1][
17202
+ /*itemIndex*/
17203
+ ctx2[8]
17204
+ ] ? "-1" : "0")) {
17205
+ attr(div0, "tabindex", div0_tabindex_value);
17206
+ }
17207
+ if (show_if)
17208
+ if_block1.p(ctx2, dirty);
17209
+ if (!current || dirty & /*answerResults*/
17210
+ 2 && div1_class_value !== (div1_class_value = "h-fit relative " + (!useIsEven(
17211
+ /*iterationIndex*/
17212
+ ctx2[11]
17213
+ ) && /*answerResults*/
17214
+ ctx2[1][
17215
+ /*itemIndex*/
17216
+ ctx2[8]
17217
+ ] ? "hidden md:block" : ""))) {
17218
+ attr(div1, "class", div1_class_value);
17219
+ }
17220
+ },
17221
+ i(local) {
17222
+ if (current)
17223
+ return;
17224
+ transition_in(if_block0);
17225
+ transition_in(if_block1);
17226
+ current = true;
17227
+ },
17228
+ o(local) {
17229
+ transition_out(if_block0);
17230
+ transition_out(if_block1);
17231
+ current = false;
17232
+ },
17233
+ d(detaching) {
17234
+ if (detaching) {
17235
+ detach(div2);
17236
+ }
17237
+ if_blocks[current_block_type_index].d();
17238
+ if (if_block1)
17239
+ if_block1.d();
17240
+ mounted = false;
17241
+ dispose();
17242
+ }
17243
+ };
17244
+ }
17245
+ function create_each_block6(ctx) {
17246
+ let div;
17247
+ let t2;
17248
+ let current;
17249
+ let each_value_1 = ensure_array_like(
17250
+ /*inlineIteration*/
17251
+ ctx[5]
17252
+ );
17253
+ let each_blocks = [];
17254
+ for (let i = 0; i < each_value_1.length; i += 1) {
17255
+ each_blocks[i] = create_each_block_12(get_each_context_12(ctx, each_value_1, i));
17256
+ }
17257
+ const out = (i) => transition_out(each_blocks[i], 1, 1, () => {
17258
+ each_blocks[i] = null;
17259
+ });
17260
+ return {
17261
+ c() {
17262
+ div = element("div");
17263
+ for (let i = 0; i < each_blocks.length; i += 1) {
17264
+ each_blocks[i].c();
17265
+ }
17266
+ t2 = space();
17267
+ attr(div, "class", "flex flex-col md:flex-row");
17268
+ },
17269
+ m(target, anchor) {
17270
+ insert(target, div, anchor);
17271
+ for (let i = 0; i < each_blocks.length; i += 1) {
17272
+ if (each_blocks[i]) {
17273
+ each_blocks[i].m(div, null);
17274
+ }
17275
+ }
17276
+ append(div, t2);
17277
+ current = true;
17278
+ },
17279
+ p(ctx2, dirty) {
17280
+ if (dirty & /*answerResults, correctAnswerDataLength, sessionId, sessionAnswer, correctAnswers*/
17281
+ 31) {
17282
+ each_value_1 = ensure_array_like(
17283
+ /*inlineIteration*/
17284
+ ctx2[5]
17285
+ );
17286
+ let i;
17287
+ for (i = 0; i < each_value_1.length; i += 1) {
17288
+ const child_ctx = get_each_context_12(ctx2, each_value_1, i);
17289
+ if (each_blocks[i]) {
17290
+ each_blocks[i].p(child_ctx, dirty);
17291
+ transition_in(each_blocks[i], 1);
17292
+ } else {
17293
+ each_blocks[i] = create_each_block_12(child_ctx);
17294
+ each_blocks[i].c();
17295
+ transition_in(each_blocks[i], 1);
17296
+ each_blocks[i].m(div, t2);
17297
+ }
17298
+ }
17299
+ group_outros();
17300
+ for (i = each_value_1.length; i < each_blocks.length; i += 1) {
17301
+ out(i);
17302
+ }
17303
+ check_outros();
17304
+ }
17305
+ },
17306
+ i(local) {
17307
+ if (current)
17308
+ return;
17309
+ for (let i = 0; i < each_value_1.length; i += 1) {
17310
+ transition_in(each_blocks[i]);
17311
+ }
17312
+ current = true;
17313
+ },
17314
+ o(local) {
17315
+ each_blocks = each_blocks.filter(Boolean);
17316
+ for (let i = 0; i < each_blocks.length; i += 1) {
17317
+ transition_out(each_blocks[i]);
17318
+ }
17319
+ current = false;
17320
+ },
17321
+ d(detaching) {
17322
+ if (detaching) {
17323
+ detach(div);
17324
+ }
17325
+ destroy_each(each_blocks, detaching);
17326
+ }
17327
+ };
17328
+ }
17329
+ function create_fragment30(ctx) {
17330
+ let each_1_anchor;
17331
+ let current;
17332
+ let each_value = ensure_array_like(
17333
+ /*correctAnswers*/
17334
+ ctx[2]
17335
+ );
17336
+ let each_blocks = [];
17337
+ for (let i = 0; i < each_value.length; i += 1) {
17338
+ each_blocks[i] = create_each_block6(get_each_context6(ctx, each_value, i));
17339
+ }
17340
+ const out = (i) => transition_out(each_blocks[i], 1, 1, () => {
17341
+ each_blocks[i] = null;
17342
+ });
17343
+ return {
17344
+ c() {
17345
+ for (let i = 0; i < each_blocks.length; i += 1) {
17346
+ each_blocks[i].c();
17347
+ }
17348
+ each_1_anchor = empty();
17349
+ },
17350
+ m(target, anchor) {
17351
+ for (let i = 0; i < each_blocks.length; i += 1) {
17352
+ if (each_blocks[i]) {
17353
+ each_blocks[i].m(target, anchor);
17354
+ }
17355
+ }
17356
+ insert(target, each_1_anchor, anchor);
17357
+ current = true;
17358
+ },
17359
+ p(ctx2, [dirty]) {
17360
+ if (dirty & /*inlineIteration, answerResults, correctAnswerDataLength, sessionId, sessionAnswer, correctAnswers*/
17361
+ 63) {
17362
+ each_value = ensure_array_like(
17363
+ /*correctAnswers*/
17364
+ ctx2[2]
17365
+ );
17366
+ let i;
17367
+ for (i = 0; i < each_value.length; i += 1) {
17368
+ const child_ctx = get_each_context6(ctx2, each_value, i);
17369
+ if (each_blocks[i]) {
17370
+ each_blocks[i].p(child_ctx, dirty);
17371
+ transition_in(each_blocks[i], 1);
17372
+ } else {
17373
+ each_blocks[i] = create_each_block6(child_ctx);
17374
+ each_blocks[i].c();
17375
+ transition_in(each_blocks[i], 1);
17376
+ each_blocks[i].m(each_1_anchor.parentNode, each_1_anchor);
17377
+ }
17378
+ }
17379
+ group_outros();
17380
+ for (i = each_value.length; i < each_blocks.length; i += 1) {
17381
+ out(i);
17382
+ }
17383
+ check_outros();
17384
+ }
17385
+ },
17386
+ i(local) {
17387
+ if (current)
17388
+ return;
17389
+ for (let i = 0; i < each_value.length; i += 1) {
17390
+ transition_in(each_blocks[i]);
17391
+ }
17392
+ current = true;
17393
+ },
17394
+ o(local) {
17395
+ each_blocks = each_blocks.filter(Boolean);
17396
+ for (let i = 0; i < each_blocks.length; i += 1) {
17397
+ transition_out(each_blocks[i]);
17398
+ }
17399
+ current = false;
17400
+ },
17401
+ d(detaching) {
17402
+ if (detaching) {
17403
+ detach(each_1_anchor);
17404
+ }
17405
+ destroy_each(each_blocks, detaching);
17406
+ }
17407
+ };
17408
+ }
17409
+ function instance18($$self, $$props, $$invalidate) {
17410
+ let { sessionId } = $$props;
17411
+ let { answerResults = [] } = $$props;
17412
+ let { correctAnswers = [] } = $$props;
17413
+ let { sessionAnswer = [] } = $$props;
17414
+ let correctAnswerDataLength = correctAnswers.length;
17415
+ const inlineIteration = ["student", "correct"];
17416
+ $$self.$$set = ($$props2) => {
17417
+ if ("sessionId" in $$props2)
17418
+ $$invalidate(0, sessionId = $$props2.sessionId);
17419
+ if ("answerResults" in $$props2)
17420
+ $$invalidate(1, answerResults = $$props2.answerResults);
17421
+ if ("correctAnswers" in $$props2)
17422
+ $$invalidate(2, correctAnswers = $$props2.correctAnswers);
17423
+ if ("sessionAnswer" in $$props2)
17424
+ $$invalidate(3, sessionAnswer = $$props2.sessionAnswer);
17425
+ };
17426
+ return [
17427
+ sessionId,
17428
+ answerResults,
17429
+ correctAnswers,
17430
+ sessionAnswer,
17431
+ correctAnswerDataLength,
17432
+ inlineIteration
17433
+ ];
17434
+ }
17435
+ var PromptResultFeedbackTable = class extends SvelteComponent {
17436
+ constructor(options) {
17437
+ super();
17438
+ init(this, options, instance18, create_fragment30, safe_not_equal, {
17439
+ sessionId: 0,
17440
+ answerResults: 1,
17441
+ correctAnswers: 2,
17442
+ sessionAnswer: 3
17443
+ });
17444
+ }
17445
+ get sessionId() {
17446
+ return this.$$.ctx[0];
17447
+ }
17448
+ set sessionId(sessionId) {
17449
+ this.$$set({ sessionId });
17450
+ flush();
17451
+ }
17452
+ get answerResults() {
17453
+ return this.$$.ctx[1];
17454
+ }
17455
+ set answerResults(answerResults) {
17456
+ this.$$set({ answerResults });
17457
+ flush();
17458
+ }
17459
+ get correctAnswers() {
17460
+ return this.$$.ctx[2];
17461
+ }
17462
+ set correctAnswers(correctAnswers) {
17463
+ this.$$set({ correctAnswers });
17464
+ flush();
17465
+ }
17466
+ get sessionAnswer() {
17467
+ return this.$$.ctx[3];
17468
+ }
17469
+ set sessionAnswer(sessionAnswer) {
17470
+ this.$$set({ sessionAnswer });
17471
+ flush();
17472
+ }
17473
+ };
17474
+ customElements.define("prompt-result-feedback-table", create_custom_element(PromptResultFeedbackTable, { "sessionId": {}, "answerResults": {}, "correctAnswers": {}, "sessionAnswer": {} }, [], [], true));
17475
+ var PromptResultFeedbackTable_default = PromptResultFeedbackTable;
17476
+
17477
+ // src/lib/components/prompt/dropdown/PromptDropdown.svelte
17478
+ function get_each_context7(ctx, list, i) {
17479
+ const child_ctx = ctx.slice();
17480
+ child_ctx[29] = list[i];
17481
+ return child_ctx;
17482
+ }
17483
+ function create_else_block7(ctx) {
17484
+ let span;
17485
+ let html_tag;
17486
+ let raw_value = (
17487
+ /*item*/
17488
+ ctx[29].text + ""
17489
+ );
17490
+ let t2;
17491
+ let span_aria_hidden_value;
17492
+ return {
17493
+ c() {
17494
+ span = element("span");
17495
+ html_tag = new HtmlTag(false);
17496
+ t2 = space();
17497
+ html_tag.a = t2;
17498
+ attr(span, "class", "dropdown-text text-xl font-semibold leading-12 text-blue-1000");
17499
+ attr(span, "aria-hidden", span_aria_hidden_value = false);
17500
+ },
17501
+ m(target, anchor) {
17502
+ insert(target, span, anchor);
17503
+ html_tag.m(raw_value, span);
17504
+ append(span, t2);
17505
+ },
17506
+ p: noop,
17507
+ i: noop,
17508
+ o: noop,
17509
+ d(detaching) {
17510
+ if (detaching) {
17511
+ detach(span);
17512
+ }
17513
+ }
17514
+ };
17515
+ }
17516
+ function create_if_block_113(ctx) {
17517
+ let promptdropdowncontainer;
17518
+ let updating_openDropdown;
17519
+ let current;
17520
+ function promptdropdowncontainer_openDropdown_binding(value) {
17521
+ ctx[22](value);
17522
+ }
17523
+ let promptdropdowncontainer_props = {
17524
+ sessionData: (
17525
+ /*sessionData*/
17526
+ ctx[0]
17527
+ ),
17528
+ metadata: (
17529
+ /*metadata*/
17530
+ ctx[9]
17531
+ ),
17532
+ scoringMetadata: (
17533
+ /*scoringMetadata*/
17534
+ ctx[10]
17535
+ ),
17536
+ options: (
17537
+ /*item*/
17538
+ ctx[29]
17539
+ ),
17540
+ answer: (
17541
+ /*answer*/
17542
+ ctx[15]
17543
+ ),
17544
+ isDataSaving: (
17545
+ /*isDataSaving*/
17546
+ ctx[5]
17547
+ ),
17548
+ isFinished: (
17549
+ /*isFinished*/
17550
+ ctx[2]
17551
+ ),
17552
+ isPreviewMode: (
17553
+ /*isPreviewMode*/
17554
+ ctx[3]
17555
+ ),
17556
+ isPreviewModeInteractive: (
17557
+ /*isPreviewModeInteractive*/
17558
+ ctx[4]
17559
+ )
17560
+ };
17561
+ if (
17562
+ /*openDropdown*/
17563
+ ctx[6] !== void 0
17564
+ ) {
17565
+ promptdropdowncontainer_props.openDropdown = /*openDropdown*/
17566
+ ctx[6];
17567
+ }
17568
+ promptdropdowncontainer = new PromptDropdownContainer_default({ props: promptdropdowncontainer_props });
17569
+ binding_callbacks.push(() => bind(promptdropdowncontainer, "openDropdown", promptdropdowncontainer_openDropdown_binding));
17570
+ promptdropdowncontainer.$on(
17571
+ "select",
17572
+ /*select_handler*/
17573
+ ctx[23]
17574
+ );
17575
+ return {
17576
+ c() {
17577
+ create_component(promptdropdowncontainer.$$.fragment);
17578
+ },
17579
+ m(target, anchor) {
17580
+ mount_component(promptdropdowncontainer, target, anchor);
17581
+ current = true;
17582
+ },
17583
+ p(ctx2, dirty) {
17584
+ const promptdropdowncontainer_changes = {};
17585
+ if (dirty[0] & /*sessionData*/
17586
+ 1)
17587
+ promptdropdowncontainer_changes.sessionData = /*sessionData*/
17588
+ ctx2[0];
17589
+ if (dirty[0] & /*isDataSaving*/
17590
+ 32)
17591
+ promptdropdowncontainer_changes.isDataSaving = /*isDataSaving*/
17592
+ ctx2[5];
17593
+ if (dirty[0] & /*isFinished*/
17594
+ 4)
17595
+ promptdropdowncontainer_changes.isFinished = /*isFinished*/
17596
+ ctx2[2];
17597
+ if (dirty[0] & /*isPreviewMode*/
17598
+ 8)
17599
+ promptdropdowncontainer_changes.isPreviewMode = /*isPreviewMode*/
17600
+ ctx2[3];
17601
+ if (dirty[0] & /*isPreviewModeInteractive*/
17602
+ 16)
17603
+ promptdropdowncontainer_changes.isPreviewModeInteractive = /*isPreviewModeInteractive*/
17604
+ ctx2[4];
17605
+ if (!updating_openDropdown && dirty[0] & /*openDropdown*/
17606
+ 64) {
17607
+ updating_openDropdown = true;
17608
+ promptdropdowncontainer_changes.openDropdown = /*openDropdown*/
17609
+ ctx2[6];
17610
+ add_flush_callback(() => updating_openDropdown = false);
17611
+ }
17612
+ promptdropdowncontainer.$set(promptdropdowncontainer_changes);
17613
+ },
17614
+ i(local) {
17615
+ if (current)
17616
+ return;
17617
+ transition_in(promptdropdowncontainer.$$.fragment, local);
17618
+ current = true;
17619
+ },
17620
+ o(local) {
17621
+ transition_out(promptdropdowncontainer.$$.fragment, local);
17622
+ current = false;
17623
+ },
17624
+ d(detaching) {
17625
+ destroy_component(promptdropdowncontainer, detaching);
17626
+ }
17627
+ };
17628
+ }
17629
+ function create_each_block7(ctx) {
17630
+ let current_block_type_index;
17631
+ let if_block;
17632
+ let if_block_anchor;
17633
+ let current;
17634
+ const if_block_creators = [create_if_block_113, create_else_block7];
17635
+ const if_blocks = [];
17636
+ function select_block_type(ctx2, dirty) {
17637
+ if (
17638
+ /*item*/
17639
+ ctx2[29].type === "dropdown"
17640
+ )
17641
+ return 0;
17642
+ return 1;
17643
+ }
17644
+ current_block_type_index = select_block_type(ctx, [-1, -1]);
17645
+ if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
17646
+ return {
17647
+ c() {
17648
+ if_block.c();
17649
+ if_block_anchor = empty();
17650
+ },
17651
+ m(target, anchor) {
17652
+ if_blocks[current_block_type_index].m(target, anchor);
17653
+ insert(target, if_block_anchor, anchor);
17654
+ current = true;
17655
+ },
17656
+ p(ctx2, dirty) {
17657
+ if_block.p(ctx2, dirty);
17658
+ },
17659
+ i(local) {
17660
+ if (current)
17661
+ return;
17662
+ transition_in(if_block);
17663
+ current = true;
17664
+ },
17665
+ o(local) {
17666
+ transition_out(if_block);
17667
+ current = false;
17668
+ },
17669
+ d(detaching) {
17670
+ if (detaching) {
17671
+ detach(if_block_anchor);
17672
+ }
17673
+ if_blocks[current_block_type_index].d(detaching);
17674
+ }
17675
+ };
17676
+ }
17677
+ function create_if_block14(ctx) {
17678
+ let div;
17679
+ let t0;
17680
+ let promptresult;
17681
+ let t1;
17682
+ let promptresultfeedbacktable;
17683
+ let current;
17684
+ promptresult = new PromptResultFeedbackv3_default({
17685
+ props: {
17686
+ isResultCorrect: (
17687
+ /*isResultCorrect*/
17688
+ ctx[17]()
17689
+ ),
17690
+ resultFeedback: (
17691
+ /*resultFeedback*/
17692
+ ctx[18]()
17693
+ ),
17694
+ isSkipped: (
17695
+ /*isSkipped*/
17696
+ ctx[16]()
17697
+ ),
17698
+ hasIcon: true
17699
+ }
17700
+ });
17701
+ promptresultfeedbacktable = new PromptResultFeedbackTable_default({
17702
+ props: {
17703
+ answerResults: (
17704
+ /*getDropdownAnswerResult*/
17705
+ ctx[20]()
17706
+ ),
17707
+ correctAnswers: (
17708
+ /*getCorrectAnswers*/
17709
+ ctx[19]()
17710
+ ),
17711
+ sessionId: (
17712
+ /*sessionId*/
17713
+ ctx[1]
17714
+ ),
17715
+ sessionAnswer: (
17716
+ /*getSessionAnswer*/
17717
+ ctx[21]()
17718
+ )
17719
+ }
17720
+ });
17721
+ return {
17722
+ c() {
17723
+ div = element("div");
17724
+ t0 = space();
17725
+ create_component(promptresult.$$.fragment);
17726
+ t1 = space();
17727
+ create_component(promptresultfeedbacktable.$$.fragment);
17728
+ attr(div, "class", "divider my-6");
17729
+ },
17730
+ m(target, anchor) {
17731
+ insert(target, div, anchor);
17732
+ insert(target, t0, anchor);
17733
+ mount_component(promptresult, target, anchor);
17734
+ insert(target, t1, anchor);
17735
+ mount_component(promptresultfeedbacktable, target, anchor);
17736
+ current = true;
17737
+ },
17738
+ p(ctx2, dirty) {
17739
+ const promptresultfeedbacktable_changes = {};
17740
+ if (dirty[0] & /*sessionId*/
17741
+ 2)
17742
+ promptresultfeedbacktable_changes.sessionId = /*sessionId*/
17743
+ ctx2[1];
17744
+ promptresultfeedbacktable.$set(promptresultfeedbacktable_changes);
17745
+ },
17746
+ i(local) {
17747
+ if (current)
17748
+ return;
17749
+ transition_in(promptresult.$$.fragment, local);
17750
+ transition_in(promptresultfeedbacktable.$$.fragment, local);
17751
+ current = true;
17752
+ },
17753
+ o(local) {
17754
+ transition_out(promptresult.$$.fragment, local);
17755
+ transition_out(promptresultfeedbacktable.$$.fragment, local);
17756
+ current = false;
17757
+ },
17758
+ d(detaching) {
17759
+ if (detaching) {
17760
+ detach(div);
17761
+ detach(t0);
17762
+ detach(t1);
17763
+ }
17764
+ destroy_component(promptresult, detaching);
17765
+ destroy_component(promptresultfeedbacktable, detaching);
17766
+ }
17767
+ };
17768
+ }
17769
+ function create_default_slot5(ctx) {
17770
+ let p;
17771
+ let t2;
17772
+ let if_block_anchor;
17773
+ let current;
17774
+ let each_value = ensure_array_like(
17775
+ /*parseText*/
17776
+ ctx[12](
17777
+ /*dropdownText*/
17778
+ ctx[14].prompt
17779
+ )
17780
+ );
17781
+ let each_blocks = [];
17782
+ for (let i = 0; i < each_value.length; i += 1) {
17783
+ each_blocks[i] = create_each_block7(get_each_context7(ctx, each_value, i));
17784
+ }
17785
+ const out = (i) => transition_out(each_blocks[i], 1, 1, () => {
17786
+ each_blocks[i] = null;
17787
+ });
17788
+ let if_block = (
17789
+ /*isFinished*/
17790
+ ctx[2] && create_if_block14(ctx)
17791
+ );
17792
+ return {
17793
+ c() {
17794
+ p = element("p");
17795
+ for (let i = 0; i < each_blocks.length; i += 1) {
17796
+ each_blocks[i].c();
17797
+ }
17798
+ t2 = space();
17799
+ if (if_block)
17800
+ if_block.c();
17801
+ if_block_anchor = empty();
17802
+ attr(p, "class", "mt-6");
17803
+ },
17804
+ m(target, anchor) {
17805
+ insert(target, p, anchor);
17806
+ for (let i = 0; i < each_blocks.length; i += 1) {
17807
+ if (each_blocks[i]) {
17808
+ each_blocks[i].m(p, null);
17809
+ }
17810
+ }
17811
+ insert(target, t2, anchor);
17812
+ if (if_block)
17813
+ if_block.m(target, anchor);
17814
+ insert(target, if_block_anchor, anchor);
17815
+ current = true;
17816
+ },
17817
+ p(ctx2, dirty) {
17818
+ if (dirty[0] & /*sessionData, metadata, scoringMetadata, parseText, dropdownText, answer, isDataSaving, isFinished, isPreviewMode, isPreviewModeInteractive, openDropdown, dispatch*/
17819
+ 55037) {
17820
+ each_value = ensure_array_like(
17821
+ /*parseText*/
17822
+ ctx2[12](
17823
+ /*dropdownText*/
17824
+ ctx2[14].prompt
17825
+ )
17826
+ );
17827
+ let i;
17828
+ for (i = 0; i < each_value.length; i += 1) {
17829
+ const child_ctx = get_each_context7(ctx2, each_value, i);
17830
+ if (each_blocks[i]) {
17831
+ each_blocks[i].p(child_ctx, dirty);
17832
+ transition_in(each_blocks[i], 1);
17833
+ } else {
17834
+ each_blocks[i] = create_each_block7(child_ctx);
17835
+ each_blocks[i].c();
17836
+ transition_in(each_blocks[i], 1);
17837
+ each_blocks[i].m(p, null);
17838
+ }
17839
+ }
17840
+ group_outros();
17841
+ for (i = each_value.length; i < each_blocks.length; i += 1) {
17842
+ out(i);
17843
+ }
17844
+ check_outros();
17845
+ }
17846
+ if (
17847
+ /*isFinished*/
17848
+ ctx2[2]
17849
+ ) {
17850
+ if (if_block) {
17851
+ if_block.p(ctx2, dirty);
17852
+ if (dirty[0] & /*isFinished*/
17853
+ 4) {
17854
+ transition_in(if_block, 1);
17855
+ }
17856
+ } else {
17857
+ if_block = create_if_block14(ctx2);
17858
+ if_block.c();
17859
+ transition_in(if_block, 1);
17860
+ if_block.m(if_block_anchor.parentNode, if_block_anchor);
17861
+ }
17862
+ } else if (if_block) {
17863
+ group_outros();
17864
+ transition_out(if_block, 1, 1, () => {
17865
+ if_block = null;
17866
+ });
17867
+ check_outros();
17868
+ }
17869
+ },
17870
+ i(local) {
17871
+ if (current)
17872
+ return;
17873
+ for (let i = 0; i < each_value.length; i += 1) {
17874
+ transition_in(each_blocks[i]);
17875
+ }
17876
+ transition_in(if_block);
17877
+ current = true;
17878
+ },
17879
+ o(local) {
17880
+ each_blocks = each_blocks.filter(Boolean);
17881
+ for (let i = 0; i < each_blocks.length; i += 1) {
17882
+ transition_out(each_blocks[i]);
17883
+ }
17884
+ transition_out(if_block);
17885
+ current = false;
17886
+ },
17887
+ d(detaching) {
17888
+ if (detaching) {
17889
+ detach(p);
17890
+ detach(t2);
17891
+ detach(if_block_anchor);
17892
+ }
17893
+ destroy_each(each_blocks, detaching);
17894
+ if (if_block)
17895
+ if_block.d(detaching);
17896
+ }
17897
+ };
17898
+ }
17899
+ function create_fragment31(ctx) {
17900
+ let promptbody;
17901
+ let current;
17902
+ promptbody = new PromptBody_default({
17903
+ props: {
17904
+ rubric: (
17905
+ /*rubric*/
17906
+ ctx[8].text
17907
+ ),
17908
+ prompt: (
17909
+ /*prompt*/
17910
+ ctx[13]
17911
+ ),
17912
+ interactionType: INTERACTION_TYPE_DROPDOWN,
17913
+ stimulus: (
17914
+ /*stimulus*/
17915
+ ctx[11]
17916
+ ),
17917
+ hasDivider: false,
17918
+ $$slots: { default: [create_default_slot5] },
17919
+ $$scope: { ctx }
17920
+ }
17921
+ });
17922
+ return {
17923
+ c() {
17924
+ create_component(promptbody.$$.fragment);
17925
+ },
17926
+ m(target, anchor) {
17927
+ mount_component(promptbody, target, anchor);
17928
+ current = true;
17929
+ },
17930
+ p(ctx2, dirty) {
17931
+ const promptbody_changes = {};
17932
+ if (dirty[0] & /*sessionId, isFinished, sessionData, isDataSaving, isPreviewMode, isPreviewModeInteractive, openDropdown*/
17933
+ 127 | dirty[1] & /*$$scope*/
17934
+ 2) {
17935
+ promptbody_changes.$$scope = { dirty, ctx: ctx2 };
17936
+ }
17937
+ promptbody.$set(promptbody_changes);
17938
+ },
17939
+ i(local) {
17940
+ if (current)
17941
+ return;
17942
+ transition_in(promptbody.$$.fragment, local);
17943
+ current = true;
17944
+ },
17945
+ o(local) {
17946
+ transition_out(promptbody.$$.fragment, local);
17947
+ current = false;
17948
+ },
17949
+ d(detaching) {
17950
+ destroy_component(promptbody, detaching);
17951
+ }
17952
+ };
17953
+ }
17954
+ function instance19($$self, $$props, $$invalidate) {
17955
+ let { sessionData } = $$props;
17956
+ let { sessionId } = $$props;
17957
+ let { isFinished = false } = $$props;
17958
+ let { isPreviewMode = false } = $$props;
17959
+ let { isPreviewModeInteractive = false } = $$props;
17960
+ let { isDataSaving = false } = $$props;
17961
+ const dispatch = createEventDispatcher();
17962
+ const { rubric, interaction, metadata, scoringMetadata, stimulus } = sessionData;
17963
+ let openDropdown = null;
17964
+ const parseText = (dropdownText2) => {
17965
+ return dropdownText2.split(/(<eat-contentful:[^>]+>)/g).map((part) => {
17966
+ const match = part.match(/<eat-contentful:([^>]+)>/);
17967
+ if (match) {
17968
+ const found = options.find((item) => item.id === match[1]);
17969
+ const answerList = !isFinished ? found?.list : [...found?.correct_answers || [], ...found?.distractors || []];
17970
+ return found ? {
17971
+ type: "dropdown",
17972
+ id: found.id,
17973
+ list: answerList
17974
+ } : { type: "text", text: part };
17975
+ }
17976
+ return { type: "text", text: part };
17977
+ }).filter((item) => {
17978
+ if (item.type === "dropdown")
17979
+ return true;
17980
+ const strippedText = item.text.replace(/<[^>]*>/g, "").trim();
17981
+ return strippedText !== "";
17982
+ }).map((item) => {
17983
+ if (item.type === "text") {
17984
+ item.text = item.text.replace(/<\/?p[^>]*>/g, "").trim();
17985
+ }
17986
+ return item;
17987
+ });
17988
+ };
17989
+ const { prompt, text: dropdownText, options, feedback } = interaction;
17990
+ const getDropdownAnswerEvent = () => {
17991
+ const dropdownAnswerEvents = metadata.interactions.events;
17992
+ return dropdownAnswerEvents[dropdownAnswerEvents.length - 1]?.answer;
17993
+ };
17994
+ let answer = options.map((data) => {
17995
+ if (metadata) {
17996
+ const sessionChoice = getDropdownAnswerEvent().find((sessionEvent) => sessionEvent.id === data.id).choice;
17997
+ return { id: data.id, choice: sessionChoice };
17998
+ }
17999
+ return { id: data.id, choice: "" };
18000
+ });
18001
+ const getSessionFeedbackData = () => {
18002
+ if (!isFinished)
18003
+ return [];
18004
+ const { answer: sessionAnswer, correctAnswer: sessionCorrectAnswer } = scoringMetadata;
18005
+ return sessionCorrectAnswer.map(({ id, correct_answer_list }) => {
18006
+ const userChoice = sessionAnswer.find((data) => data.id === id)?.choice;
18007
+ return userChoice ? correct_answer_list.includes(userChoice) ? "correct" : "incorrect" : "skipped";
18008
+ });
18009
+ };
18010
+ const isSkipped = () => {
18011
+ if (!isFinished)
18012
+ return;
18013
+ if (!scoringMetadata.hasAnswer)
18014
+ return true;
18015
+ const answerStatus = getSessionFeedbackData();
18016
+ return answerStatus.includes("skipped") && !answerStatus.includes("incorrect");
18017
+ };
18018
+ const isResultCorrect = () => {
18019
+ return getSessionFeedbackData().every((status) => status === "correct");
18020
+ };
18021
+ const resultFeedback = () => {
18022
+ if (!isFinished)
18023
+ return "";
18024
+ const { correct: correctFeedback, incorrect: incorrectFeedback } = feedback;
18025
+ return isResultCorrect() ? correctFeedback : incorrectFeedback;
18026
+ };
18027
+ const getCorrectAnswers = () => {
18028
+ if (isFinished) {
18029
+ return scoringMetadata?.correctAnswer.map((data) => data.correct_answer_list);
18030
+ }
18031
+ };
18032
+ const getDropdownAnswerResult = () => {
18033
+ const correctAnswerList = getCorrectAnswers();
18034
+ if (isFinished) {
18035
+ return scoringMetadata?.answer.map((item, index) => {
18036
+ return correctAnswerList[index].includes(item.choice);
18037
+ });
18038
+ }
18039
+ };
18040
+ const getSessionAnswer = () => {
18041
+ if (isFinished) {
18042
+ return scoringMetadata?.answer.map((item) => item.choice);
18043
+ }
18044
+ };
18045
+ function promptdropdowncontainer_openDropdown_binding(value) {
18046
+ openDropdown = value;
18047
+ $$invalidate(6, openDropdown);
18048
+ }
18049
+ const select_handler = (choice) => {
18050
+ dispatch("saveDropdown", { answer: choice.detail });
18051
+ };
18052
+ $$self.$$set = ($$props2) => {
18053
+ if ("sessionData" in $$props2)
18054
+ $$invalidate(0, sessionData = $$props2.sessionData);
18055
+ if ("sessionId" in $$props2)
18056
+ $$invalidate(1, sessionId = $$props2.sessionId);
18057
+ if ("isFinished" in $$props2)
18058
+ $$invalidate(2, isFinished = $$props2.isFinished);
18059
+ if ("isPreviewMode" in $$props2)
18060
+ $$invalidate(3, isPreviewMode = $$props2.isPreviewMode);
18061
+ if ("isPreviewModeInteractive" in $$props2)
18062
+ $$invalidate(4, isPreviewModeInteractive = $$props2.isPreviewModeInteractive);
18063
+ if ("isDataSaving" in $$props2)
18064
+ $$invalidate(5, isDataSaving = $$props2.isDataSaving);
18065
+ };
18066
+ return [
18067
+ sessionData,
18068
+ sessionId,
18069
+ isFinished,
18070
+ isPreviewMode,
18071
+ isPreviewModeInteractive,
18072
+ isDataSaving,
18073
+ openDropdown,
18074
+ dispatch,
18075
+ rubric,
18076
+ metadata,
18077
+ scoringMetadata,
18078
+ stimulus,
18079
+ parseText,
18080
+ prompt,
18081
+ dropdownText,
18082
+ answer,
18083
+ isSkipped,
18084
+ isResultCorrect,
18085
+ resultFeedback,
18086
+ getCorrectAnswers,
18087
+ getDropdownAnswerResult,
18088
+ getSessionAnswer,
18089
+ promptdropdowncontainer_openDropdown_binding,
18090
+ select_handler
18091
+ ];
18092
+ }
18093
+ var PromptDropdown = class extends SvelteComponent {
18094
+ constructor(options) {
18095
+ super();
18096
+ init(
18097
+ this,
18098
+ options,
18099
+ instance19,
18100
+ create_fragment31,
18101
+ safe_not_equal,
18102
+ {
18103
+ sessionData: 0,
18104
+ sessionId: 1,
18105
+ isFinished: 2,
18106
+ isPreviewMode: 3,
18107
+ isPreviewModeInteractive: 4,
18108
+ isDataSaving: 5
18109
+ },
18110
+ null,
18111
+ [-1, -1]
18112
+ );
18113
+ }
18114
+ get sessionData() {
18115
+ return this.$$.ctx[0];
18116
+ }
18117
+ set sessionData(sessionData) {
18118
+ this.$$set({ sessionData });
18119
+ flush();
18120
+ }
18121
+ get sessionId() {
18122
+ return this.$$.ctx[1];
18123
+ }
18124
+ set sessionId(sessionId) {
18125
+ this.$$set({ sessionId });
18126
+ flush();
18127
+ }
18128
+ get isFinished() {
18129
+ return this.$$.ctx[2];
18130
+ }
18131
+ set isFinished(isFinished) {
18132
+ this.$$set({ isFinished });
18133
+ flush();
18134
+ }
18135
+ get isPreviewMode() {
18136
+ return this.$$.ctx[3];
18137
+ }
18138
+ set isPreviewMode(isPreviewMode) {
18139
+ this.$$set({ isPreviewMode });
18140
+ flush();
18141
+ }
18142
+ get isPreviewModeInteractive() {
18143
+ return this.$$.ctx[4];
18144
+ }
18145
+ set isPreviewModeInteractive(isPreviewModeInteractive) {
18146
+ this.$$set({ isPreviewModeInteractive });
18147
+ flush();
18148
+ }
18149
+ get isDataSaving() {
18150
+ return this.$$.ctx[5];
18151
+ }
18152
+ set isDataSaving(isDataSaving) {
18153
+ this.$$set({ isDataSaving });
18154
+ flush();
18155
+ }
18156
+ };
18157
+ customElements.define("prompt-dropdown", create_custom_element(PromptDropdown, { "sessionData": {}, "sessionId": {}, "isFinished": { "type": "Boolean" }, "isPreviewMode": { "type": "Boolean" }, "isPreviewModeInteractive": { "type": "Boolean" }, "isDataSaving": { "type": "Boolean" } }, [], [], true));
18158
+ var PromptDropdown_default = PromptDropdown;
18159
+
18160
+ // src/lib/components/prompt/skeleton/PromptSkeleton.svelte
18161
+ function create_fragment32(ctx) {
18162
+ let div3;
18163
+ return {
18164
+ c() {
18165
+ div3 = element("div");
18166
+ div3.innerHTML = `<div class="animate-skeleton w-full h-6 mb-2 rounded md:mb-4"></div> <div class="animate-skeleton w-full h-6 mb-12 rounded"></div> <div class="animate-skeleton w-full h-52 rounded"></div>`;
18167
+ },
18168
+ m(target, anchor) {
18169
+ insert(target, div3, anchor);
18170
+ },
18171
+ p: noop,
18172
+ i: noop,
18173
+ o: noop,
18174
+ d(detaching) {
18175
+ if (detaching) {
18176
+ detach(div3);
18177
+ }
18178
+ }
18179
+ };
18180
+ }
18181
+ var PromptSkeleton = class extends SvelteComponent {
18182
+ constructor(options) {
18183
+ super();
18184
+ init(this, options, null, create_fragment32, safe_not_equal, {});
18185
+ }
18186
+ };
18187
+ customElements.define("prompt-skeleton", create_custom_element(PromptSkeleton, {}, [], [], true));
18188
+ var PromptSkeleton_default = PromptSkeleton;
18189
+
18190
+ // src/lib/components/prompt/PromptBuilder.svelte
18191
+ function add_css2(target) {
18192
+ append_styles(target, "svelte-83i95f", '*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;font-feature-settings:normal;font-family:Mulish, sans-serif;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*{font-family:Mulish, sans-serif}input::-moz-selection,textarea::-moz-selection{background-color:hsla(0, 0%, 85%, 0.4)}input::selection,textarea::selection{background-color:hsla(0, 0%, 85%, 0.4)}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.p2{font-size:0.875rem;font-weight:600;line-height:1.25rem;line-height:1.5}.blanket-overlay{--tw-bg-opacity:1;background-color:rgb(33 37 41/var(--tw-bg-opacity));inset:0;opacity:0.3;position:absolute}.item-heading{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity));font-size:1.25rem;letter-spacing:-0.025em;line-height:1.5rem}.focus-ring:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.hover-focus-ring:hover,.raw-focus-ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;transition-duration:50ms}.focus-ring-by-dropdown,.hover-focus-ring:hover,.raw-focus-ring{box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px}.focus-ring-by-dropdown{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:0 0 0 2px #fff, 0 0 0 4px #212529, 0 0 0 6px #fde047}.divider{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(218 224 224/var(--tw-border-opacity))}@keyframes svelte-83i95f-pulse{50%{opacity:0.5}}.animate-skeleton{--tw-bg-opacity:1;animation:svelte-83i95f-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;background-color:rgb(226 232 240/var(--tw-bg-opacity))}.btn-mcq-option:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-ring-offset-color:#212529;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.btn-mcq-option{--tw-text-opacity:1;--tw-border-opacity:1;--tw-bg-opacity:1;align-items:center;background-color:rgb(248 248 248/var(--tw-bg-opacity));border-color:rgb(75 85 99/var(--tw-border-opacity));border-radius:0.5rem;border-width:1px;color:rgb(33 37 41/var(--tw-text-opacity));display:flex;font-size:1rem;justify-content:space-between;line-height:1.5rem;line-height:19.2px;margin-bottom:1rem;min-height:52px;padding:0.25rem 0.75rem;width:100%}.btn-mcq-option:active{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}@media(hover: hover) and (pointer: fine){.btn-mcq-option:hover{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity));border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}}.btn-mcq-option{box-sizing:border-box}.btn-mcq-option:active{--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity))}.btn-mcq-option>span>span>.choice{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;align-items:center;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(156 163 175/var(--tw-border-opacity));border-radius:1rem;border-width:1px;color:rgb(33 37 41/var(--tw-text-opacity));display:flex;font-size:1rem;font-weight:700;height:2rem;justify-content:center;letter-spacing:0.05em;line-height:1rem;margin-right:1rem;padding:0.5rem;width:2rem}.btn-mcq-option.selected{--tw-border-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity));border-color:rgb(40 44 135/var(--tw-border-opacity));border-width:2px}.btn-mcq-option.selected,.btn-mcq-option.selected:active{--tw-bg-opacity:1;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.btn-mcq-option.selected:active{background-color:rgb(84 101 251/var(--tw-bg-opacity))}@media(hover: hover) and (pointer: fine){.btn-mcq-option.selected:hover{--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}}.btn-mcq-option.finished{cursor:default}.btn-mcq-option.finished:active,.btn-mcq-option.finished:hover{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity));border-color:rgb(75 85 99/var(--tw-border-opacity));border-width:1px}.btn-mcq-option.selected>span>span>.choice{--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity))}.btn-mcq-option>span>span>.custom-checkbox{--tw-border-opacity:1;--tw-bg-opacity:1;align-items:center;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(75 85 99/var(--tw-border-opacity));border-radius:0.25rem;border-width:1px;display:flex;height:1.75rem;justify-content:center;margin-left:1rem;pointer-events:none;width:1.75rem}@media(hover: hover) and (pointer: fine){.btn-mcq-option:hover>span>span>.custom-checkbox{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}.btn-mcq-option:active>span>span>.custom-checkbox.preview-only,.btn-mcq-option:hover>span>span>.custom-checkbox.preview-only{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity));border-width:1px}}.btn-mcq-option:active>span>span>.custom-checkbox{--tw-border-opacity:1;border-color:rgb(40 44 135/var(--tw-border-opacity));border-width:2px}.btn-mcq-option.selected>span>span>.custom-checkbox{--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity));border-width:0;pointer-events:none}@media(hover: hover) and (pointer: fine){.btn-mcq-option.selected:hover>span>span>.custom-checkbox{--tw-bg-opacity:1;background-color:rgb(76 91 226/var(--tw-bg-opacity));border-width:0}}.btn-mcq-option.selected:active>span>span>.custom-checkbox{--tw-bg-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity));border-width:0}.btn-mcq-option.missing.correct{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity));border-color:rgb(21 128 61/var(--tw-border-opacity));border-width:1px;padding-bottom:0.5rem;padding-top:0.5rem}@media(hover: hover) and (pointer: fine){.btn-mcq-option.correct.interactive:active,.btn-mcq-option.correct.interactive:hover,.btn-mcq-option.incorrect.interactive:active,.btn-mcq-option.incorrect.interactive:hover,.btn-mcq-option.missing.interactive:active,.btn-mcq-option.missing.interactive:hover{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(238 240 255/var(--tw-bg-opacity));border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}}.btn-mcq-option.selected.correct{background-color:rgb(240 253 244/var(--tw-bg-opacity));border-color:rgb(21 128 61/var(--tw-border-opacity));border-width:1px}.btn-mcq-option.selected.correct,.btn-mcq-option.selected.incorrect{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.btn-mcq-option.selected.incorrect{background-color:rgb(253 242 248/var(--tw-bg-opacity));border-color:rgb(190 24 93/var(--tw-border-opacity));border-width:1px}.btn-mcq-option.selected.correct>span>span>.choice,.btn-mcq-option.selected.incorrect>span>span>.choice{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(113 115 119/var(--tw-border-opacity));border-width:1px}.typein-textbox:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.typein-textbox{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(75 85 99/var(--tw-border-opacity));border-radius:0.5rem;border-width:1px;color:rgb(33 37 41/var(--tw-text-opacity));font-size:1rem;line-height:1.5rem;padding:0.75rem 1rem;width:100%}.typein-textbox::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(55 65 81/var(--tw-placeholder-opacity))}.typein-textbox::placeholder{--tw-placeholder-opacity:1;color:rgb(55 65 81/var(--tw-placeholder-opacity))}.typein-textbox:focus{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px}}.typein-textbox:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0)) !important}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{transition-duration:50ms}}.typein-textbox:focus{outline-color:#212529;outline-width:2px}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{outline-color:#212529;outline-width:2px}}.typein-textbox:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity))}.inline-typein-container>p{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity));font-size:1.25rem;font-weight:600;line-height:3rem}#dnd-action-dragged-el{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-border-opacity:1!important;--tw-bg-opacity:1!important;background-color:rgb(205 208 254/var(--tw-bg-opacity)) !important;border-color:rgb(93 99 107/var(--tw-border-opacity)) !important;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));cursor:grabbing !important;outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}#dnd-action-dragged-el .btn-vertical-icon{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity));cursor:grabbing !important}#dnd-action-dragged-el .preview-icon{display:none !important}#dnd-action-dragged-el .preview-vertical{display:block !important}.category-content>.missing-answer-label{display:block}.category-content>.missing-answer-label~.missing-answer-label{display:none}.text-stimulus{padding-bottom:1rem;padding-top:1rem}.text-stimulus p{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity));font-size:1.25rem;line-height:1.75rem;padding-bottom:0.5rem}.text-stimulus ol,.text-stimulus ul{font-size:1rem;line-height:1.5rem;list-style-position:inside;padding-bottom:0.5rem;padding-left:0.5rem}.text-stimulus ol ::marker,.text-stimulus ul ::marker{color:#282c87}.text-stimulus ol::marker,.text-stimulus ul::marker{color:#282c87}.text-stimulus ul{list-style-type:disc}.text-stimulus ol{list-style-type:decimal}.text-stimulus ul li>p{margin-left:-0.5rem}.text-stimulus ol>li>p,.text-stimulus ul>li>p{display:inline;font-size:1rem;line-height:1.5rem;padding-bottom:0;padding-top:0}.text-stimulus div.table-container:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:4px;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.text-stimulus div.table-container{border-radius:0.5rem;overflow:auto;padding-left:0.125rem;padding-right:0.125rem}.text-stimulus table{--tw-border-spacing-x:0.75rem;--tw-border-spacing-y:0.75rem;--tw-shadow:0 0 0 1px #9ca3af;--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color);border-radius:0.5rem;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y);box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);margin-bottom:1rem;margin-top:0.5rem;overflow-x:auto;width:100%}.text-stimulus table tr{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(156 163 175/var(--tw-border-opacity))}.text-stimulus table tr:last-child{border-color:transparent}.text-stimulus table td,.text-stimulus table th{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity));border-left-width:1px;min-width:140px}.text-stimulus table td:first-child,.text-stimulus table th:first-child{border-style:none}.text-stimulus table td>p,.text-stimulus table th>p{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity));font-size:1rem;line-height:1.5rem;padding:0.75rem;text-align:left}.text-stimulus table th>p{font-weight:400}.prompt p,.text-stimulus table th p{font-weight:600}.prompt p b,.prompt p b i,.prompt p b i u,.prompt p b u,.prompt p b u i,.prompt p i b,.prompt p i b u,.prompt p i u b,.prompt p u b,.prompt p u b i,.prompt p u i b,.text-stimulus table th p b,.text-stimulus table th p b i,.text-stimulus table th p b i u,.text-stimulus table th p b u,.text-stimulus table th p b u i,.text-stimulus table th p i b,.text-stimulus table th p i b u,.text-stimulus table th p i u b,.text-stimulus table th p u b,.text-stimulus table th p u b i,.text-stimulus table th p u i b{font-weight:900}.dropdown-text:not(:last-child),.dropdown:not(:last-child){margin-right:1rem}.dropdown-container{--tw-border-opacity:1;align-items:center;border-color:rgb(75 85 99/var(--tw-border-opacity));border-radius:0.5rem;border-width:1px;display:flex;height:2.75rem;overflow:hidden;white-space:nowrap;width:15rem}.dropdown-container:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px}.dropdown-container:active,.dropdown-container:focus{box-shadow:0 0 0 2px #fff, 0 0 0 4px #212529, 0 0 0 6px #fde047}@media(hover: hover) and (pointer: fine){.dropdown-container:hover{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity));border-width:2px;outline-color:#212529;outline-width:2px}}.dropdown-menu{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(75 85 99/var(--tw-border-opacity));border-radius:0.5rem;border-width:1px;margin-top:0.5rem;max-height:400px;max-width:500px;min-width:240px;overflow:auto;overflow-x:hidden;position:absolute;word-break:break-all;z-index:50}.dropdown-item{cursor:pointer;font-size:1rem;line-height:1.5rem;outline:2px solid transparent;outline-offset:2px;padding:0.5rem 1rem}.dropdown-itemtext{border-bottom-width:1px;border-color:transparent}.dropdown-itemtext.hover-option{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity));color:rgb(46 47 212/var(--tw-text-opacity));font-weight:600}.dropdown-itemtext.current-option{--tw-bg-opacity:1;--tw-text-opacity:1;--tw-border-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity));border-bottom-width:1px;border-color:rgb(0 0 0/var(--tw-border-opacity));color:rgb(0 0 0/var(--tw-text-opacity));outline:2px solid transparent;outline-offset:2px}.dropdown-itemtext:active{border-bottom-width:2px;font-weight:600}.sr-only{clip:rect(0, 0, 0, 0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-y-0{bottom:0;top:0}.-top-2{top:-0.5rem}.-top-2\\.5{top:-0.625rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-\\[7px\\]{bottom:7px}.left-0{left:0}.left-4{left:1rem}.left-\\[-9999px\\]{left:-9999px}.right-0{right:0}.right-4{right:1rem}.top-0{top:0}.top-1{top:0.25rem}.top-1\\/2{top:50%}.top-12{top:3rem}.top-3{top:0.75rem}.top-3\\.5{top:0.875rem}.top-\\[13px\\]{top:13px}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.m-auto{margin:auto}.mx-0{margin-left:0;margin-right:0}.mx-0\\.5{margin-left:0.125rem;margin-right:0.125rem}.my-2{margin-bottom:0.5rem;margin-top:0.5rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.my-auto{margin-bottom:auto;margin-top:auto}.-mt-0{margin-top:0}.-mt-0\\.5{margin-top:-0.125rem}.mb-1{margin-bottom:0.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:0.25rem}.ml-3{margin-left:0.75rem}.ml-8{margin-left:2rem}.ml-8\\.5{margin-left:2.125rem}.ml-\\[3px\\]{margin-left:3px}.mr-1{margin-right:0.25rem}.mr-2{margin-right:0.5rem}.mr-4{margin-right:1rem}.mt-0{margin-top:0}.mt-0\\.5{margin-top:0.125rem}.mt-1{margin-top:0.25rem}.mt-2{margin-top:0.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-7\\.5{margin-top:1.875}.mt-9{margin-top:2.25rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-10\\.5{height:2.625rem}.h-11{height:2.75rem}.h-2{height:0.5rem}.h-4{height:1rem}.h-52{height:13rem}.h-6{height:1.5rem}.h-fit{height:-moz-fit-content;height:fit-content}.h-full{height:100%}.max-h-\\[470px\\]{max-height:470px}.max-h-\\[660px\\]{max-height:660px}.min-h-\\[133px\\]{min-height:133px}.min-h-\\[140px\\]{min-height:140px}.min-h-\\[54px\\]{min-height:54px}.min-h-\\[86px\\]{min-height:86px}.w-11{width:2.75rem}.w-2{width:0.5rem}.w-2\\/4{width:50%}.w-3{width:0.75rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-8{width:2rem}.w-8\\.5{width:2.125rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\\[44px\\]{min-width:44px}.min-w-\\[85px\\]{min-width:85px}.max-w-\\[400px\\]{max-width:400px}.flex-1{flex:1 1 0%}.flex-none{flex:none}.grow{flex-grow:1}.basis-0{flex-basis:0px}.-translate-y-1\\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\!cursor-default{cursor:default !important}.\\!cursor-pointer{cursor:pointer !important}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:0.5rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0.5rem * var(--tw-space-y-reverse));margin-top:calc(0.5rem * (1 - var(--tw-space-y-reverse)))}.space-y-reverse>:not([hidden])~:not([hidden]){--tw-space-y-reverse:1}.overflow-hidden{overflow:hidden}.overflow-y-visible{overflow-y:visible}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:0.25rem}.rounded-\\[32px\\]{border-radius:32px}.rounded-lg{border-radius:0.5rem}.rounded-md{border-radius:0.375rem}.rounded-b-lg{border-bottom-right-radius:0.5rem}.rounded-b-lg,.rounded-l-lg{border-bottom-left-radius:0.5rem}.rounded-l-lg,.rounded-t-lg{border-top-left-radius:0.5rem}.rounded-t-lg{border-top-right-radius:0.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-l-6,.border-l-\\[6px\\]{border-left-width:6px}.border-dashed{border-style:dashed}.\\!border-blue-1000{--tw-border-opacity:1!important;border-color:rgb(40 44 135/var(--tw-border-opacity)) !important}.border-blue-1000{--tw-border-opacity:1;border-color:rgb(40 44 135/var(--tw-border-opacity))}.border-blue-950{--tw-border-opacity:1;border-color:rgb(29 78 216/var(--tw-border-opacity))}.border-charcoal{--tw-border-opacity:1;border-color:rgb(33 37 41/var(--tw-border-opacity))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.border-gray-800{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.border-gray-850{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity))}.border-green-800{--tw-border-opacity:1;border-color:rgb(0 102 5/var(--tw-border-opacity))}.border-green-900{--tw-border-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity))}.border-red-600{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.border-red-800{--tw-border-opacity:1;border-color:rgb(217 12 85/var(--tw-border-opacity))}.border-red-900{--tw-border-opacity:1;border-color:rgb(190 24 93/var(--tw-border-opacity))}.border-soft-blue{--tw-border-opacity:1;border-color:rgb(84 101 251/var(--tw-border-opacity))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity))}.\\!bg-violet-100{--tw-bg-opacity:1!important;background-color:rgb(235 235 255/var(--tw-bg-opacity)) !important}.\\!bg-violet-150{--tw-bg-opacity:1!important;background-color:rgb(205 208 254/var(--tw-bg-opacity)) !important}.\\!bg-white{--tw-bg-opacity:1!important;background-color:rgb(255 255 255/var(--tw-bg-opacity)) !important}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-blue-1000{--tw-bg-opacity:1;background-color:rgb(40 44 135/var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(247 250 250/var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(244 244 244/var(--tw-bg-opacity))}.bg-green-300{--tw-bg-opacity:1;background-color:rgb(241 254 241/var(--tw-bg-opacity))}.bg-red-200{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(253 243 247/var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(253 242 248/var(--tw-bg-opacity))}.bg-soft-blue{--tw-bg-opacity:1;background-color:rgb(84 101 251/var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-violet-100{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.bg-violet-150{--tw-bg-opacity:1;background-color:rgb(205 208 254/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-yellow-1000{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity))}.bg-opacity-5{--tw-bg-opacity:0.05}.p-0{padding:0}.p-0\\.5{padding:0.125rem}.p-1{padding:0.25rem}.p-1\\.5{padding:0.375rem}.p-2{padding:0.5rem}.p-3{padding:0.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-3{padding-left:0.75rem;padding-right:0.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-bottom:0.25rem;padding-top:0.25rem}.py-1\\.5{padding-bottom:0.375rem;padding-top:0.375rem}.py-2{padding-bottom:0.5rem;padding-top:0.5rem}.py-\\[9px\\]{padding-bottom:9px;padding-top:9px}.\\!pr-11{padding-right:2.75rem !important}.pb-0{padding-bottom:0}.pb-10{padding-bottom:2.5rem}.pb-2{padding-bottom:0.5rem}.pb-3{padding-bottom:0.75rem}.pl-13\\.2{padding-left:3.125rem}.pl-24{padding-left:6rem}.pl-3{padding-left:0.75rem}.pl-4{padding-left:1rem}.pr-3{padding-right:0.75rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-0\\.5{padding-top:0.125rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-\\[15px\\]{padding-top:15px}.pt-\\[55px\\]{padding-top:55px}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:0.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.leading-12{line-height:3rem}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-\\[19\\.2px\\]{line-height:19.2px}.leading-\\[19px\\]{line-height:19px}.leading-\\[22px\\]{line-height:22px}.\\!text-gray-900{--tw-text-opacity:1!important;color:rgb(57 62 69/var(--tw-text-opacity)) !important}.text-blue-1000{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity))}.text-blue-850{--tw-text-opacity:1;color:rgb(46 47 212/var(--tw-text-opacity))}.text-blue-950{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity))}.text-charcoal{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity:1;color:rgb(93 99 107/var(--tw-text-opacity))}.text-gray-860{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-green-800{--tw-text-opacity:1;color:rgb(0 102 5/var(--tw-text-opacity))}.text-green-900{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity))}.text-inherit{color:inherit}.text-red-800{--tw-text-opacity:1;color:rgb(217 12 85/var(--tw-text-opacity))}.text-red-900{--tw-text-opacity:1;color:rgb(190 24 93/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.opacity-5{opacity:0.05}.opacity-50{opacity:0.5}.shadow-\\[0_-12px_14px_-16px_\\#00000033\\]{--tw-shadow:0 -12px 14px -16px #00000033;--tw-shadow-colored:0 -12px 14px -16px var(--tw-shadow-color)}.shadow-\\[0_-12px_14px_-16px_\\#00000033\\],.shadow-md{box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow)}.shadow-md{--tw-shadow:0px 2px 8px rgba(0,0,0,.2);--tw-shadow-colored:0px 2px 8px var(--tw-shadow-color)}.\\!outline-none{outline:2px solid transparent !important;outline-offset:2px !important}.outline-none{outline:2px solid transparent;outline-offset:2px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:0.15s;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.duration-300{transition-duration:0.3s}.hover\\:hover-option:hover.dropdown-itemtext{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity));color:rgb(46 47 212/var(--tw-text-opacity));font-weight:600}.active\\:raw-focus-ring-by:active{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(253 224 71/var(--tw-ring-opacity));--tw-ring-offset-width:2px;--tw-ring-offset-color:#212529}.active\\:raw-focus-ring-by:active,.active\\:raw-focus-ring:active{box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}.active\\:raw-focus-ring:active{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px}@media(min-width: 732px){.md\\:item-heading{--tw-text-opacity:1;color:rgb(40 44 135/var(--tw-text-opacity));font-size:1.25rem;letter-spacing:-0.025em;line-height:1.5rem}.category-content>.md\\:missing-answer-label{display:block}.category-content>.md\\:missing-answer-label~.md\\:missing-answer-label{display:none}}@media(hover: hover) and (pointer: fine){.td\\:hover-focus-ring:hover{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(84 101 251/var(--tw-ring-opacity));--tw-ring-offset-width:2px;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));outline:2px solid transparent;outline-offset:2px;transition-duration:50ms}}.last\\:mr-0:last-child{margin-right:0}.focus-within\\:left-0:focus-within{left:0}.focus-within\\:right-0:focus-within{right:0}.focus-within\\:top-0:focus-within{top:0}.focus-within\\:z-30:focus-within{z-index:30}.hover\\:bg-black-50:hover{background-color:rgba(0, 0, 0, 0.0509803922)}.hover\\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(222 222 255/var(--tw-bg-opacity))}.hover\\:bg-violet-100:hover{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.hover\\:bg-yellow-1000:hover{--tw-bg-opacity:1;background-color:rgb(251 217 27/var(--tw-bg-opacity))}.hover\\:text-charcoal:hover{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.focus\\:outline-transparent:focus{outline-color:transparent}.focus-visible\\:border:focus-visible{border-width:1px}.focus-visible\\:border-charcoal:focus-visible{--tw-border-opacity:1;border-color:rgb(33 37 41/var(--tw-border-opacity))}.focus-visible\\:border-gray-400:focus-visible{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.focus-visible\\:border-gray-800:focus-visible{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.active\\:bg-black-55:active,.active\\:bg-black-60:active{background-color:rgba(0, 0, 0, 0.1019607843)}.active\\:bg-yellow-1100:active{--tw-bg-opacity:1;background-color:rgb(238 206 26/var(--tw-bg-opacity))}.active\\:text-charcoal:active{--tw-text-opacity:1;color:rgb(33 37 41/var(--tw-text-opacity))}.disabled\\:text-gray-40:disabled{--tw-text-opacity:1;color:rgb(142 147 153/var(--tw-text-opacity))}.disabled\\:hover\\:bg-white:hover:disabled{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.group\\/itemContainer:hover .group-hover\\/itemContainer\\:bg-violet-100{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.group:hover .group-hover\\:underline{text-decoration-line:underline}@media(min-width: 732px){.md\\:inset-0{inset:0}.md\\:top-20{top:5rem}.md\\:mb-2{margin-bottom:0.5rem}.md\\:mb-4{margin-bottom:1rem}.md\\:mb-8{margin-bottom:2rem}.md\\:ml-0{margin-left:0}.md\\:mt-0{margin-top:0}.md\\:mt-14{margin-top:3.5rem}.md\\:block{display:block}.md\\:inline-block{display:inline-block}.md\\:flex{display:flex}.md\\:hidden{display:none}.md\\:h-fit{height:-moz-fit-content;height:fit-content}.md\\:min-h-0{min-height:0}.md\\:min-h-\\[140px\\]{min-height:140px}.md\\:min-h-\\[164px\\]{min-height:164px}.md\\:w-1\\/2{width:50%}.md\\:w-fit{width:-moz-fit-content;width:fit-content}.md\\:grow-0{flex-grow:0}.md\\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.md\\:flex-row{flex-direction:row}.md\\:flex-col{flex-direction:column}.md\\:items-center{align-items:center}.md\\:justify-normal{justify-content:normal}.md\\:justify-center{justify-content:center}.md\\:justify-between{justify-content:space-between}.md\\:gap-6{gap:1.5rem}.md\\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px * var(--tw-space-y-reverse));margin-top:calc(0px * (1 - var(--tw-space-y-reverse)))}.md\\:rounded-b-none{border-bottom-left-radius:0;border-bottom-right-radius:0}.md\\:border{border-width:1px}.md\\:border-gray-400{--tw-border-opacity:1;border-color:rgb(196 201 204/var(--tw-border-opacity))}.md\\:\\!bg-white{--tw-bg-opacity:1!important;background-color:rgb(255 255 255/var(--tw-bg-opacity)) !important}.md\\:p-4{padding:1rem}.md\\:px-0{padding-left:0;padding-right:0}.md\\:pb-0{padding-bottom:0}.md\\:pl-13\\.2{padding-left:3.125rem}.md\\:pl-4{padding-left:1rem}.md\\:pr-4{padding-right:1rem}.md\\:pt-20{padding-top:5rem}.md\\:pt-20\\.5{padding-top:5.125rem}.md\\:text-center{text-align:center}.md\\:shadow-\\[0_0_\\#0000\\]{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow)}.group\\/itemContainer:hover .md\\:group-hover\\/itemContainer\\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}}@media(min-width: 1196px){.lg\\:mr-6{margin-right:1.5rem}.lg\\:flex{display:flex}.lg\\:hidden{display:none}.lg\\:min-h-\\[224px\\]{min-height:224px}.lg\\:w-full{width:100%}.lg\\:max-w-\\[50\\%\\]{max-width:50%}.lg\\:grow{flex-grow:1}.lg\\:basis-1\\/2{flex-basis:50%}.lg\\:items-center{align-items:center}.lg\\:justify-between{justify-content:space-between}.lg\\:gap-0{gap:0}.lg\\:last\\:mr-0:last-child{margin-right:0}}@media(hover: hover) and (pointer: fine){.td\\:border-2{border-width:2px}.td\\:border-blue-900{--tw-border-opacity:1;border-color:rgb(59 64 240/var(--tw-border-opacity))}.td\\:hover\\:cursor-grab:hover{cursor:grab}.td\\:hover\\:border-gray-800:hover{--tw-border-opacity:1;border-color:rgb(93 99 107/var(--tw-border-opacity))}.td\\:hover\\:bg-black-50:hover{background-color:rgba(0, 0, 0, 0.0509803922)}.td\\:hover\\:bg-violet-100:hover{--tw-bg-opacity:1;background-color:rgb(235 235 255/var(--tw-bg-opacity))}.td\\:hover\\:text-soft-blue:hover{--tw-text-opacity:1;color:rgb(84 101 251/var(--tw-text-opacity))}.group:hover .td\\:group-hover\\:bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.group:hover .td\\:group-hover\\:opacity-5{opacity:0.05}}');
18193
+ }
18194
+ function create_else_block_14(ctx) {
14731
18195
  let invalidbanner;
14732
18196
  let current;
14733
18197
  invalidbanner = new InvalidBanner_default({ props: { bannerLabel } });
@@ -14755,7 +18219,226 @@
14755
18219
  }
14756
18220
  };
14757
18221
  }
14758
- function create_if_block_45(ctx) {
18222
+ function create_if_block_114(ctx) {
18223
+ let current_block_type_index;
18224
+ let if_block;
18225
+ let if_block_anchor;
18226
+ let current;
18227
+ const if_block_creators = [
18228
+ create_if_block_212,
18229
+ create_if_block_310,
18230
+ create_if_block_46,
18231
+ create_if_block_55,
18232
+ create_else_block8
18233
+ ];
18234
+ const if_blocks = [];
18235
+ function select_block_type_1(ctx2, dirty) {
18236
+ if (
18237
+ /*interactionType*/
18238
+ ctx2[3] === INTERACTION_TYPE_MCQ
18239
+ )
18240
+ return 0;
18241
+ if (
18242
+ /*interactionType*/
18243
+ ctx2[3] === INTERACTION_TYPE_TYPEIN
18244
+ )
18245
+ return 1;
18246
+ if (
18247
+ /*interactionType*/
18248
+ ctx2[3] === INTERACTION_TYPE_CATEGORISE
18249
+ )
18250
+ return 2;
18251
+ if (
18252
+ /*interactionType*/
18253
+ ctx2[3] === INTERACTION_TYPE_DROPDOWN
18254
+ )
18255
+ return 3;
18256
+ return 4;
18257
+ }
18258
+ current_block_type_index = select_block_type_1(ctx, -1);
18259
+ if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
18260
+ return {
18261
+ c() {
18262
+ if_block.c();
18263
+ if_block_anchor = empty();
18264
+ },
18265
+ m(target, anchor) {
18266
+ if_blocks[current_block_type_index].m(target, anchor);
18267
+ insert(target, if_block_anchor, anchor);
18268
+ current = true;
18269
+ },
18270
+ p(ctx2, dirty) {
18271
+ let previous_block_index = current_block_type_index;
18272
+ current_block_type_index = select_block_type_1(ctx2, dirty);
18273
+ if (current_block_type_index === previous_block_index) {
18274
+ if_blocks[current_block_type_index].p(ctx2, dirty);
18275
+ } else {
18276
+ group_outros();
18277
+ transition_out(if_blocks[previous_block_index], 1, 1, () => {
18278
+ if_blocks[previous_block_index] = null;
18279
+ });
18280
+ check_outros();
18281
+ if_block = if_blocks[current_block_type_index];
18282
+ if (!if_block) {
18283
+ if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx2);
18284
+ if_block.c();
18285
+ } else {
18286
+ if_block.p(ctx2, dirty);
18287
+ }
18288
+ transition_in(if_block, 1);
18289
+ if_block.m(if_block_anchor.parentNode, if_block_anchor);
18290
+ }
18291
+ },
18292
+ i(local) {
18293
+ if (current)
18294
+ return;
18295
+ transition_in(if_block);
18296
+ current = true;
18297
+ },
18298
+ o(local) {
18299
+ transition_out(if_block);
18300
+ current = false;
18301
+ },
18302
+ d(detaching) {
18303
+ if (detaching) {
18304
+ detach(if_block_anchor);
18305
+ }
18306
+ if_blocks[current_block_type_index].d(detaching);
18307
+ }
18308
+ };
18309
+ }
18310
+ function create_if_block15(ctx) {
18311
+ let promptskeleton;
18312
+ let current;
18313
+ promptskeleton = new PromptSkeleton_default({});
18314
+ return {
18315
+ c() {
18316
+ create_component(promptskeleton.$$.fragment);
18317
+ },
18318
+ m(target, anchor) {
18319
+ mount_component(promptskeleton, target, anchor);
18320
+ current = true;
18321
+ },
18322
+ p: noop,
18323
+ i(local) {
18324
+ if (current)
18325
+ return;
18326
+ transition_in(promptskeleton.$$.fragment, local);
18327
+ current = true;
18328
+ },
18329
+ o(local) {
18330
+ transition_out(promptskeleton.$$.fragment, local);
18331
+ current = false;
18332
+ },
18333
+ d(detaching) {
18334
+ destroy_component(promptskeleton, detaching);
18335
+ }
18336
+ };
18337
+ }
18338
+ function create_else_block8(ctx) {
18339
+ let invalidbanner;
18340
+ let current;
18341
+ invalidbanner = new InvalidBanner_default({ props: { bannerLabel } });
18342
+ return {
18343
+ c() {
18344
+ create_component(invalidbanner.$$.fragment);
18345
+ },
18346
+ m(target, anchor) {
18347
+ mount_component(invalidbanner, target, anchor);
18348
+ current = true;
18349
+ },
18350
+ p: noop,
18351
+ i(local) {
18352
+ if (current)
18353
+ return;
18354
+ transition_in(invalidbanner.$$.fragment, local);
18355
+ current = true;
18356
+ },
18357
+ o(local) {
18358
+ transition_out(invalidbanner.$$.fragment, local);
18359
+ current = false;
18360
+ },
18361
+ d(detaching) {
18362
+ destroy_component(invalidbanner, detaching);
18363
+ }
18364
+ };
18365
+ }
18366
+ function create_if_block_55(ctx) {
18367
+ let promptdropdown;
18368
+ let current;
18369
+ promptdropdown = new PromptDropdown_default({
18370
+ props: {
18371
+ sessionData: (
18372
+ /*sessionData*/
18373
+ ctx[0]
18374
+ ),
18375
+ isDataSaving: (
18376
+ /*isDataSaving*/
18377
+ ctx[2]
18378
+ ),
18379
+ isFinished: (
18380
+ /*isFinished*/
18381
+ ctx[4]
18382
+ ),
18383
+ isPreviewMode: (
18384
+ /*isPreviewMode*/
18385
+ ctx[9]
18386
+ ),
18387
+ isPreviewModeInteractive: (
18388
+ /*isPreviewModeInteractive*/
18389
+ ctx[8]
18390
+ ),
18391
+ sessionId: (
18392
+ /*sessionId*/
18393
+ ctx[7]
18394
+ )
18395
+ }
18396
+ });
18397
+ promptdropdown.$on(
18398
+ "saveDropdown",
18399
+ /*saveEvent*/
18400
+ ctx[10]
18401
+ );
18402
+ return {
18403
+ c() {
18404
+ create_component(promptdropdown.$$.fragment);
18405
+ },
18406
+ m(target, anchor) {
18407
+ mount_component(promptdropdown, target, anchor);
18408
+ current = true;
18409
+ },
18410
+ p(ctx2, dirty) {
18411
+ const promptdropdown_changes = {};
18412
+ if (dirty & /*sessionData*/
18413
+ 1)
18414
+ promptdropdown_changes.sessionData = /*sessionData*/
18415
+ ctx2[0];
18416
+ if (dirty & /*isDataSaving*/
18417
+ 4)
18418
+ promptdropdown_changes.isDataSaving = /*isDataSaving*/
18419
+ ctx2[2];
18420
+ if (dirty & /*isFinished*/
18421
+ 16)
18422
+ promptdropdown_changes.isFinished = /*isFinished*/
18423
+ ctx2[4];
18424
+ promptdropdown.$set(promptdropdown_changes);
18425
+ },
18426
+ i(local) {
18427
+ if (current)
18428
+ return;
18429
+ transition_in(promptdropdown.$$.fragment, local);
18430
+ current = true;
18431
+ },
18432
+ o(local) {
18433
+ transition_out(promptdropdown.$$.fragment, local);
18434
+ current = false;
18435
+ },
18436
+ d(detaching) {
18437
+ destroy_component(promptdropdown, detaching);
18438
+ }
18439
+ };
18440
+ }
18441
+ function create_if_block_46(ctx) {
14759
18442
  let promptcategorise;
14760
18443
  let current;
14761
18444
  promptcategorise = new PromptCategorise_default({
@@ -14826,7 +18509,7 @@
14826
18509
  }
14827
18510
  };
14828
18511
  }
14829
- function create_if_block_37(ctx) {
18512
+ function create_if_block_310(ctx) {
14830
18513
  let prompttypein;
14831
18514
  let current;
14832
18515
  prompttypein = new PromptTypeIn_default({
@@ -14917,7 +18600,7 @@
14917
18600
  }
14918
18601
  };
14919
18602
  }
14920
- function create_if_block_29(ctx) {
18603
+ function create_if_block_212(ctx) {
14921
18604
  let promptmcq;
14922
18605
  let current;
14923
18606
  promptmcq = new PromptMCQ_default({
@@ -14996,7 +18679,7 @@
14996
18679
  }
14997
18680
  };
14998
18681
  }
14999
- function create_fragment29(ctx) {
18682
+ function create_fragment33(ctx) {
15000
18683
  let current_block_type_index;
15001
18684
  let if_block;
15002
18685
  let t2;
@@ -15004,7 +18687,7 @@
15004
18687
  let link1;
15005
18688
  let link2;
15006
18689
  let current;
15007
- const if_block_creators = [create_if_block11, create_if_block_110, create_else_block_12];
18690
+ const if_block_creators = [create_if_block15, create_if_block_114, create_else_block_14];
15008
18691
  const if_blocks = [];
15009
18692
  function select_block_type(ctx2, dirty) {
15010
18693
  if (
@@ -15088,7 +18771,7 @@
15088
18771
  };
15089
18772
  }
15090
18773
  var bannerLabel = "Invalid session id.";
15091
- function instance14($$self, $$props, $$invalidate) {
18774
+ function instance20($$self, $$props, $$invalidate) {
15092
18775
  const { "session-id": sessionId, "preview-mode": previewMode, "item-id": itemId, "preview-contentful": previewContentful } = $$props;
15093
18776
  const previewModeType = ["true", "interactive"];
15094
18777
  const isPreviewModeInteractive = Boolean(previewMode === "interactive" && itemId);
@@ -15174,12 +18857,19 @@
15174
18857
  scoringMetadata = getCategoriseCorrectAnswer(sessionRawData);
15175
18858
  break;
15176
18859
  case INTERACTION_TYPE_TYPEIN:
15177
- default:
15178
18860
  const { type } = metadata;
15179
18861
  scoringMetadata = {
15180
18862
  ...scoringMetadata,
15181
18863
  answer: type === TYPEIN_TYPE_INLINE ? answer : answer[0]
15182
18864
  };
18865
+ break;
18866
+ case INTERACTION_TYPE_DROPDOWN:
18867
+ scoringMetadata = {
18868
+ ...scoringMetadata,
18869
+ answer,
18870
+ correctAnswer: metadata.dropdown_correct_answers
18871
+ };
18872
+ break;
15183
18873
  }
15184
18874
  $$invalidate(0, sessionData = { ...sessionData, scoringMetadata });
15185
18875
  if (score_earned === score_total)
@@ -15208,13 +18898,12 @@
15208
18898
  if (isPreviewModeInteractive) {
15209
18899
  previewMcqCorrectAnswerId = answerIds;
15210
18900
  }
15211
- return;
18901
+ break;
15212
18902
  case INTERACTION_TYPE_CATEGORISE:
15213
18903
  scoringMetadata = getCategoriseCorrectAnswer(data);
15214
18904
  $$invalidate(0, sessionData = { ...sessionData, scoringMetadata });
15215
- return;
18905
+ break;
15216
18906
  case INTERACTION_TYPE_TYPEIN:
15217
- default:
15218
18907
  const { correct_answer: correctAnswer, typein_type: typeinType } = data.interaction;
15219
18908
  scoringMetadata = {
15220
18909
  hasAnswer: true,
@@ -15230,7 +18919,15 @@
15230
18919
  }
15231
18920
  }));
15232
18921
  }
15233
- return;
18922
+ break;
18923
+ case INTERACTION_TYPE_DROPDOWN:
18924
+ const { options: dropdownOptions } = data.interaction;
18925
+ scoringMetadata = {
18926
+ hasAnswer: true,
18927
+ options: dropdownOptions
18928
+ };
18929
+ $$invalidate(0, sessionData = { ...sessionData, scoringMetadata });
18930
+ break;
15234
18931
  }
15235
18932
  };
15236
18933
  const getCategoriseCorrectAnswer = (data) => {
@@ -15344,7 +19041,7 @@
15344
19041
  var PromptBuilder = class extends SvelteComponent {
15345
19042
  constructor(options) {
15346
19043
  super();
15347
- init(this, options, instance14, create_fragment29, safe_not_equal, {}, add_css2);
19044
+ init(this, options, instance20, create_fragment33, safe_not_equal, {}, add_css2);
15348
19045
  }
15349
19046
  };
15350
19047
  customElements.define("prompt-builder", create_custom_element(PromptBuilder, {}, [], [], true));