eat-js-sdk 0.0.6 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/eat-prompt-builder.mjs +1072 -196
- package/package.json +27 -24
|
@@ -44,6 +44,50 @@
|
|
|
44
44
|
subscribe(store, (_) => value = _)();
|
|
45
45
|
return value;
|
|
46
46
|
}
|
|
47
|
+
function create_slot(definition, ctx, $$scope, fn) {
|
|
48
|
+
if (definition) {
|
|
49
|
+
const slot_ctx = get_slot_context(definition, ctx, $$scope, fn);
|
|
50
|
+
return definition[0](slot_ctx);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
function get_slot_context(definition, ctx, $$scope, fn) {
|
|
54
|
+
return definition[1] && fn ? assign($$scope.ctx.slice(), definition[1](fn(ctx))) : $$scope.ctx;
|
|
55
|
+
}
|
|
56
|
+
function get_slot_changes(definition, $$scope, dirty, fn) {
|
|
57
|
+
if (definition[2] && fn) {
|
|
58
|
+
const lets = definition[2](fn(dirty));
|
|
59
|
+
if ($$scope.dirty === void 0) {
|
|
60
|
+
return lets;
|
|
61
|
+
}
|
|
62
|
+
if (typeof lets === "object") {
|
|
63
|
+
const merged = [];
|
|
64
|
+
const len = Math.max($$scope.dirty.length, lets.length);
|
|
65
|
+
for (let i = 0; i < len; i += 1) {
|
|
66
|
+
merged[i] = $$scope.dirty[i] | lets[i];
|
|
67
|
+
}
|
|
68
|
+
return merged;
|
|
69
|
+
}
|
|
70
|
+
return $$scope.dirty | lets;
|
|
71
|
+
}
|
|
72
|
+
return $$scope.dirty;
|
|
73
|
+
}
|
|
74
|
+
function update_slot_base(slot, slot_definition, ctx, $$scope, slot_changes, get_slot_context_fn) {
|
|
75
|
+
if (slot_changes) {
|
|
76
|
+
const slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);
|
|
77
|
+
slot.p(slot_context, slot_changes);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
function get_all_dirty_from_scope($$scope) {
|
|
81
|
+
if ($$scope.ctx.length > 32) {
|
|
82
|
+
const dirty = [];
|
|
83
|
+
const length = $$scope.ctx.length / 32;
|
|
84
|
+
for (let i = 0; i < length; i++) {
|
|
85
|
+
dirty[i] = -1;
|
|
86
|
+
}
|
|
87
|
+
return dirty;
|
|
88
|
+
}
|
|
89
|
+
return -1;
|
|
90
|
+
}
|
|
47
91
|
function exclude_internal_props(props) {
|
|
48
92
|
const result = {};
|
|
49
93
|
for (const k in props)
|
|
@@ -51,6 +95,9 @@
|
|
|
51
95
|
result[k] = props[k];
|
|
52
96
|
return result;
|
|
53
97
|
}
|
|
98
|
+
function action_destroyer(action_result) {
|
|
99
|
+
return action_result && is_function(action_result.destroy) ? action_result.destroy : noop;
|
|
100
|
+
}
|
|
54
101
|
|
|
55
102
|
// node_modules/svelte/src/runtime/internal/globals.js
|
|
56
103
|
var globals = typeof window !== "undefined" ? window : typeof globalThis !== "undefined" ? globalThis : (
|
|
@@ -187,6 +234,16 @@
|
|
|
187
234
|
function children(element2) {
|
|
188
235
|
return Array.from(element2.childNodes);
|
|
189
236
|
}
|
|
237
|
+
function set_data(text2, data) {
|
|
238
|
+
data = "" + data;
|
|
239
|
+
if (text2.data === data)
|
|
240
|
+
return;
|
|
241
|
+
text2.data = /** @type {string} */
|
|
242
|
+
data;
|
|
243
|
+
}
|
|
244
|
+
function set_input_value(input, value) {
|
|
245
|
+
input.value = value == null ? "" : value;
|
|
246
|
+
}
|
|
190
247
|
function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
|
|
191
248
|
return new CustomEvent(type, { detail, bubbles, cancelable });
|
|
192
249
|
}
|
|
@@ -345,10 +402,10 @@
|
|
|
345
402
|
set_current_component(component);
|
|
346
403
|
update(component.$$);
|
|
347
404
|
}
|
|
348
|
-
} catch (
|
|
405
|
+
} catch (e2) {
|
|
349
406
|
dirty_components.length = 0;
|
|
350
407
|
flushidx = 0;
|
|
351
|
-
throw
|
|
408
|
+
throw e2;
|
|
352
409
|
}
|
|
353
410
|
set_current_component(null);
|
|
354
411
|
dirty_components.length = 0;
|
|
@@ -505,7 +562,7 @@
|
|
|
505
562
|
}
|
|
506
563
|
component.$$.dirty[i / 31 | 0] |= 1 << i % 31;
|
|
507
564
|
}
|
|
508
|
-
function init(component, options,
|
|
565
|
+
function init(component, options, instance6, create_fragment7, not_equal, props, append_styles2 = null, dirty = [-1]) {
|
|
509
566
|
const parent_component = current_component;
|
|
510
567
|
set_current_component(component);
|
|
511
568
|
const $$ = component.$$ = {
|
|
@@ -531,7 +588,7 @@
|
|
|
531
588
|
};
|
|
532
589
|
append_styles2 && append_styles2($$.root);
|
|
533
590
|
let ready = false;
|
|
534
|
-
$$.ctx =
|
|
591
|
+
$$.ctx = instance6 ? instance6(component, options.props || {}, (i, ret, ...rest) => {
|
|
535
592
|
const value = rest.length ? rest[0] : ret;
|
|
536
593
|
if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
|
|
537
594
|
if (!$$.skip_bound && $$.bound[i])
|
|
@@ -544,7 +601,7 @@
|
|
|
544
601
|
$$.update();
|
|
545
602
|
ready = true;
|
|
546
603
|
run_all($$.before_update);
|
|
547
|
-
$$.fragment =
|
|
604
|
+
$$.fragment = create_fragment7 ? create_fragment7($$.ctx) : false;
|
|
548
605
|
if (options.target) {
|
|
549
606
|
if (options.hydrate) {
|
|
550
607
|
start_hydrating();
|
|
@@ -613,7 +670,7 @@
|
|
|
613
670
|
async connectedCallback() {
|
|
614
671
|
this.$$cn = true;
|
|
615
672
|
if (!this.$$c) {
|
|
616
|
-
let
|
|
673
|
+
let create_slot2 = function(name) {
|
|
617
674
|
return () => {
|
|
618
675
|
let node;
|
|
619
676
|
const obj = {
|
|
@@ -647,7 +704,7 @@
|
|
|
647
704
|
const existing_slots = get_custom_elements_slots(this);
|
|
648
705
|
for (const name of this.$$s) {
|
|
649
706
|
if (name in existing_slots) {
|
|
650
|
-
$$slots[name] = [
|
|
707
|
+
$$slots[name] = [create_slot2(name)];
|
|
651
708
|
}
|
|
652
709
|
}
|
|
653
710
|
for (const attribute of this.attributes) {
|
|
@@ -947,6 +1004,246 @@
|
|
|
947
1004
|
return await response.json();
|
|
948
1005
|
};
|
|
949
1006
|
|
|
1007
|
+
// src/lib/components/prompt/template/PromptBody.svelte
|
|
1008
|
+
function create_if_block_1(ctx) {
|
|
1009
|
+
let html_tag;
|
|
1010
|
+
let raw_value = `<${/*promptRubricHeaderElem*/
|
|
1011
|
+
ctx[2]} class="item-heading mb-2 md:mb-4">${/*rubric*/
|
|
1012
|
+
ctx[0]}</${/*promptRubricHeaderElem*/
|
|
1013
|
+
ctx[2]}>`;
|
|
1014
|
+
let html_anchor;
|
|
1015
|
+
return {
|
|
1016
|
+
c() {
|
|
1017
|
+
html_tag = new HtmlTag(false);
|
|
1018
|
+
html_anchor = empty();
|
|
1019
|
+
html_tag.a = html_anchor;
|
|
1020
|
+
},
|
|
1021
|
+
m(target, anchor) {
|
|
1022
|
+
html_tag.m(raw_value, target, anchor);
|
|
1023
|
+
insert(target, html_anchor, anchor);
|
|
1024
|
+
},
|
|
1025
|
+
p(ctx2, dirty) {
|
|
1026
|
+
if (dirty & /*rubric*/
|
|
1027
|
+
1 && raw_value !== (raw_value = `<${/*promptRubricHeaderElem*/
|
|
1028
|
+
ctx2[2]} class="item-heading mb-2 md:mb-4">${/*rubric*/
|
|
1029
|
+
ctx2[0]}</${/*promptRubricHeaderElem*/
|
|
1030
|
+
ctx2[2]}>`))
|
|
1031
|
+
html_tag.p(raw_value);
|
|
1032
|
+
},
|
|
1033
|
+
d(detaching) {
|
|
1034
|
+
if (detaching) {
|
|
1035
|
+
detach(html_anchor);
|
|
1036
|
+
html_tag.d();
|
|
1037
|
+
}
|
|
1038
|
+
}
|
|
1039
|
+
};
|
|
1040
|
+
}
|
|
1041
|
+
function create_if_block(ctx) {
|
|
1042
|
+
let html_tag;
|
|
1043
|
+
let raw_value = `<${/*promptRubricHeaderElem*/
|
|
1044
|
+
ctx[2]} class="item-heading font-semibold">${/*prompt*/
|
|
1045
|
+
ctx[1]}</${/*promptRubricHeaderElem*/
|
|
1046
|
+
ctx[2]}>`;
|
|
1047
|
+
let html_anchor;
|
|
1048
|
+
return {
|
|
1049
|
+
c() {
|
|
1050
|
+
html_tag = new HtmlTag(false);
|
|
1051
|
+
html_anchor = empty();
|
|
1052
|
+
html_tag.a = html_anchor;
|
|
1053
|
+
},
|
|
1054
|
+
m(target, anchor) {
|
|
1055
|
+
html_tag.m(raw_value, target, anchor);
|
|
1056
|
+
insert(target, html_anchor, anchor);
|
|
1057
|
+
},
|
|
1058
|
+
p(ctx2, dirty) {
|
|
1059
|
+
if (dirty & /*prompt*/
|
|
1060
|
+
2 && raw_value !== (raw_value = `<${/*promptRubricHeaderElem*/
|
|
1061
|
+
ctx2[2]} class="item-heading font-semibold">${/*prompt*/
|
|
1062
|
+
ctx2[1]}</${/*promptRubricHeaderElem*/
|
|
1063
|
+
ctx2[2]}>`))
|
|
1064
|
+
html_tag.p(raw_value);
|
|
1065
|
+
},
|
|
1066
|
+
d(detaching) {
|
|
1067
|
+
if (detaching) {
|
|
1068
|
+
detach(html_anchor);
|
|
1069
|
+
html_tag.d();
|
|
1070
|
+
}
|
|
1071
|
+
}
|
|
1072
|
+
};
|
|
1073
|
+
}
|
|
1074
|
+
function create_fragment(ctx) {
|
|
1075
|
+
let div1;
|
|
1076
|
+
let t0;
|
|
1077
|
+
let t1;
|
|
1078
|
+
let div0;
|
|
1079
|
+
let t2;
|
|
1080
|
+
let current;
|
|
1081
|
+
let if_block0 = (
|
|
1082
|
+
/*rubric*/
|
|
1083
|
+
ctx[0] && create_if_block_1(ctx)
|
|
1084
|
+
);
|
|
1085
|
+
let if_block1 = (
|
|
1086
|
+
/*prompt*/
|
|
1087
|
+
ctx[1] && create_if_block(ctx)
|
|
1088
|
+
);
|
|
1089
|
+
const default_slot_template = (
|
|
1090
|
+
/*#slots*/
|
|
1091
|
+
ctx[4].default
|
|
1092
|
+
);
|
|
1093
|
+
const default_slot = create_slot(
|
|
1094
|
+
default_slot_template,
|
|
1095
|
+
ctx,
|
|
1096
|
+
/*$$scope*/
|
|
1097
|
+
ctx[3],
|
|
1098
|
+
null
|
|
1099
|
+
);
|
|
1100
|
+
return {
|
|
1101
|
+
c() {
|
|
1102
|
+
div1 = element("div");
|
|
1103
|
+
if (if_block0)
|
|
1104
|
+
if_block0.c();
|
|
1105
|
+
t0 = space();
|
|
1106
|
+
if (if_block1)
|
|
1107
|
+
if_block1.c();
|
|
1108
|
+
t1 = space();
|
|
1109
|
+
div0 = element("div");
|
|
1110
|
+
t2 = space();
|
|
1111
|
+
if (default_slot)
|
|
1112
|
+
default_slot.c();
|
|
1113
|
+
attr(div0, "class", "divider my-6");
|
|
1114
|
+
attr(div1, "class", "bg-transparent");
|
|
1115
|
+
},
|
|
1116
|
+
m(target, anchor) {
|
|
1117
|
+
insert(target, div1, anchor);
|
|
1118
|
+
if (if_block0)
|
|
1119
|
+
if_block0.m(div1, null);
|
|
1120
|
+
append(div1, t0);
|
|
1121
|
+
if (if_block1)
|
|
1122
|
+
if_block1.m(div1, null);
|
|
1123
|
+
append(div1, t1);
|
|
1124
|
+
append(div1, div0);
|
|
1125
|
+
append(div1, t2);
|
|
1126
|
+
if (default_slot) {
|
|
1127
|
+
default_slot.m(div1, null);
|
|
1128
|
+
}
|
|
1129
|
+
current = true;
|
|
1130
|
+
},
|
|
1131
|
+
p(ctx2, [dirty]) {
|
|
1132
|
+
if (
|
|
1133
|
+
/*rubric*/
|
|
1134
|
+
ctx2[0]
|
|
1135
|
+
) {
|
|
1136
|
+
if (if_block0) {
|
|
1137
|
+
if_block0.p(ctx2, dirty);
|
|
1138
|
+
} else {
|
|
1139
|
+
if_block0 = create_if_block_1(ctx2);
|
|
1140
|
+
if_block0.c();
|
|
1141
|
+
if_block0.m(div1, t0);
|
|
1142
|
+
}
|
|
1143
|
+
} else if (if_block0) {
|
|
1144
|
+
if_block0.d(1);
|
|
1145
|
+
if_block0 = null;
|
|
1146
|
+
}
|
|
1147
|
+
if (
|
|
1148
|
+
/*prompt*/
|
|
1149
|
+
ctx2[1]
|
|
1150
|
+
) {
|
|
1151
|
+
if (if_block1) {
|
|
1152
|
+
if_block1.p(ctx2, dirty);
|
|
1153
|
+
} else {
|
|
1154
|
+
if_block1 = create_if_block(ctx2);
|
|
1155
|
+
if_block1.c();
|
|
1156
|
+
if_block1.m(div1, t1);
|
|
1157
|
+
}
|
|
1158
|
+
} else if (if_block1) {
|
|
1159
|
+
if_block1.d(1);
|
|
1160
|
+
if_block1 = null;
|
|
1161
|
+
}
|
|
1162
|
+
if (default_slot) {
|
|
1163
|
+
if (default_slot.p && (!current || dirty & /*$$scope*/
|
|
1164
|
+
8)) {
|
|
1165
|
+
update_slot_base(
|
|
1166
|
+
default_slot,
|
|
1167
|
+
default_slot_template,
|
|
1168
|
+
ctx2,
|
|
1169
|
+
/*$$scope*/
|
|
1170
|
+
ctx2[3],
|
|
1171
|
+
!current ? get_all_dirty_from_scope(
|
|
1172
|
+
/*$$scope*/
|
|
1173
|
+
ctx2[3]
|
|
1174
|
+
) : get_slot_changes(
|
|
1175
|
+
default_slot_template,
|
|
1176
|
+
/*$$scope*/
|
|
1177
|
+
ctx2[3],
|
|
1178
|
+
dirty,
|
|
1179
|
+
null
|
|
1180
|
+
),
|
|
1181
|
+
null
|
|
1182
|
+
);
|
|
1183
|
+
}
|
|
1184
|
+
}
|
|
1185
|
+
},
|
|
1186
|
+
i(local) {
|
|
1187
|
+
if (current)
|
|
1188
|
+
return;
|
|
1189
|
+
transition_in(default_slot, local);
|
|
1190
|
+
current = true;
|
|
1191
|
+
},
|
|
1192
|
+
o(local) {
|
|
1193
|
+
transition_out(default_slot, local);
|
|
1194
|
+
current = false;
|
|
1195
|
+
},
|
|
1196
|
+
d(detaching) {
|
|
1197
|
+
if (detaching) {
|
|
1198
|
+
detach(div1);
|
|
1199
|
+
}
|
|
1200
|
+
if (if_block0)
|
|
1201
|
+
if_block0.d();
|
|
1202
|
+
if (if_block1)
|
|
1203
|
+
if_block1.d();
|
|
1204
|
+
if (default_slot)
|
|
1205
|
+
default_slot.d(detaching);
|
|
1206
|
+
}
|
|
1207
|
+
};
|
|
1208
|
+
}
|
|
1209
|
+
function instance($$self, $$props, $$invalidate) {
|
|
1210
|
+
let { $$slots: slots = {}, $$scope } = $$props;
|
|
1211
|
+
let { rubric } = $$props;
|
|
1212
|
+
let { prompt } = $$props;
|
|
1213
|
+
const promptRubricHeaderElem = get_store_value(promptRubricElem);
|
|
1214
|
+
$$self.$$set = ($$props2) => {
|
|
1215
|
+
if ("rubric" in $$props2)
|
|
1216
|
+
$$invalidate(0, rubric = $$props2.rubric);
|
|
1217
|
+
if ("prompt" in $$props2)
|
|
1218
|
+
$$invalidate(1, prompt = $$props2.prompt);
|
|
1219
|
+
if ("$$scope" in $$props2)
|
|
1220
|
+
$$invalidate(3, $$scope = $$props2.$$scope);
|
|
1221
|
+
};
|
|
1222
|
+
return [rubric, prompt, promptRubricHeaderElem, $$scope, slots];
|
|
1223
|
+
}
|
|
1224
|
+
var PromptBody = class extends SvelteComponent {
|
|
1225
|
+
constructor(options) {
|
|
1226
|
+
super();
|
|
1227
|
+
init(this, options, instance, create_fragment, safe_not_equal, { rubric: 0, prompt: 1 });
|
|
1228
|
+
}
|
|
1229
|
+
get rubric() {
|
|
1230
|
+
return this.$$.ctx[0];
|
|
1231
|
+
}
|
|
1232
|
+
set rubric(rubric) {
|
|
1233
|
+
this.$$set({ rubric });
|
|
1234
|
+
flush();
|
|
1235
|
+
}
|
|
1236
|
+
get prompt() {
|
|
1237
|
+
return this.$$.ctx[1];
|
|
1238
|
+
}
|
|
1239
|
+
set prompt(prompt) {
|
|
1240
|
+
this.$$set({ prompt });
|
|
1241
|
+
flush();
|
|
1242
|
+
}
|
|
1243
|
+
};
|
|
1244
|
+
customElements.define("prompt-body", create_custom_element(PromptBody, { "rubric": {}, "prompt": {} }, ["default"], [], true));
|
|
1245
|
+
var PromptBody_default = PromptBody;
|
|
1246
|
+
|
|
950
1247
|
// src/lib/composables/useMCQ.ts
|
|
951
1248
|
var useAlphabetEquivalent = (index) => {
|
|
952
1249
|
const alphabetArr = [
|
|
@@ -984,46 +1281,16 @@
|
|
|
984
1281
|
// src/lib/components/prompt/mcq/PromptMCQ.svelte
|
|
985
1282
|
function get_each_context(ctx, list, i) {
|
|
986
1283
|
const child_ctx = ctx.slice();
|
|
987
|
-
child_ctx[
|
|
988
|
-
child_ctx[
|
|
989
|
-
child_ctx[
|
|
1284
|
+
child_ctx[11] = list[i][0];
|
|
1285
|
+
child_ctx[12] = list[i][1];
|
|
1286
|
+
child_ctx[14] = i;
|
|
990
1287
|
return child_ctx;
|
|
991
1288
|
}
|
|
992
|
-
function
|
|
993
|
-
let html_tag;
|
|
994
|
-
let raw_value = (
|
|
995
|
-
/*buildPromptRubric*/
|
|
996
|
-
ctx[6](
|
|
997
|
-
/*rubric*/
|
|
998
|
-
ctx[2].text,
|
|
999
|
-
"item-heading mb-2 md:mb-4"
|
|
1000
|
-
) + ""
|
|
1001
|
-
);
|
|
1002
|
-
let html_anchor;
|
|
1003
|
-
return {
|
|
1004
|
-
c() {
|
|
1005
|
-
html_tag = new HtmlTag(false);
|
|
1006
|
-
html_anchor = empty();
|
|
1007
|
-
html_tag.a = html_anchor;
|
|
1008
|
-
},
|
|
1009
|
-
m(target, anchor) {
|
|
1010
|
-
html_tag.m(raw_value, target, anchor);
|
|
1011
|
-
insert(target, html_anchor, anchor);
|
|
1012
|
-
},
|
|
1013
|
-
p: noop,
|
|
1014
|
-
d(detaching) {
|
|
1015
|
-
if (detaching) {
|
|
1016
|
-
detach(html_anchor);
|
|
1017
|
-
html_tag.d();
|
|
1018
|
-
}
|
|
1019
|
-
}
|
|
1020
|
-
};
|
|
1021
|
-
}
|
|
1022
|
-
function create_if_block(ctx) {
|
|
1289
|
+
function create_if_block2(ctx) {
|
|
1023
1290
|
let div1;
|
|
1024
1291
|
let div0;
|
|
1025
1292
|
let div0_class_value;
|
|
1026
|
-
let
|
|
1293
|
+
let t2;
|
|
1027
1294
|
let each_value = ensure_array_like(Object.entries(
|
|
1028
1295
|
/*options*/
|
|
1029
1296
|
ctx[4]
|
|
@@ -1036,7 +1303,7 @@
|
|
|
1036
1303
|
c() {
|
|
1037
1304
|
div1 = element("div");
|
|
1038
1305
|
div0 = element("div");
|
|
1039
|
-
|
|
1306
|
+
t2 = space();
|
|
1040
1307
|
for (let i = 0; i < each_blocks.length; i += 1) {
|
|
1041
1308
|
each_blocks[i].c();
|
|
1042
1309
|
}
|
|
@@ -1047,7 +1314,7 @@
|
|
|
1047
1314
|
m(target, anchor) {
|
|
1048
1315
|
insert(target, div1, anchor);
|
|
1049
1316
|
append(div1, div0);
|
|
1050
|
-
append(div1,
|
|
1317
|
+
append(div1, t2);
|
|
1051
1318
|
for (let i = 0; i < each_blocks.length; i += 1) {
|
|
1052
1319
|
if (each_blocks[i]) {
|
|
1053
1320
|
each_blocks[i].m(div1, null);
|
|
@@ -1097,7 +1364,7 @@
|
|
|
1097
1364
|
let t1;
|
|
1098
1365
|
let t2_value = (
|
|
1099
1366
|
/*option*/
|
|
1100
|
-
ctx[
|
|
1367
|
+
ctx[12].answer + ""
|
|
1101
1368
|
);
|
|
1102
1369
|
let t2;
|
|
1103
1370
|
let t3;
|
|
@@ -1108,9 +1375,9 @@
|
|
|
1108
1375
|
function click_handler() {
|
|
1109
1376
|
return (
|
|
1110
1377
|
/*click_handler*/
|
|
1111
|
-
ctx[
|
|
1378
|
+
ctx[7](
|
|
1112
1379
|
/*option*/
|
|
1113
|
-
ctx[
|
|
1380
|
+
ctx[12]
|
|
1114
1381
|
)
|
|
1115
1382
|
);
|
|
1116
1383
|
}
|
|
@@ -1120,7 +1387,7 @@
|
|
|
1120
1387
|
span = element("span");
|
|
1121
1388
|
span.textContent = `${useMCQ_default(
|
|
1122
1389
|
/*index*/
|
|
1123
|
-
ctx[
|
|
1390
|
+
ctx[14]
|
|
1124
1391
|
)}`;
|
|
1125
1392
|
t1 = space();
|
|
1126
1393
|
t2 = text(t2_value);
|
|
@@ -1128,14 +1395,14 @@
|
|
|
1128
1395
|
attr(span, "class", "choice group-active:border-2 group-active:border-blue-1000 group-active:p-[7px]");
|
|
1129
1396
|
attr(button, "aria-label", button_aria_label_value = `${/*selectedOption*/
|
|
1130
1397
|
ctx[1] === /*option*/
|
|
1131
|
-
ctx[
|
|
1398
|
+
ctx[12].id ? "Selected option" : "Option"} ${useMCQ_default(
|
|
1132
1399
|
/*index*/
|
|
1133
|
-
ctx[
|
|
1400
|
+
ctx[14]
|
|
1134
1401
|
)}: ${/*option*/
|
|
1135
|
-
ctx[
|
|
1402
|
+
ctx[12].answer}`);
|
|
1136
1403
|
attr(button, "class", button_class_value = "btn-mcq-option group text-left " + /*selectedOption*/
|
|
1137
1404
|
(ctx[1] === /*option*/
|
|
1138
|
-
ctx[
|
|
1405
|
+
ctx[12].id ? "selected" : ""));
|
|
1139
1406
|
},
|
|
1140
1407
|
m(target, anchor) {
|
|
1141
1408
|
insert(target, button, anchor);
|
|
@@ -1153,17 +1420,17 @@
|
|
|
1153
1420
|
if (dirty & /*selectedOption*/
|
|
1154
1421
|
2 && button_aria_label_value !== (button_aria_label_value = `${/*selectedOption*/
|
|
1155
1422
|
ctx[1] === /*option*/
|
|
1156
|
-
ctx[
|
|
1423
|
+
ctx[12].id ? "Selected option" : "Option"} ${useMCQ_default(
|
|
1157
1424
|
/*index*/
|
|
1158
|
-
ctx[
|
|
1425
|
+
ctx[14]
|
|
1159
1426
|
)}: ${/*option*/
|
|
1160
|
-
ctx[
|
|
1427
|
+
ctx[12].answer}`)) {
|
|
1161
1428
|
attr(button, "aria-label", button_aria_label_value);
|
|
1162
1429
|
}
|
|
1163
1430
|
if (dirty & /*selectedOption*/
|
|
1164
1431
|
2 && button_class_value !== (button_class_value = "btn-mcq-option group text-left " + /*selectedOption*/
|
|
1165
1432
|
(ctx[1] === /*option*/
|
|
1166
|
-
ctx[
|
|
1433
|
+
ctx[12].id ? "selected" : ""))) {
|
|
1167
1434
|
attr(button, "class", button_class_value);
|
|
1168
1435
|
}
|
|
1169
1436
|
},
|
|
@@ -1176,115 +1443,116 @@
|
|
|
1176
1443
|
}
|
|
1177
1444
|
};
|
|
1178
1445
|
}
|
|
1179
|
-
function
|
|
1180
|
-
let
|
|
1181
|
-
let
|
|
1182
|
-
let html_tag;
|
|
1183
|
-
let raw_value = (
|
|
1184
|
-
/*buildPromptRubric*/
|
|
1185
|
-
ctx[6](
|
|
1186
|
-
/*prompt*/
|
|
1187
|
-
ctx[3],
|
|
1188
|
-
"item-heading font-semibold"
|
|
1189
|
-
) + ""
|
|
1190
|
-
);
|
|
1191
|
-
let t1;
|
|
1192
|
-
let div0;
|
|
1193
|
-
let t2;
|
|
1194
|
-
let if_block0 = (
|
|
1195
|
-
/*rubric*/
|
|
1196
|
-
ctx[2].text && create_if_block_1(ctx)
|
|
1197
|
-
);
|
|
1198
|
-
let if_block1 = (
|
|
1446
|
+
function create_default_slot(ctx) {
|
|
1447
|
+
let if_block_anchor;
|
|
1448
|
+
let if_block = (
|
|
1199
1449
|
/*options*/
|
|
1200
|
-
ctx[4] &&
|
|
1450
|
+
ctx[4] && create_if_block2(ctx)
|
|
1201
1451
|
);
|
|
1202
1452
|
return {
|
|
1203
1453
|
c() {
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
t0 = space();
|
|
1208
|
-
html_tag = new HtmlTag(false);
|
|
1209
|
-
t1 = space();
|
|
1210
|
-
div0 = element("div");
|
|
1211
|
-
t2 = space();
|
|
1212
|
-
if (if_block1)
|
|
1213
|
-
if_block1.c();
|
|
1214
|
-
html_tag.a = t1;
|
|
1215
|
-
attr(div0, "class", "divider my-6");
|
|
1216
|
-
attr(div1, "class", "bg-transparent");
|
|
1454
|
+
if (if_block)
|
|
1455
|
+
if_block.c();
|
|
1456
|
+
if_block_anchor = empty();
|
|
1217
1457
|
},
|
|
1218
1458
|
m(target, anchor) {
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
append(div1, t0);
|
|
1223
|
-
html_tag.m(raw_value, div1);
|
|
1224
|
-
append(div1, t1);
|
|
1225
|
-
append(div1, div0);
|
|
1226
|
-
append(div1, t2);
|
|
1227
|
-
if (if_block1)
|
|
1228
|
-
if_block1.m(div1, null);
|
|
1459
|
+
if (if_block)
|
|
1460
|
+
if_block.m(target, anchor);
|
|
1461
|
+
insert(target, if_block_anchor, anchor);
|
|
1229
1462
|
},
|
|
1230
|
-
p(ctx2,
|
|
1231
|
-
if (
|
|
1232
|
-
/*rubric*/
|
|
1233
|
-
ctx2[2].text
|
|
1234
|
-
)
|
|
1235
|
-
if_block0.p(ctx2, dirty);
|
|
1463
|
+
p(ctx2, dirty) {
|
|
1236
1464
|
if (
|
|
1237
1465
|
/*options*/
|
|
1238
1466
|
ctx2[4]
|
|
1239
1467
|
)
|
|
1240
|
-
|
|
1468
|
+
if_block.p(ctx2, dirty);
|
|
1241
1469
|
},
|
|
1242
|
-
i: noop,
|
|
1243
|
-
o: noop,
|
|
1244
1470
|
d(detaching) {
|
|
1245
1471
|
if (detaching) {
|
|
1246
|
-
detach(
|
|
1472
|
+
detach(if_block_anchor);
|
|
1247
1473
|
}
|
|
1248
|
-
if (
|
|
1249
|
-
|
|
1250
|
-
if (if_block1)
|
|
1251
|
-
if_block1.d();
|
|
1474
|
+
if (if_block)
|
|
1475
|
+
if_block.d(detaching);
|
|
1252
1476
|
}
|
|
1253
1477
|
};
|
|
1254
1478
|
}
|
|
1255
|
-
function
|
|
1256
|
-
let
|
|
1257
|
-
let
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
}
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1479
|
+
function create_fragment2(ctx) {
|
|
1480
|
+
let promptbody;
|
|
1481
|
+
let current;
|
|
1482
|
+
promptbody = new PromptBody_default({
|
|
1483
|
+
props: {
|
|
1484
|
+
rubric: (
|
|
1485
|
+
/*rubric*/
|
|
1486
|
+
ctx[2].text
|
|
1487
|
+
),
|
|
1488
|
+
prompt: (
|
|
1489
|
+
/*prompt*/
|
|
1490
|
+
ctx[3]
|
|
1491
|
+
),
|
|
1492
|
+
$$slots: { default: [create_default_slot] },
|
|
1493
|
+
$$scope: { ctx }
|
|
1494
|
+
}
|
|
1495
|
+
});
|
|
1496
|
+
return {
|
|
1497
|
+
c() {
|
|
1498
|
+
create_component(promptbody.$$.fragment);
|
|
1499
|
+
},
|
|
1500
|
+
m(target, anchor) {
|
|
1501
|
+
mount_component(promptbody, target, anchor);
|
|
1502
|
+
current = true;
|
|
1503
|
+
},
|
|
1504
|
+
p(ctx2, [dirty]) {
|
|
1505
|
+
const promptbody_changes = {};
|
|
1506
|
+
if (dirty & /*$$scope, selectedOption, isDataSaving*/
|
|
1507
|
+
32771) {
|
|
1508
|
+
promptbody_changes.$$scope = { dirty, ctx: ctx2 };
|
|
1509
|
+
}
|
|
1510
|
+
promptbody.$set(promptbody_changes);
|
|
1511
|
+
},
|
|
1512
|
+
i(local) {
|
|
1513
|
+
if (current)
|
|
1514
|
+
return;
|
|
1515
|
+
transition_in(promptbody.$$.fragment, local);
|
|
1516
|
+
current = true;
|
|
1517
|
+
},
|
|
1518
|
+
o(local) {
|
|
1519
|
+
transition_out(promptbody.$$.fragment, local);
|
|
1520
|
+
current = false;
|
|
1521
|
+
},
|
|
1522
|
+
d(detaching) {
|
|
1523
|
+
destroy_component(promptbody, detaching);
|
|
1524
|
+
}
|
|
1525
|
+
};
|
|
1526
|
+
}
|
|
1527
|
+
function instance2($$self, $$props, $$invalidate) {
|
|
1528
|
+
let { sessionData } = $$props;
|
|
1529
|
+
let { isDataSaving } = $$props;
|
|
1530
|
+
const { rubric, interaction, metadata } = sessionData;
|
|
1531
|
+
const { prompt, options } = interaction;
|
|
1532
|
+
let selectedOption;
|
|
1533
|
+
const dispatch = createEventDispatcher();
|
|
1534
|
+
if (metadata) {
|
|
1535
|
+
const { events } = metadata.interactions;
|
|
1536
|
+
const currentOption = events.pop();
|
|
1537
|
+
const { answer_id: answerChoiceId } = currentOption;
|
|
1538
|
+
selectedOption = answerChoiceId[0];
|
|
1539
|
+
}
|
|
1540
|
+
const handleOptionClick = (optionId, option) => {
|
|
1541
|
+
if (isDataSaving || optionId === selectedOption)
|
|
1542
|
+
return;
|
|
1543
|
+
$$invalidate(1, selectedOption = optionId);
|
|
1544
|
+
dispatch("saveOption", {
|
|
1545
|
+
answer_id: [optionId],
|
|
1546
|
+
answer_choice: [option]
|
|
1547
|
+
});
|
|
1548
|
+
};
|
|
1549
|
+
const click_handler = (option) => handleOptionClick(option.id, option.answer);
|
|
1550
|
+
$$self.$$set = ($$props2) => {
|
|
1551
|
+
if ("sessionData" in $$props2)
|
|
1552
|
+
$$invalidate(6, sessionData = $$props2.sessionData);
|
|
1553
|
+
if ("isDataSaving" in $$props2)
|
|
1554
|
+
$$invalidate(0, isDataSaving = $$props2.isDataSaving);
|
|
1555
|
+
};
|
|
1288
1556
|
return [
|
|
1289
1557
|
isDataSaving,
|
|
1290
1558
|
selectedOption,
|
|
@@ -1292,7 +1560,6 @@
|
|
|
1292
1560
|
prompt,
|
|
1293
1561
|
options,
|
|
1294
1562
|
handleOptionClick,
|
|
1295
|
-
buildPromptRubric,
|
|
1296
1563
|
sessionData,
|
|
1297
1564
|
click_handler
|
|
1298
1565
|
];
|
|
@@ -1300,10 +1567,10 @@
|
|
|
1300
1567
|
var PromptMCQ = class extends SvelteComponent {
|
|
1301
1568
|
constructor(options) {
|
|
1302
1569
|
super();
|
|
1303
|
-
init(this, options,
|
|
1570
|
+
init(this, options, instance2, create_fragment2, safe_not_equal, { sessionData: 6, isDataSaving: 0 });
|
|
1304
1571
|
}
|
|
1305
1572
|
get sessionData() {
|
|
1306
|
-
return this.$$.ctx[
|
|
1573
|
+
return this.$$.ctx[6];
|
|
1307
1574
|
}
|
|
1308
1575
|
set sessionData(sessionData) {
|
|
1309
1576
|
this.$$set({ sessionData });
|
|
@@ -1320,8 +1587,386 @@
|
|
|
1320
1587
|
customElements.define("prompt-mcq", create_custom_element(PromptMCQ, { "sessionData": {}, "isDataSaving": {} }, [], [], true));
|
|
1321
1588
|
var PromptMCQ_default = PromptMCQ;
|
|
1322
1589
|
|
|
1590
|
+
// node_modules/autosize/dist/autosize.esm.js
|
|
1591
|
+
var e = /* @__PURE__ */ new Map();
|
|
1592
|
+
function t(t2) {
|
|
1593
|
+
var o2 = e.get(t2);
|
|
1594
|
+
o2 && o2.destroy();
|
|
1595
|
+
}
|
|
1596
|
+
function o(t2) {
|
|
1597
|
+
var o2 = e.get(t2);
|
|
1598
|
+
o2 && o2.update();
|
|
1599
|
+
}
|
|
1600
|
+
var r = null;
|
|
1601
|
+
"undefined" == typeof window ? ((r = function(e2) {
|
|
1602
|
+
return e2;
|
|
1603
|
+
}).destroy = function(e2) {
|
|
1604
|
+
return e2;
|
|
1605
|
+
}, r.update = function(e2) {
|
|
1606
|
+
return e2;
|
|
1607
|
+
}) : ((r = function(t2, o2) {
|
|
1608
|
+
return t2 && Array.prototype.forEach.call(t2.length ? t2 : [t2], function(t3) {
|
|
1609
|
+
return function(t4) {
|
|
1610
|
+
if (t4 && t4.nodeName && "TEXTAREA" === t4.nodeName && !e.has(t4)) {
|
|
1611
|
+
var o3, r2 = null, n2 = window.getComputedStyle(t4), i = (o3 = t4.value, function() {
|
|
1612
|
+
a({ testForHeightReduction: "" === o3 || !t4.value.startsWith(o3), restoreTextAlign: null }), o3 = t4.value;
|
|
1613
|
+
}), l = function(o4) {
|
|
1614
|
+
t4.removeEventListener("autosize:destroy", l), t4.removeEventListener("autosize:update", s), t4.removeEventListener("input", i), window.removeEventListener("resize", s), Object.keys(o4).forEach(function(e2) {
|
|
1615
|
+
return t4.style[e2] = o4[e2];
|
|
1616
|
+
}), e.delete(t4);
|
|
1617
|
+
}.bind(t4, { height: t4.style.height, resize: t4.style.resize, textAlign: t4.style.textAlign, overflowY: t4.style.overflowY, overflowX: t4.style.overflowX, wordWrap: t4.style.wordWrap });
|
|
1618
|
+
t4.addEventListener("autosize:destroy", l), t4.addEventListener("autosize:update", s), t4.addEventListener("input", i), window.addEventListener("resize", s), t4.style.overflowX = "hidden", t4.style.wordWrap = "break-word", e.set(t4, { destroy: l, update: s }), s();
|
|
1619
|
+
}
|
|
1620
|
+
function a(e2) {
|
|
1621
|
+
var o4, i2, l2 = e2.restoreTextAlign, s2 = void 0 === l2 ? null : l2, d = e2.testForHeightReduction, u = void 0 === d || d, c = n2.overflowY;
|
|
1622
|
+
if (0 !== t4.scrollHeight && ("vertical" === n2.resize ? t4.style.resize = "none" : "both" === n2.resize && (t4.style.resize = "horizontal"), u && (o4 = function(e3) {
|
|
1623
|
+
for (var t5 = []; e3 && e3.parentNode && e3.parentNode instanceof Element; )
|
|
1624
|
+
e3.parentNode.scrollTop && t5.push([e3.parentNode, e3.parentNode.scrollTop]), e3 = e3.parentNode;
|
|
1625
|
+
return function() {
|
|
1626
|
+
return t5.forEach(function(e4) {
|
|
1627
|
+
var t6 = e4[0], o5 = e4[1];
|
|
1628
|
+
t6.style.scrollBehavior = "auto", t6.scrollTop = o5, t6.style.scrollBehavior = null;
|
|
1629
|
+
});
|
|
1630
|
+
};
|
|
1631
|
+
}(t4), t4.style.height = ""), i2 = "content-box" === n2.boxSizing ? t4.scrollHeight - (parseFloat(n2.paddingTop) + parseFloat(n2.paddingBottom)) : t4.scrollHeight + parseFloat(n2.borderTopWidth) + parseFloat(n2.borderBottomWidth), "none" !== n2.maxHeight && i2 > parseFloat(n2.maxHeight) ? ("hidden" === n2.overflowY && (t4.style.overflow = "scroll"), i2 = parseFloat(n2.maxHeight)) : "hidden" !== n2.overflowY && (t4.style.overflow = "hidden"), t4.style.height = i2 + "px", s2 && (t4.style.textAlign = s2), o4 && o4(), r2 !== i2 && (t4.dispatchEvent(new Event("autosize:resized", { bubbles: true })), r2 = i2), c !== n2.overflow && !s2)) {
|
|
1632
|
+
var v = n2.textAlign;
|
|
1633
|
+
"hidden" === n2.overflow && (t4.style.textAlign = "start" === v ? "end" : "start"), a({ restoreTextAlign: v, testForHeightReduction: true });
|
|
1634
|
+
}
|
|
1635
|
+
}
|
|
1636
|
+
function s() {
|
|
1637
|
+
a({ testForHeightReduction: true, restoreTextAlign: null });
|
|
1638
|
+
}
|
|
1639
|
+
}(t3);
|
|
1640
|
+
}), t2;
|
|
1641
|
+
}).destroy = function(e2) {
|
|
1642
|
+
return e2 && Array.prototype.forEach.call(e2.length ? e2 : [e2], t), e2;
|
|
1643
|
+
}, r.update = function(e2) {
|
|
1644
|
+
return e2 && Array.prototype.forEach.call(e2.length ? e2 : [e2], o), e2;
|
|
1645
|
+
});
|
|
1646
|
+
var n = r;
|
|
1647
|
+
var autosize_esm_default = n;
|
|
1648
|
+
|
|
1649
|
+
// node_modules/svelte-autosize/index.js
|
|
1650
|
+
var action = (node) => {
|
|
1651
|
+
autosize_esm_default(node);
|
|
1652
|
+
return {
|
|
1653
|
+
destroy() {
|
|
1654
|
+
autosize_esm_default.destroy(node);
|
|
1655
|
+
}
|
|
1656
|
+
};
|
|
1657
|
+
};
|
|
1658
|
+
action.update = autosize_esm_default.update;
|
|
1659
|
+
action.destroy = autosize_esm_default.destroy;
|
|
1660
|
+
var svelte_autosize_default = action;
|
|
1661
|
+
|
|
1662
|
+
// src/lib/components/prompt/typein/PromptTypeIn.svelte
|
|
1663
|
+
function create_else_block(ctx) {
|
|
1664
|
+
let textarea;
|
|
1665
|
+
let autosize_action;
|
|
1666
|
+
let mounted;
|
|
1667
|
+
let dispose;
|
|
1668
|
+
return {
|
|
1669
|
+
c() {
|
|
1670
|
+
textarea = element("textarea");
|
|
1671
|
+
attr(textarea, "id", idLabel);
|
|
1672
|
+
attr(textarea, "placeholder", placeholder);
|
|
1673
|
+
attr(textarea, "rows", "3");
|
|
1674
|
+
attr(textarea, "class", "typein-textbox overflow-hidden");
|
|
1675
|
+
textarea.disabled = /*isDataSaving*/
|
|
1676
|
+
ctx[0];
|
|
1677
|
+
},
|
|
1678
|
+
m(target, anchor) {
|
|
1679
|
+
insert(target, textarea, anchor);
|
|
1680
|
+
set_input_value(
|
|
1681
|
+
textarea,
|
|
1682
|
+
/*typeinAnswer*/
|
|
1683
|
+
ctx[1]
|
|
1684
|
+
);
|
|
1685
|
+
if (!mounted) {
|
|
1686
|
+
dispose = [
|
|
1687
|
+
listen(
|
|
1688
|
+
textarea,
|
|
1689
|
+
"input",
|
|
1690
|
+
/*textarea_input_handler*/
|
|
1691
|
+
ctx[11]
|
|
1692
|
+
),
|
|
1693
|
+
listen(
|
|
1694
|
+
textarea,
|
|
1695
|
+
"focusout",
|
|
1696
|
+
/*focusout_handler_1*/
|
|
1697
|
+
ctx[12]
|
|
1698
|
+
),
|
|
1699
|
+
listen(
|
|
1700
|
+
textarea,
|
|
1701
|
+
"keydown",
|
|
1702
|
+
/*keydown_handler_1*/
|
|
1703
|
+
ctx[13]
|
|
1704
|
+
),
|
|
1705
|
+
action_destroyer(autosize_action = svelte_autosize_default.call(null, textarea))
|
|
1706
|
+
];
|
|
1707
|
+
mounted = true;
|
|
1708
|
+
}
|
|
1709
|
+
},
|
|
1710
|
+
p(ctx2, dirty) {
|
|
1711
|
+
if (dirty & /*isDataSaving*/
|
|
1712
|
+
1) {
|
|
1713
|
+
textarea.disabled = /*isDataSaving*/
|
|
1714
|
+
ctx2[0];
|
|
1715
|
+
}
|
|
1716
|
+
if (dirty & /*typeinAnswer*/
|
|
1717
|
+
2) {
|
|
1718
|
+
set_input_value(
|
|
1719
|
+
textarea,
|
|
1720
|
+
/*typeinAnswer*/
|
|
1721
|
+
ctx2[1]
|
|
1722
|
+
);
|
|
1723
|
+
}
|
|
1724
|
+
},
|
|
1725
|
+
d(detaching) {
|
|
1726
|
+
if (detaching) {
|
|
1727
|
+
detach(textarea);
|
|
1728
|
+
}
|
|
1729
|
+
mounted = false;
|
|
1730
|
+
run_all(dispose);
|
|
1731
|
+
}
|
|
1732
|
+
};
|
|
1733
|
+
}
|
|
1734
|
+
function create_if_block3(ctx) {
|
|
1735
|
+
let input;
|
|
1736
|
+
let mounted;
|
|
1737
|
+
let dispose;
|
|
1738
|
+
return {
|
|
1739
|
+
c() {
|
|
1740
|
+
input = element("input");
|
|
1741
|
+
attr(input, "type", "text");
|
|
1742
|
+
attr(input, "id", idLabel);
|
|
1743
|
+
attr(input, "placeholder", placeholder);
|
|
1744
|
+
attr(input, "class", "typein-textbox");
|
|
1745
|
+
input.disabled = /*isDataSaving*/
|
|
1746
|
+
ctx[0];
|
|
1747
|
+
},
|
|
1748
|
+
m(target, anchor) {
|
|
1749
|
+
insert(target, input, anchor);
|
|
1750
|
+
set_input_value(
|
|
1751
|
+
input,
|
|
1752
|
+
/*typeinAnswer*/
|
|
1753
|
+
ctx[1]
|
|
1754
|
+
);
|
|
1755
|
+
if (!mounted) {
|
|
1756
|
+
dispose = [
|
|
1757
|
+
listen(
|
|
1758
|
+
input,
|
|
1759
|
+
"input",
|
|
1760
|
+
/*input_input_handler*/
|
|
1761
|
+
ctx[8]
|
|
1762
|
+
),
|
|
1763
|
+
listen(
|
|
1764
|
+
input,
|
|
1765
|
+
"focusout",
|
|
1766
|
+
/*focusout_handler*/
|
|
1767
|
+
ctx[9]
|
|
1768
|
+
),
|
|
1769
|
+
listen(
|
|
1770
|
+
input,
|
|
1771
|
+
"keydown",
|
|
1772
|
+
/*keydown_handler*/
|
|
1773
|
+
ctx[10]
|
|
1774
|
+
)
|
|
1775
|
+
];
|
|
1776
|
+
mounted = true;
|
|
1777
|
+
}
|
|
1778
|
+
},
|
|
1779
|
+
p(ctx2, dirty) {
|
|
1780
|
+
if (dirty & /*isDataSaving*/
|
|
1781
|
+
1) {
|
|
1782
|
+
input.disabled = /*isDataSaving*/
|
|
1783
|
+
ctx2[0];
|
|
1784
|
+
}
|
|
1785
|
+
if (dirty & /*typeinAnswer*/
|
|
1786
|
+
2 && input.value !== /*typeinAnswer*/
|
|
1787
|
+
ctx2[1]) {
|
|
1788
|
+
set_input_value(
|
|
1789
|
+
input,
|
|
1790
|
+
/*typeinAnswer*/
|
|
1791
|
+
ctx2[1]
|
|
1792
|
+
);
|
|
1793
|
+
}
|
|
1794
|
+
},
|
|
1795
|
+
d(detaching) {
|
|
1796
|
+
if (detaching) {
|
|
1797
|
+
detach(input);
|
|
1798
|
+
}
|
|
1799
|
+
mounted = false;
|
|
1800
|
+
run_all(dispose);
|
|
1801
|
+
}
|
|
1802
|
+
};
|
|
1803
|
+
}
|
|
1804
|
+
function create_default_slot2(ctx) {
|
|
1805
|
+
let if_block_anchor;
|
|
1806
|
+
function select_block_type(ctx2, dirty) {
|
|
1807
|
+
if (
|
|
1808
|
+
/*typeinType*/
|
|
1809
|
+
ctx2[4] === "Short-Text"
|
|
1810
|
+
)
|
|
1811
|
+
return create_if_block3;
|
|
1812
|
+
return create_else_block;
|
|
1813
|
+
}
|
|
1814
|
+
let current_block_type = select_block_type(ctx, -1);
|
|
1815
|
+
let if_block = current_block_type(ctx);
|
|
1816
|
+
return {
|
|
1817
|
+
c() {
|
|
1818
|
+
if_block.c();
|
|
1819
|
+
if_block_anchor = empty();
|
|
1820
|
+
},
|
|
1821
|
+
m(target, anchor) {
|
|
1822
|
+
if_block.m(target, anchor);
|
|
1823
|
+
insert(target, if_block_anchor, anchor);
|
|
1824
|
+
},
|
|
1825
|
+
p(ctx2, dirty) {
|
|
1826
|
+
if_block.p(ctx2, dirty);
|
|
1827
|
+
},
|
|
1828
|
+
d(detaching) {
|
|
1829
|
+
if (detaching) {
|
|
1830
|
+
detach(if_block_anchor);
|
|
1831
|
+
}
|
|
1832
|
+
if_block.d(detaching);
|
|
1833
|
+
}
|
|
1834
|
+
};
|
|
1835
|
+
}
|
|
1836
|
+
function create_fragment3(ctx) {
|
|
1837
|
+
let promptbody;
|
|
1838
|
+
let current;
|
|
1839
|
+
promptbody = new PromptBody_default({
|
|
1840
|
+
props: {
|
|
1841
|
+
rubric: (
|
|
1842
|
+
/*rubric*/
|
|
1843
|
+
ctx[2].text
|
|
1844
|
+
),
|
|
1845
|
+
prompt: (
|
|
1846
|
+
/*prompt*/
|
|
1847
|
+
ctx[3]
|
|
1848
|
+
),
|
|
1849
|
+
$$slots: { default: [create_default_slot2] },
|
|
1850
|
+
$$scope: { ctx }
|
|
1851
|
+
}
|
|
1852
|
+
});
|
|
1853
|
+
return {
|
|
1854
|
+
c() {
|
|
1855
|
+
create_component(promptbody.$$.fragment);
|
|
1856
|
+
},
|
|
1857
|
+
m(target, anchor) {
|
|
1858
|
+
mount_component(promptbody, target, anchor);
|
|
1859
|
+
current = true;
|
|
1860
|
+
},
|
|
1861
|
+
p(ctx2, [dirty]) {
|
|
1862
|
+
const promptbody_changes = {};
|
|
1863
|
+
if (dirty & /*$$scope, isDataSaving, typeinAnswer*/
|
|
1864
|
+
262147) {
|
|
1865
|
+
promptbody_changes.$$scope = { dirty, ctx: ctx2 };
|
|
1866
|
+
}
|
|
1867
|
+
promptbody.$set(promptbody_changes);
|
|
1868
|
+
},
|
|
1869
|
+
i(local) {
|
|
1870
|
+
if (current)
|
|
1871
|
+
return;
|
|
1872
|
+
transition_in(promptbody.$$.fragment, local);
|
|
1873
|
+
current = true;
|
|
1874
|
+
},
|
|
1875
|
+
o(local) {
|
|
1876
|
+
transition_out(promptbody.$$.fragment, local);
|
|
1877
|
+
current = false;
|
|
1878
|
+
},
|
|
1879
|
+
d(detaching) {
|
|
1880
|
+
destroy_component(promptbody, detaching);
|
|
1881
|
+
}
|
|
1882
|
+
};
|
|
1883
|
+
}
|
|
1884
|
+
var idLabel = "answerText";
|
|
1885
|
+
var placeholder = "Type your answer here";
|
|
1886
|
+
function instance3($$self, $$props, $$invalidate) {
|
|
1887
|
+
let { sessionData } = $$props;
|
|
1888
|
+
let { isDataSaving } = $$props;
|
|
1889
|
+
const dispatch = createEventDispatcher();
|
|
1890
|
+
let typeinAnswer;
|
|
1891
|
+
let latestAnswer = "";
|
|
1892
|
+
const { rubric, interaction, metadata } = sessionData;
|
|
1893
|
+
const { prompt, typein_type: typeinType } = interaction;
|
|
1894
|
+
if (metadata) {
|
|
1895
|
+
const events = metadata.interactions.events.pop();
|
|
1896
|
+
latestAnswer = typeinAnswer = events.answer;
|
|
1897
|
+
}
|
|
1898
|
+
const saveAnswer = () => {
|
|
1899
|
+
if (isDataSaving || typeinAnswer === latestAnswer || !typeinAnswer && !latestAnswer)
|
|
1900
|
+
return;
|
|
1901
|
+
latestAnswer = typeinAnswer;
|
|
1902
|
+
dispatch("saveAnswer", { answer: typeinAnswer || "" });
|
|
1903
|
+
};
|
|
1904
|
+
const saveOnEnter = (event) => {
|
|
1905
|
+
if (event.key === "Enter") {
|
|
1906
|
+
event.preventDefault();
|
|
1907
|
+
saveAnswer();
|
|
1908
|
+
}
|
|
1909
|
+
};
|
|
1910
|
+
function input_input_handler() {
|
|
1911
|
+
typeinAnswer = this.value;
|
|
1912
|
+
$$invalidate(1, typeinAnswer);
|
|
1913
|
+
}
|
|
1914
|
+
const focusout_handler = () => saveAnswer();
|
|
1915
|
+
const keydown_handler = (event) => saveOnEnter(event);
|
|
1916
|
+
function textarea_input_handler() {
|
|
1917
|
+
typeinAnswer = this.value;
|
|
1918
|
+
$$invalidate(1, typeinAnswer);
|
|
1919
|
+
}
|
|
1920
|
+
const focusout_handler_1 = () => saveAnswer();
|
|
1921
|
+
const keydown_handler_1 = (event) => saveOnEnter(event);
|
|
1922
|
+
$$self.$$set = ($$props2) => {
|
|
1923
|
+
if ("sessionData" in $$props2)
|
|
1924
|
+
$$invalidate(7, sessionData = $$props2.sessionData);
|
|
1925
|
+
if ("isDataSaving" in $$props2)
|
|
1926
|
+
$$invalidate(0, isDataSaving = $$props2.isDataSaving);
|
|
1927
|
+
};
|
|
1928
|
+
return [
|
|
1929
|
+
isDataSaving,
|
|
1930
|
+
typeinAnswer,
|
|
1931
|
+
rubric,
|
|
1932
|
+
prompt,
|
|
1933
|
+
typeinType,
|
|
1934
|
+
saveAnswer,
|
|
1935
|
+
saveOnEnter,
|
|
1936
|
+
sessionData,
|
|
1937
|
+
input_input_handler,
|
|
1938
|
+
focusout_handler,
|
|
1939
|
+
keydown_handler,
|
|
1940
|
+
textarea_input_handler,
|
|
1941
|
+
focusout_handler_1,
|
|
1942
|
+
keydown_handler_1
|
|
1943
|
+
];
|
|
1944
|
+
}
|
|
1945
|
+
var PromptTypeIn = class extends SvelteComponent {
|
|
1946
|
+
constructor(options) {
|
|
1947
|
+
super();
|
|
1948
|
+
init(this, options, instance3, create_fragment3, safe_not_equal, { sessionData: 7, isDataSaving: 0 });
|
|
1949
|
+
}
|
|
1950
|
+
get sessionData() {
|
|
1951
|
+
return this.$$.ctx[7];
|
|
1952
|
+
}
|
|
1953
|
+
set sessionData(sessionData) {
|
|
1954
|
+
this.$$set({ sessionData });
|
|
1955
|
+
flush();
|
|
1956
|
+
}
|
|
1957
|
+
get isDataSaving() {
|
|
1958
|
+
return this.$$.ctx[0];
|
|
1959
|
+
}
|
|
1960
|
+
set isDataSaving(isDataSaving) {
|
|
1961
|
+
this.$$set({ isDataSaving });
|
|
1962
|
+
flush();
|
|
1963
|
+
}
|
|
1964
|
+
};
|
|
1965
|
+
customElements.define("prompt-typein", create_custom_element(PromptTypeIn, { "sessionData": {}, "isDataSaving": {} }, [], [], true));
|
|
1966
|
+
var PromptTypeIn_default = PromptTypeIn;
|
|
1967
|
+
|
|
1323
1968
|
// src/lib/components/prompt/skeleton/PromptSkeleton.svelte
|
|
1324
|
-
function
|
|
1969
|
+
function create_fragment4(ctx) {
|
|
1325
1970
|
let div3;
|
|
1326
1971
|
return {
|
|
1327
1972
|
c() {
|
|
@@ -1344,28 +1989,38 @@
|
|
|
1344
1989
|
var PromptSkeleton = class extends SvelteComponent {
|
|
1345
1990
|
constructor(options) {
|
|
1346
1991
|
super();
|
|
1347
|
-
init(this, options, null,
|
|
1992
|
+
init(this, options, null, create_fragment4, safe_not_equal, {});
|
|
1348
1993
|
}
|
|
1349
1994
|
};
|
|
1350
1995
|
customElements.define("prompt-skeleton", create_custom_element(PromptSkeleton, {}, [], [], true));
|
|
1351
1996
|
var PromptSkeleton_default = PromptSkeleton;
|
|
1352
1997
|
|
|
1353
|
-
// src/lib/components/
|
|
1354
|
-
function
|
|
1355
|
-
append_styles(target, "svelte-1i5tmfz", '*,: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}*,: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: }.item-heading{--tw-text-opacity:1;color:rgb(8 38 99/var(--tw-text-opacity));font-size:1.25rem;letter-spacing:-0.025em;line-height:1.5rem}.divider{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(107 121 121/var(--tw-border-opacity))}@keyframes svelte-1i5tmfz-pulse{50%{opacity:0.5}}.animate-skeleton{--tw-bg-opacity:1;animation:svelte-1i5tmfz-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(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}.btn-mcq-option{--tw-text-opacity:1;--tw-border-opacity:1;--tw-bg-opacity:1;align-items:center;background-color:rgb(247 250 250/var(--tw-bg-opacity));border-color:rgb(113 115 119/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;line-height:1.5rem;margin-bottom:1rem;min-height:48px;padding:0.5rem 0.75rem 0.5rem 0.5rem;width:100%}.btn-mcq-option:active{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(222 222 255/var(--tw-bg-opacity));border-color:rgb(8 38 99/var(--tw-border-opacity));border-width:2px}@media(hover: hover) and (pointer: fine){.btn-mcq-option:hover{--tw-bg-opacity:1;background-color:rgb(222 222 255/var(--tw-bg-opacity))}}.btn-mcq-option>.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(113 115 119/var(--tw-border-opacity));border-radius:1rem;border-width:1px;color:rgb(93 99 107/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;--tw-bg-opacity:1;background-color:rgb(222 222 255/var(--tw-bg-opacity))}.btn-mcq-option.selected,.btn-mcq-option.selected>.choice{border-color:rgb(8 38 99/var(--tw-border-opacity));border-width:2px}.btn-mcq-option.selected>.choice{--tw-border-opacity:1}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.z-50{z-index:50}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:0.5rem}.h-52{height:13rem}.h-6{height:1.5rem}.w-full{width:100%}.rounded{border-radius:0.25rem}.border-2{border-width:2px}.border-red-600{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.bg-red-200{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.p-2{padding:0.5rem}.text-left{text-align:left}.font-semibold{font-weight:600}.group:active .group-active\\:border-2{border-width:2px}.group:active .group-active\\:border-blue-1000{--tw-border-opacity:1;border-color:rgb(8 38 99/var(--tw-border-opacity))}.group:active .group-active\\:p-\\[7px\\]{padding:7px}@media(min-width: 732px){.md\\:mb-4{margin-bottom:1rem}}');
|
|
1356
|
-
}
|
|
1357
|
-
function create_else_block(ctx) {
|
|
1998
|
+
// src/lib/components/common/InvalidBanner.svelte
|
|
1999
|
+
function create_fragment5(ctx) {
|
|
1358
2000
|
let p;
|
|
2001
|
+
let t2;
|
|
1359
2002
|
return {
|
|
1360
2003
|
c() {
|
|
1361
2004
|
p = element("p");
|
|
1362
|
-
|
|
2005
|
+
t2 = text(
|
|
2006
|
+
/*bannerLabel*/
|
|
2007
|
+
ctx[0]
|
|
2008
|
+
);
|
|
1363
2009
|
attr(p, "class", "p-2 border-2 border-red-600 bg-red-200 rounded");
|
|
1364
2010
|
},
|
|
1365
2011
|
m(target, anchor) {
|
|
1366
2012
|
insert(target, p, anchor);
|
|
2013
|
+
append(p, t2);
|
|
2014
|
+
},
|
|
2015
|
+
p(ctx2, [dirty]) {
|
|
2016
|
+
if (dirty & /*bannerLabel*/
|
|
2017
|
+
1)
|
|
2018
|
+
set_data(
|
|
2019
|
+
t2,
|
|
2020
|
+
/*bannerLabel*/
|
|
2021
|
+
ctx2[0]
|
|
2022
|
+
);
|
|
1367
2023
|
},
|
|
1368
|
-
p: noop,
|
|
1369
2024
|
i: noop,
|
|
1370
2025
|
o: noop,
|
|
1371
2026
|
d(detaching) {
|
|
@@ -1375,10 +2030,194 @@
|
|
|
1375
2030
|
}
|
|
1376
2031
|
};
|
|
1377
2032
|
}
|
|
2033
|
+
function instance4($$self, $$props, $$invalidate) {
|
|
2034
|
+
let { bannerLabel: bannerLabel2 = "Invalid." } = $$props;
|
|
2035
|
+
$$self.$$set = ($$props2) => {
|
|
2036
|
+
if ("bannerLabel" in $$props2)
|
|
2037
|
+
$$invalidate(0, bannerLabel2 = $$props2.bannerLabel);
|
|
2038
|
+
};
|
|
2039
|
+
return [bannerLabel2];
|
|
2040
|
+
}
|
|
2041
|
+
var InvalidBanner = class extends SvelteComponent {
|
|
2042
|
+
constructor(options) {
|
|
2043
|
+
super();
|
|
2044
|
+
init(this, options, instance4, create_fragment5, safe_not_equal, { bannerLabel: 0 });
|
|
2045
|
+
}
|
|
2046
|
+
get bannerLabel() {
|
|
2047
|
+
return this.$$.ctx[0];
|
|
2048
|
+
}
|
|
2049
|
+
set bannerLabel(bannerLabel2) {
|
|
2050
|
+
this.$$set({ bannerLabel: bannerLabel2 });
|
|
2051
|
+
flush();
|
|
2052
|
+
}
|
|
2053
|
+
};
|
|
2054
|
+
customElements.define("invalid-banner", create_custom_element(InvalidBanner, { "bannerLabel": {} }, [], [], true));
|
|
2055
|
+
var InvalidBanner_default = InvalidBanner;
|
|
2056
|
+
|
|
2057
|
+
// src/lib/components/prompt/PromptBuilder.svelte
|
|
2058
|
+
function add_css(target) {
|
|
2059
|
+
append_styles(target, "svelte-1h69jp4", '*,: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}*,: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: }.item-heading{--tw-text-opacity:1;color:rgb(8 38 99/var(--tw-text-opacity));font-size:1.25rem;letter-spacing:-0.025em;line-height:1.5rem}.divider{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(107 121 121/var(--tw-border-opacity))}@keyframes svelte-1h69jp4-pulse{{opacity:0.5}}.animate-skeleton{--tw-bg-opacity:1;animation:svelte-1h69jp4-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(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}.btn-mcq-option{--tw-text-opacity:1;--tw-border-opacity:1;--tw-bg-opacity:1;align-items:center;background-color:rgb(247 250 250/var(--tw-bg-opacity));border-color:rgb(113 115 119/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;line-height:1.5rem;margin-bottom:1rem;min-height:48px;padding:0.5rem 0.75rem 0.5rem 0.5rem;width:100%}.btn-mcq-option:active{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(222 222 255/var(--tw-bg-opacity));border-color:rgb(8 38 99/var(--tw-border-opacity));border-width:2px}@media(hover: hover) and (pointer: fine){.btn-mcq-option:hover{--tw-bg-opacity:1;background-color:rgb(222 222 255/var(--tw-bg-opacity))}}.btn-mcq-option>.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(113 115 119/var(--tw-border-opacity));border-radius:1rem;border-width:1px;color:rgb(93 99 107/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;--tw-bg-opacity:1;background-color:rgb(222 222 255/var(--tw-bg-opacity))}.btn-mcq-option.selected,.btn-mcq-option.selected>.choice{border-color:rgb(8 38 99/var(--tw-border-opacity));border-width:2px}.btn-mcq-option.selected>.choice{--tw-border-opacity:1}.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-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}.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(93 99 107/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(93 99 107/var(--tw-placeholder-opacity))}.typein-textbox::placeholder{--tw-placeholder-opacity:1;color:rgb(93 99 107/var(--tw-placeholder-opacity))}.typein-textbox:focus{--tw-border-opacity:1;border-color:rgb(84 101 251/var(--tw-border-opacity));border-width:2px}@media(hover: hover) and (pointer: fine){.typein-textbox:hover{--tw-border-opacity:1;border-color:rgb(84 101 251/var(--tw-border-opacity));border-width:2px;outline:2px solid transparent;outline-offset: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{--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:4px;box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));transition-duration:50ms}}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.z-50{z-index:50}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:0.5rem}.h-52{height:13rem}.h-6{height:1.5rem}.w-full{width:100%}.overflow-hidden{overflow:hidden}.rounded{border-radius:0.25rem}.border-2{border-width:2px}.border-red-600{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.bg-red-200{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.p-2{padding:0.5rem}.text-left{text-align:left}.font-semibold{font-weight:600}.group:active .group-active\\:border-2{border-width:2px}.group:active .group-active\\:border-blue-1000{--tw-border-opacity:1;border-color:rgb(8 38 99/var(--tw-border-opacity))}.group:active .group-active\\:p-\\[7px\\]{padding:7px}@media(min-width: 732px){.md\\:mb-4{margin-bottom:1rem}}');
|
|
2060
|
+
}
|
|
2061
|
+
function create_else_block_1(ctx) {
|
|
2062
|
+
let invalidbanner;
|
|
2063
|
+
let current;
|
|
2064
|
+
invalidbanner = new InvalidBanner_default({ props: { bannerLabel } });
|
|
2065
|
+
return {
|
|
2066
|
+
c() {
|
|
2067
|
+
create_component(invalidbanner.$$.fragment);
|
|
2068
|
+
},
|
|
2069
|
+
m(target, anchor) {
|
|
2070
|
+
mount_component(invalidbanner, target, anchor);
|
|
2071
|
+
current = true;
|
|
2072
|
+
},
|
|
2073
|
+
p: noop,
|
|
2074
|
+
i(local) {
|
|
2075
|
+
if (current)
|
|
2076
|
+
return;
|
|
2077
|
+
transition_in(invalidbanner.$$.fragment, local);
|
|
2078
|
+
current = true;
|
|
2079
|
+
},
|
|
2080
|
+
o(local) {
|
|
2081
|
+
transition_out(invalidbanner.$$.fragment, local);
|
|
2082
|
+
current = false;
|
|
2083
|
+
},
|
|
2084
|
+
d(detaching) {
|
|
2085
|
+
destroy_component(invalidbanner, detaching);
|
|
2086
|
+
}
|
|
2087
|
+
};
|
|
2088
|
+
}
|
|
1378
2089
|
function create_if_block_12(ctx) {
|
|
1379
|
-
let
|
|
2090
|
+
let current_block_type_index;
|
|
2091
|
+
let if_block;
|
|
2092
|
+
let if_block_anchor;
|
|
1380
2093
|
let current;
|
|
1381
|
-
|
|
2094
|
+
const if_block_creators = [create_if_block_2, create_if_block_3, create_else_block2];
|
|
2095
|
+
const if_blocks = [];
|
|
2096
|
+
function select_block_type_1(ctx2, dirty) {
|
|
2097
|
+
if (
|
|
2098
|
+
/*interactionType*/
|
|
2099
|
+
ctx2[3] === "multipleChoiceInteraction"
|
|
2100
|
+
)
|
|
2101
|
+
return 0;
|
|
2102
|
+
if (
|
|
2103
|
+
/*interactionType*/
|
|
2104
|
+
ctx2[3] === "typeInInteraction"
|
|
2105
|
+
)
|
|
2106
|
+
return 1;
|
|
2107
|
+
return 2;
|
|
2108
|
+
}
|
|
2109
|
+
current_block_type_index = select_block_type_1(ctx, -1);
|
|
2110
|
+
if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx);
|
|
2111
|
+
return {
|
|
2112
|
+
c() {
|
|
2113
|
+
if_block.c();
|
|
2114
|
+
if_block_anchor = empty();
|
|
2115
|
+
},
|
|
2116
|
+
m(target, anchor) {
|
|
2117
|
+
if_blocks[current_block_type_index].m(target, anchor);
|
|
2118
|
+
insert(target, if_block_anchor, anchor);
|
|
2119
|
+
current = true;
|
|
2120
|
+
},
|
|
2121
|
+
p(ctx2, dirty) {
|
|
2122
|
+
let previous_block_index = current_block_type_index;
|
|
2123
|
+
current_block_type_index = select_block_type_1(ctx2, dirty);
|
|
2124
|
+
if (current_block_type_index === previous_block_index) {
|
|
2125
|
+
if_blocks[current_block_type_index].p(ctx2, dirty);
|
|
2126
|
+
} else {
|
|
2127
|
+
group_outros();
|
|
2128
|
+
transition_out(if_blocks[previous_block_index], 1, 1, () => {
|
|
2129
|
+
if_blocks[previous_block_index] = null;
|
|
2130
|
+
});
|
|
2131
|
+
check_outros();
|
|
2132
|
+
if_block = if_blocks[current_block_type_index];
|
|
2133
|
+
if (!if_block) {
|
|
2134
|
+
if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx2);
|
|
2135
|
+
if_block.c();
|
|
2136
|
+
} else {
|
|
2137
|
+
if_block.p(ctx2, dirty);
|
|
2138
|
+
}
|
|
2139
|
+
transition_in(if_block, 1);
|
|
2140
|
+
if_block.m(if_block_anchor.parentNode, if_block_anchor);
|
|
2141
|
+
}
|
|
2142
|
+
},
|
|
2143
|
+
i(local) {
|
|
2144
|
+
if (current)
|
|
2145
|
+
return;
|
|
2146
|
+
transition_in(if_block);
|
|
2147
|
+
current = true;
|
|
2148
|
+
},
|
|
2149
|
+
o(local) {
|
|
2150
|
+
transition_out(if_block);
|
|
2151
|
+
current = false;
|
|
2152
|
+
},
|
|
2153
|
+
d(detaching) {
|
|
2154
|
+
if (detaching) {
|
|
2155
|
+
detach(if_block_anchor);
|
|
2156
|
+
}
|
|
2157
|
+
if_blocks[current_block_type_index].d(detaching);
|
|
2158
|
+
}
|
|
2159
|
+
};
|
|
2160
|
+
}
|
|
2161
|
+
function create_if_block4(ctx) {
|
|
2162
|
+
let promptskeleton;
|
|
2163
|
+
let current;
|
|
2164
|
+
promptskeleton = new PromptSkeleton_default({});
|
|
2165
|
+
return {
|
|
2166
|
+
c() {
|
|
2167
|
+
create_component(promptskeleton.$$.fragment);
|
|
2168
|
+
},
|
|
2169
|
+
m(target, anchor) {
|
|
2170
|
+
mount_component(promptskeleton, target, anchor);
|
|
2171
|
+
current = true;
|
|
2172
|
+
},
|
|
2173
|
+
p: noop,
|
|
2174
|
+
i(local) {
|
|
2175
|
+
if (current)
|
|
2176
|
+
return;
|
|
2177
|
+
transition_in(promptskeleton.$$.fragment, local);
|
|
2178
|
+
current = true;
|
|
2179
|
+
},
|
|
2180
|
+
o(local) {
|
|
2181
|
+
transition_out(promptskeleton.$$.fragment, local);
|
|
2182
|
+
current = false;
|
|
2183
|
+
},
|
|
2184
|
+
d(detaching) {
|
|
2185
|
+
destroy_component(promptskeleton, detaching);
|
|
2186
|
+
}
|
|
2187
|
+
};
|
|
2188
|
+
}
|
|
2189
|
+
function create_else_block2(ctx) {
|
|
2190
|
+
let invalidbanner;
|
|
2191
|
+
let current;
|
|
2192
|
+
invalidbanner = new InvalidBanner_default({ props: { bannerLabel } });
|
|
2193
|
+
return {
|
|
2194
|
+
c() {
|
|
2195
|
+
create_component(invalidbanner.$$.fragment);
|
|
2196
|
+
},
|
|
2197
|
+
m(target, anchor) {
|
|
2198
|
+
mount_component(invalidbanner, target, anchor);
|
|
2199
|
+
current = true;
|
|
2200
|
+
},
|
|
2201
|
+
p: noop,
|
|
2202
|
+
i(local) {
|
|
2203
|
+
if (current)
|
|
2204
|
+
return;
|
|
2205
|
+
transition_in(invalidbanner.$$.fragment, local);
|
|
2206
|
+
current = true;
|
|
2207
|
+
},
|
|
2208
|
+
o(local) {
|
|
2209
|
+
transition_out(invalidbanner.$$.fragment, local);
|
|
2210
|
+
current = false;
|
|
2211
|
+
},
|
|
2212
|
+
d(detaching) {
|
|
2213
|
+
destroy_component(invalidbanner, detaching);
|
|
2214
|
+
}
|
|
2215
|
+
};
|
|
2216
|
+
}
|
|
2217
|
+
function create_if_block_3(ctx) {
|
|
2218
|
+
let prompttypein;
|
|
2219
|
+
let current;
|
|
2220
|
+
prompttypein = new PromptTypeIn_default({
|
|
1382
2221
|
props: {
|
|
1383
2222
|
sessionData: (
|
|
1384
2223
|
/*sessionData*/
|
|
@@ -1390,80 +2229,107 @@
|
|
|
1390
2229
|
)
|
|
1391
2230
|
}
|
|
1392
2231
|
});
|
|
1393
|
-
|
|
1394
|
-
"
|
|
1395
|
-
/*
|
|
1396
|
-
ctx[
|
|
2232
|
+
prompttypein.$on(
|
|
2233
|
+
"saveAnswer",
|
|
2234
|
+
/*saveEvent*/
|
|
2235
|
+
ctx[4]
|
|
1397
2236
|
);
|
|
1398
2237
|
return {
|
|
1399
2238
|
c() {
|
|
1400
|
-
create_component(
|
|
2239
|
+
create_component(prompttypein.$$.fragment);
|
|
1401
2240
|
},
|
|
1402
2241
|
m(target, anchor) {
|
|
1403
|
-
mount_component(
|
|
2242
|
+
mount_component(prompttypein, target, anchor);
|
|
1404
2243
|
current = true;
|
|
1405
2244
|
},
|
|
1406
2245
|
p(ctx2, dirty) {
|
|
1407
|
-
const
|
|
2246
|
+
const prompttypein_changes = {};
|
|
1408
2247
|
if (dirty & /*sessionData*/
|
|
1409
2248
|
1)
|
|
1410
|
-
|
|
2249
|
+
prompttypein_changes.sessionData = /*sessionData*/
|
|
1411
2250
|
ctx2[0];
|
|
1412
2251
|
if (dirty & /*isDataSaving*/
|
|
1413
2252
|
4)
|
|
1414
|
-
|
|
2253
|
+
prompttypein_changes.isDataSaving = /*isDataSaving*/
|
|
1415
2254
|
ctx2[2];
|
|
1416
|
-
|
|
2255
|
+
prompttypein.$set(prompttypein_changes);
|
|
1417
2256
|
},
|
|
1418
2257
|
i(local) {
|
|
1419
2258
|
if (current)
|
|
1420
2259
|
return;
|
|
1421
|
-
transition_in(
|
|
2260
|
+
transition_in(prompttypein.$$.fragment, local);
|
|
1422
2261
|
current = true;
|
|
1423
2262
|
},
|
|
1424
2263
|
o(local) {
|
|
1425
|
-
transition_out(
|
|
2264
|
+
transition_out(prompttypein.$$.fragment, local);
|
|
1426
2265
|
current = false;
|
|
1427
2266
|
},
|
|
1428
2267
|
d(detaching) {
|
|
1429
|
-
destroy_component(
|
|
2268
|
+
destroy_component(prompttypein, detaching);
|
|
1430
2269
|
}
|
|
1431
2270
|
};
|
|
1432
2271
|
}
|
|
1433
|
-
function
|
|
1434
|
-
let
|
|
2272
|
+
function create_if_block_2(ctx) {
|
|
2273
|
+
let promptmcq;
|
|
1435
2274
|
let current;
|
|
1436
|
-
|
|
2275
|
+
promptmcq = new PromptMCQ_default({
|
|
2276
|
+
props: {
|
|
2277
|
+
sessionData: (
|
|
2278
|
+
/*sessionData*/
|
|
2279
|
+
ctx[0]
|
|
2280
|
+
),
|
|
2281
|
+
isDataSaving: (
|
|
2282
|
+
/*isDataSaving*/
|
|
2283
|
+
ctx[2]
|
|
2284
|
+
)
|
|
2285
|
+
}
|
|
2286
|
+
});
|
|
2287
|
+
promptmcq.$on(
|
|
2288
|
+
"saveOption",
|
|
2289
|
+
/*saveEvent*/
|
|
2290
|
+
ctx[4]
|
|
2291
|
+
);
|
|
1437
2292
|
return {
|
|
1438
2293
|
c() {
|
|
1439
|
-
create_component(
|
|
2294
|
+
create_component(promptmcq.$$.fragment);
|
|
1440
2295
|
},
|
|
1441
2296
|
m(target, anchor) {
|
|
1442
|
-
mount_component(
|
|
2297
|
+
mount_component(promptmcq, target, anchor);
|
|
1443
2298
|
current = true;
|
|
1444
2299
|
},
|
|
1445
|
-
p
|
|
2300
|
+
p(ctx2, dirty) {
|
|
2301
|
+
const promptmcq_changes = {};
|
|
2302
|
+
if (dirty & /*sessionData*/
|
|
2303
|
+
1)
|
|
2304
|
+
promptmcq_changes.sessionData = /*sessionData*/
|
|
2305
|
+
ctx2[0];
|
|
2306
|
+
if (dirty & /*isDataSaving*/
|
|
2307
|
+
4)
|
|
2308
|
+
promptmcq_changes.isDataSaving = /*isDataSaving*/
|
|
2309
|
+
ctx2[2];
|
|
2310
|
+
promptmcq.$set(promptmcq_changes);
|
|
2311
|
+
},
|
|
1446
2312
|
i(local) {
|
|
1447
2313
|
if (current)
|
|
1448
2314
|
return;
|
|
1449
|
-
transition_in(
|
|
2315
|
+
transition_in(promptmcq.$$.fragment, local);
|
|
1450
2316
|
current = true;
|
|
1451
2317
|
},
|
|
1452
2318
|
o(local) {
|
|
1453
|
-
transition_out(
|
|
2319
|
+
transition_out(promptmcq.$$.fragment, local);
|
|
1454
2320
|
current = false;
|
|
1455
2321
|
},
|
|
1456
2322
|
d(detaching) {
|
|
1457
|
-
destroy_component(
|
|
2323
|
+
destroy_component(promptmcq, detaching);
|
|
1458
2324
|
}
|
|
1459
2325
|
};
|
|
1460
2326
|
}
|
|
1461
|
-
function
|
|
2327
|
+
function create_fragment6(ctx) {
|
|
1462
2328
|
let current_block_type_index;
|
|
1463
2329
|
let if_block;
|
|
1464
2330
|
let if_block_anchor;
|
|
1465
2331
|
let current;
|
|
1466
|
-
const if_block_creators = [
|
|
2332
|
+
const if_block_creators = [create_if_block4, create_if_block_12, create_else_block_1];
|
|
1467
2333
|
const if_blocks = [];
|
|
1468
2334
|
function select_block_type(ctx2, dirty) {
|
|
1469
2335
|
if (
|
|
@@ -1530,12 +2396,14 @@
|
|
|
1530
2396
|
}
|
|
1531
2397
|
};
|
|
1532
2398
|
}
|
|
1533
|
-
|
|
2399
|
+
var bannerLabel = "Invalid session id.";
|
|
2400
|
+
function instance5($$self, $$props, $$invalidate) {
|
|
1534
2401
|
const { "session-id": sessionId } = $$props;
|
|
1535
2402
|
useSetupAPI();
|
|
1536
2403
|
let sessionData;
|
|
1537
2404
|
let isDataFetching = true;
|
|
1538
2405
|
let isDataSaving = false;
|
|
2406
|
+
let interactionType = null;
|
|
1539
2407
|
const skipUserValidationStr = get_store_value(skipUserValidation) ? "?skip_user_validation=true" : "";
|
|
1540
2408
|
const getSessionData = async (sessionId2) => {
|
|
1541
2409
|
try {
|
|
@@ -1551,20 +2419,28 @@
|
|
|
1551
2419
|
const getItemData = async (itemId, metadata) => {
|
|
1552
2420
|
try {
|
|
1553
2421
|
const { data } = await useGet(`items/${itemId}`);
|
|
2422
|
+
$$invalidate(3, interactionType = getInteractionType(data));
|
|
1554
2423
|
$$invalidate(0, sessionData = { ...data, metadata });
|
|
1555
2424
|
} catch (error) {
|
|
1556
2425
|
} finally {
|
|
1557
2426
|
$$invalidate(1, isDataFetching = false);
|
|
1558
2427
|
}
|
|
1559
2428
|
};
|
|
1560
|
-
const
|
|
1561
|
-
|
|
2429
|
+
const getInteractionType = (data) => {
|
|
2430
|
+
let interactionType2 = null;
|
|
2431
|
+
if (data) {
|
|
2432
|
+
const { interaction } = data;
|
|
2433
|
+
if (interaction) {
|
|
2434
|
+
const { type } = interaction;
|
|
2435
|
+
interactionType2 = type || null;
|
|
2436
|
+
}
|
|
2437
|
+
}
|
|
2438
|
+
return interactionType2;
|
|
2439
|
+
};
|
|
2440
|
+
const saveEvent = async ({ detail }) => {
|
|
1562
2441
|
try {
|
|
1563
|
-
|
|
1564
|
-
await usePatch(`sessions/${sessionId}${skipUserValidationStr}`,
|
|
1565
|
-
answer_id: answerChoiceId,
|
|
1566
|
-
answer_choice: answerChoice
|
|
1567
|
-
});
|
|
2442
|
+
$$invalidate(2, isDataSaving = true);
|
|
2443
|
+
await usePatch(`sessions/${sessionId}${skipUserValidationStr}`, detail);
|
|
1568
2444
|
} catch (error) {
|
|
1569
2445
|
$$invalidate(2, isDataSaving = false);
|
|
1570
2446
|
} finally {
|
|
@@ -1575,15 +2451,15 @@
|
|
|
1575
2451
|
getSessionData(sessionId);
|
|
1576
2452
|
}
|
|
1577
2453
|
$$self.$$set = ($$new_props) => {
|
|
1578
|
-
$$invalidate(
|
|
2454
|
+
$$invalidate(10, $$props = assign(assign({}, $$props), exclude_internal_props($$new_props)));
|
|
1579
2455
|
};
|
|
1580
2456
|
$$props = exclude_internal_props($$props);
|
|
1581
|
-
return [sessionData, isDataFetching, isDataSaving,
|
|
2457
|
+
return [sessionData, isDataFetching, isDataSaving, interactionType, saveEvent];
|
|
1582
2458
|
}
|
|
1583
2459
|
var PromptBuilder = class extends SvelteComponent {
|
|
1584
2460
|
constructor(options) {
|
|
1585
2461
|
super();
|
|
1586
|
-
init(this, options,
|
|
2462
|
+
init(this, options, instance5, create_fragment6, safe_not_equal, {}, add_css);
|
|
1587
2463
|
}
|
|
1588
2464
|
};
|
|
1589
2465
|
customElements.define("prompt-builder", create_custom_element(PromptBuilder, {}, [], [], true));
|