@pie-element/simple-cloze 0.1.3 → 0.1.4-next.0
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/configure.js +2 -0
- package/controller.js +1 -0
- package/dist/author/index.d.ts +0 -1
- package/dist/author/index.js +14813 -20641
- package/dist/author/index.js.map +1 -1
- package/dist/controller/defaults.d.ts +0 -1
- package/dist/controller/index.d.ts +0 -1
- package/dist/controller/index.js +4 -4
- package/dist/controller/index.js.map +1 -1
- package/dist/delivery/index.d.ts +6 -1
- package/dist/delivery/index.js +577 -357
- package/dist/delivery/index.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.iife.d.ts +0 -1
- package/dist/index.iife.js +3 -3
- package/dist/index.js +577 -357
- package/dist/index.js.map +1 -1
- package/dist/print/index.d.ts +0 -1
- package/dist/print/index.js +471 -314
- package/dist/print/index.js.map +1 -1
- package/dist/runtime-support.d.ts +12 -0
- package/dist/runtime-support.js +14 -0
- package/dist/runtime-support.js.map +1 -0
- package/package.json +21 -18
- package/dist/author/index.d.ts.map +0 -1
- package/dist/controller/defaults.d.ts.map +0 -1
- package/dist/controller/index.d.ts.map +0 -1
- package/dist/delivery/index.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.iife.d.ts.map +0 -1
- package/dist/print/index.d.ts.map +0 -1
- package/src/author/Author.svelte +0 -102
- package/src/author/index.ts +0 -28
- package/src/controller/defaults.ts +0 -13
- package/src/controller/index.ts +0 -98
- package/src/delivery/SimpleCloze.svelte +0 -171
- package/src/delivery/index.ts +0 -37
- package/src/index.iife.ts +0 -7
- package/src/index.ts +0 -1
- package/src/print/Print.svelte +0 -49
- package/src/print/index.ts +0 -18
|
@@ -6,4 +6,3 @@ export declare const normalizeSession: (s: any) => any;
|
|
|
6
6
|
export declare const model: (question: any, session: any, env: any) => Promise<unknown>;
|
|
7
7
|
export declare const createCorrectResponseSession: (question: any, env: any) => Promise<unknown>;
|
|
8
8
|
export declare const validate: (model?: any, _config?: any) => any;
|
|
9
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/controller/index.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { isEmpty } from "lodash-es";
|
|
2
1
|
//#region src/controller/defaults.ts
|
|
3
2
|
var defaults_default = {
|
|
4
3
|
model: {
|
|
@@ -13,18 +12,19 @@ var defaults_default = {
|
|
|
13
12
|
};
|
|
14
13
|
//#endregion
|
|
15
14
|
//#region src/controller/index.ts
|
|
15
|
+
var isEmptySession = (session) => !session || typeof session === "object" && Object.keys(session).length === 0;
|
|
16
16
|
var getCorrectness = (question, session) => {
|
|
17
|
-
if (!session
|
|
17
|
+
if (!session?.response) return "unanswered";
|
|
18
18
|
const correctAnswer = question?.correctAnswer || "";
|
|
19
19
|
if ((session.response || "").trim().toLowerCase() === correctAnswer.trim().toLowerCase()) return "correct";
|
|
20
20
|
return "incorrect";
|
|
21
21
|
};
|
|
22
22
|
var getPartialScore = (_question, session) => {
|
|
23
|
-
if (
|
|
23
|
+
if (isEmptySession(session)) return 0;
|
|
24
24
|
return 1;
|
|
25
25
|
};
|
|
26
26
|
var outcome = (question, session, env) => new Promise((resolve) => {
|
|
27
|
-
if (
|
|
27
|
+
if (isEmptySession(session)) {
|
|
28
28
|
resolve({
|
|
29
29
|
score: 0,
|
|
30
30
|
empty: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/controller/defaults.ts","../../src/controller/index.ts"],"sourcesContent":["export default {\n model: {\n prompt: '<p>Enter your answer:</p>',\n promptEnabled: true,\n correctAnswer: '',\n },\n configuration: {\n prompt: {\n label: 'Prompt',\n settings: true,\n },\n },\n};\n","import
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/controller/defaults.ts","../../src/controller/index.ts"],"sourcesContent":["export default {\n model: {\n prompt: '<p>Enter your answer:</p>',\n promptEnabled: true,\n correctAnswer: '',\n },\n configuration: {\n prompt: {\n label: 'Prompt',\n settings: true,\n },\n },\n};\n","import defaults from './defaults';\n\nconst isEmptySession = (session: unknown) =>\n !session || (typeof session === 'object' && Object.keys(session).length === 0);\n\nexport const getCorrectness = (question: any, session: any) => {\n if (!session?.response) {\n return 'unanswered';\n }\n\n const correctAnswer = question?.correctAnswer || '';\n const userAnswer = session.response || '';\n\n // Simple string comparison for now\n if (userAnswer.trim().toLowerCase() === correctAnswer.trim().toLowerCase()) {\n return 'correct';\n }\n\n return 'incorrect';\n};\n\nexport const getPartialScore = (_question: any, session: any) => {\n if (isEmptySession(session)) {\n return 0;\n }\n\n return 1;\n};\n\nexport const outcome = (question: any, session: any, env: any) =>\n new Promise((resolve) => {\n if (isEmptySession(session)) {\n resolve({ score: 0, empty: true });\n return;\n }\n\n session = normalizeSession(session);\n\n if (env.mode !== 'evaluate') {\n resolve({ score: undefined, completed: undefined });\n } else {\n const correctness = getCorrectness(question, session);\n const score = correctness === 'correct' ? 1 : 0;\n resolve({ score });\n }\n });\n\nexport const createDefaultModel = (model: any = {}) => ({ ...defaults.model, ...model });\n\nexport const normalizeSession = (s: any) => ({ ...s });\n\nexport const model = (question: any, session: any, env: any) => {\n return new Promise((resolve) => {\n session = session || {};\n const normalizedQuestion = createDefaultModel(question);\n\n const out: any = {\n prompt: normalizedQuestion.promptEnabled ? normalizedQuestion.prompt : null,\n disabled: env.mode !== 'gather',\n view: env.mode === 'view',\n env,\n };\n\n if (env.mode === 'evaluate') {\n const correctness = getCorrectness(normalizedQuestion, session);\n out.correctness = correctness;\n out.correctAnswer = normalizedQuestion.correctAnswer;\n }\n\n if (env.role === 'instructor' && (env.mode === 'view' || env.mode === 'evaluate')) {\n out.teacherInstructions = normalizedQuestion.teacherInstructionsEnabled\n ? normalizedQuestion.teacherInstructions\n : null;\n } else {\n out.teacherInstructions = null;\n }\n\n resolve(out);\n });\n};\n\nexport const createCorrectResponseSession = (question: any, env: any) => {\n return new Promise((resolve) => {\n if (env.mode !== 'evaluate' && env.role === 'instructor') {\n resolve({ id: '1', response: question.correctAnswer || '' });\n } else {\n resolve(null);\n }\n });\n};\n\nexport const validate = (model: any = {}, _config: any = {}) => {\n const errors: any = {};\n\n if (!model.prompt || model.prompt.trim() === '' || model.prompt === '<p></p>') {\n errors.prompt = 'Prompt is required';\n }\n\n return errors;\n};\n"],"mappings":";AAAA,IAAA,mBAAe;CACb,OAAO;EACL,QAAQ;EACR,eAAe;EACf,eAAe;CACjB;CACA,eAAe,EACb,QAAQ;EACN,OAAO;EACP,UAAU;CACZ,EACF;AACF;;;ACVA,IAAM,kBAAkB,YACtB,CAAC,WAAY,OAAO,YAAY,YAAY,OAAO,KAAK,OAAO,EAAE,WAAW;AAE9E,IAAa,kBAAkB,UAAe,YAAiB;CAC7D,IAAI,CAAC,SAAS,UACZ,OAAO;CAGT,MAAM,gBAAgB,UAAU,iBAAiB;CAIjD,KAHmB,QAAQ,YAAY,IAGxB,KAAK,EAAE,YAAY,MAAM,cAAc,KAAK,EAAE,YAAY,GACvE,OAAO;CAGT,OAAO;AACT;AAEA,IAAa,mBAAmB,WAAgB,YAAiB;CAC/D,IAAI,eAAe,OAAO,GACxB,OAAO;CAGT,OAAO;AACT;AAEA,IAAa,WAAW,UAAe,SAAc,QACnD,IAAI,SAAS,YAAY;CACvB,IAAI,eAAe,OAAO,GAAG;EAC3B,QAAQ;GAAE,OAAO;GAAG,OAAO;EAAK,CAAC;EACjC;CACF;CAEA,UAAU,iBAAiB,OAAO;CAElC,IAAI,IAAI,SAAS,YACf,QAAQ;EAAE,OAAO,KAAA;EAAW,WAAW,KAAA;CAAU,CAAC;MAIlD,QAAQ,EAAE,OAFU,eAAe,UAAU,OAC/B,MAAgB,YAAY,IAAI,EAC9B,CAAC;AAErB,CAAC;AAEH,IAAa,sBAAsB,QAAa,CAAC,OAAO;CAAE,GAAG,iBAAS;CAAO,GAAG;AAAM;AAEtF,IAAa,oBAAoB,OAAY,EAAE,GAAG,EAAE;AAEpD,IAAa,SAAS,UAAe,SAAc,QAAa;CAC9D,OAAO,IAAI,SAAS,YAAY;EAC9B,UAAU,WAAW,CAAC;EACtB,MAAM,qBAAqB,mBAAmB,QAAQ;EAEtD,MAAM,MAAW;GACf,QAAQ,mBAAmB,gBAAgB,mBAAmB,SAAS;GACvE,UAAU,IAAI,SAAS;GACvB,MAAM,IAAI,SAAS;GACnB;EACF;EAEA,IAAI,IAAI,SAAS,YAAY;GAE3B,IAAI,cADgB,eAAe,oBAAoB,OACrC;GAClB,IAAI,gBAAgB,mBAAmB;EACzC;EAEA,IAAI,IAAI,SAAS,iBAAiB,IAAI,SAAS,UAAU,IAAI,SAAS,aACpE,IAAI,sBAAsB,mBAAmB,6BACzC,mBAAmB,sBACnB;OAEJ,IAAI,sBAAsB;EAG5B,QAAQ,GAAG;CACb,CAAC;AACH;AAEA,IAAa,gCAAgC,UAAe,QAAa;CACvE,OAAO,IAAI,SAAS,YAAY;EAC9B,IAAI,IAAI,SAAS,cAAc,IAAI,SAAS,cAC1C,QAAQ;GAAE,IAAI;GAAK,UAAU,SAAS,iBAAiB;EAAG,CAAC;OAE3D,QAAQ,IAAI;CAEhB,CAAC;AACH;AAEA,IAAa,YAAY,QAAa,CAAC,GAAG,UAAe,CAAC,MAAM;CAC9D,MAAM,SAAc,CAAC;CAErB,IAAI,CAAC,MAAM,UAAU,MAAM,OAAO,KAAK,MAAM,MAAM,MAAM,WAAW,WAClE,OAAO,SAAS;CAGlB,OAAO;AACT"}
|
package/dist/delivery/index.d.ts
CHANGED
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
declare const SvelteElementClass: any;
|
|
2
2
|
declare class SimpleClozeElement extends SvelteElementClass {
|
|
3
3
|
_internalSession: any;
|
|
4
|
+
_model: any;
|
|
5
|
+
_isComplete: () => boolean;
|
|
6
|
+
_dispatchModelSet: () => void;
|
|
7
|
+
_dispatchSessionChanged: () => void;
|
|
8
|
+
set model(m: any);
|
|
9
|
+
get model(): any;
|
|
4
10
|
set session(s: any);
|
|
5
11
|
get session(): any;
|
|
6
12
|
onSessionChange: (updatedSession: any) => void;
|
|
7
13
|
connectedCallback(): void;
|
|
8
14
|
}
|
|
9
15
|
export default SimpleClozeElement;
|
|
10
|
-
//# sourceMappingURL=index.d.ts.map
|