@pie-element/fraction-model 6.1.1 → 6.1.2-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/card-bar.d.ts +20 -0
- package/dist/author/card-bar.js +40 -0
- package/dist/author/defaults.d.ts +113 -0
- package/dist/author/defaults.js +84 -0
- package/dist/author/index.d.ts +44 -0
- package/dist/author/index.js +88 -0
- package/dist/author/main.d.ts +25 -0
- package/dist/author/main.js +156 -0
- package/dist/author/model-options.d.ts +32 -0
- package/dist/author/model-options.js +85 -0
- package/dist/author/number-text-field.d.ts +15 -0
- package/dist/author/number-text-field.js +24 -0
- package/dist/browser/author/index.js +37287 -0
- package/dist/browser/author/index.js.map +1 -0
- package/dist/browser/controller/index.js +78 -0
- package/dist/browser/controller/index.js.map +1 -0
- package/dist/browser/delivery/index.js +2 -0
- package/dist/browser/delivery-BSG67wbh.js +28213 -0
- package/dist/browser/delivery-BSG67wbh.js.map +1 -0
- package/dist/browser/fraction-model.css +2 -0
- package/dist/browser/isEmpty-Cj-5W3cl.js +16 -0
- package/dist/browser/isEmpty-Cj-5W3cl.js.map +1 -0
- package/dist/browser/isTypedArray-yL07_GBh.js +171 -0
- package/dist/browser/isTypedArray-yL07_GBh.js.map +1 -0
- package/dist/controller/defaults.d.ts +21 -0
- package/dist/controller/defaults.js +13 -0
- package/dist/controller/index.d.ts +23 -0
- package/dist/controller/index.js +68 -0
- package/dist/delivery/answer-fraction.d.ts +27 -0
- package/dist/delivery/answer-fraction.js +69 -0
- package/dist/delivery/fraction-model-chart.d.ts +11 -0
- package/dist/delivery/fraction-model-chart.js +154 -0
- package/dist/delivery/index.d.ts +22 -0
- package/dist/delivery/index.js +54 -0
- package/dist/delivery/main.d.ts +38 -0
- package/dist/delivery/main.js +136 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.iife.d.ts +8 -0
- package/dist/index.iife.js +179 -0
- package/dist/index.js +2 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_DataView.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Hash.js +16 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_ListCache.js +16 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Map.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_MapCache.js +16 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Promise.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Set.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Stack.js +14 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Symbol.js +5 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Uint8Array.js +5 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_WeakMap.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayEach.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayFilter.js +10 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayLikeKeys.js +15 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayPush.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_assignValue.js +10 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_assocIndexOf.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssign.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssignIn.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssignValue.js +12 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseClone.js +57 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseCreate.js +14 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseGetAllKeys.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseGetTag.js +10 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsArguments.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsMap.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsNative.js +11 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsSet.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsTypedArray.js +11 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseKeys.js +12 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseKeysIn.js +13 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseTimes.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseUnary.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneArrayBuffer.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneBuffer.js +10 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneDataView.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneRegExp.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneSymbol.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneTypedArray.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copyArray.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copyObject.js +14 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copySymbols.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copySymbolsIn.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_coreJsData.js +5 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_defineProperty.js +10 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_freeGlobal.js +4 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getAllKeys.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getAllKeysIn.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getMapData.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getNative.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getPrototype.js +5 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getRawTag.js +14 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getSymbols.js +10 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getSymbolsIn.js +11 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getTag.js +23 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getValue.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashClear.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashDelete.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashGet.js +13 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashHas.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashSet.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneArray.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneByTag.js +33 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneObject.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isIndex.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isKeyable.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isMasked.js +11 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isPrototype.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheClear.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheDelete.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheGet.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheHas.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheSet.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheClear.js +13 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheDelete.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheGet.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheHas.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheSet.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeCreate.js +5 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeKeys.js +5 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeKeysIn.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nodeUtil.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_objectToString.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_overArg.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_root.js +5 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackClear.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackDelete.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackGet.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackHas.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackSet.js +16 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_toSource.js +15 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/cloneDeep.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/eq.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArguments.js +10 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArray.js +4 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArrayLike.js +8 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isBuffer.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isEmpty.js +21 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isFunction.js +11 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isLength.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isMap.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isObject.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isObjectLike.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isSet.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isTypedArray.js +7 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/keys.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/keysIn.js +9 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/stubArray.js +6 -0
- package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/stubFalse.js +6 -0
- package/package.json +77 -17
- package/CHANGELOG.json +0 -1
- package/CHANGELOG.md +0 -588
- package/LICENSE.md +0 -5
- package/README.md +0 -18
- package/configure/CHANGELOG.json +0 -1
- package/configure/CHANGELOG.md +0 -553
- package/configure/lib/card-bar.js +0 -57
- package/configure/lib/card-bar.js.map +0 -1
- package/configure/lib/defaults.js +0 -114
- package/configure/lib/defaults.js.map +0 -1
- package/configure/lib/index.js +0 -163
- package/configure/lib/index.js.map +0 -1
- package/configure/lib/main.js +0 -253
- package/configure/lib/main.js.map +0 -1
- package/configure/lib/model-options.js +0 -144
- package/configure/lib/model-options.js.map +0 -1
- package/configure/lib/number-text-field.js +0 -47
- package/configure/lib/number-text-field.js.map +0 -1
- package/configure/package.json +0 -24
- package/controller/CHANGELOG.json +0 -1
- package/controller/CHANGELOG.md +0 -480
- package/controller/lib/defaults.js +0 -20
- package/controller/lib/defaults.js.map +0 -1
- package/controller/lib/index.js +0 -215
- package/controller/lib/index.js.map +0 -1
- package/controller/package.json +0 -15
- package/docs/config-schema.json +0 -1796
- package/docs/config-schema.json.md +0 -1318
- package/docs/demo/config.js +0 -8
- package/docs/demo/generate.js +0 -6
- package/docs/demo/index.html +0 -1
- package/docs/demo/session.js +0 -6
- package/docs/pie-schema.json +0 -873
- package/docs/pie-schema.json.md +0 -639
- package/lib/answer-fraction.js +0 -109
- package/lib/answer-fraction.js.map +0 -1
- package/lib/fraction-model-chart.js +0 -279
- package/lib/fraction-model-chart.js.map +0 -1
- package/lib/index.js +0 -91
- package/lib/index.js.map +0 -1
- package/lib/main.js +0 -203
- package/lib/main.js.map +0 -1
package/lib/main.js
DELETED
|
@@ -1,203 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.default = exports.Main = void 0;
|
|
8
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
-
var _react = _interopRequireDefault(require("react"));
|
|
10
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
var _styles = require("@mui/material/styles");
|
|
12
|
-
var _answerFraction = _interopRequireDefault(require("./answer-fraction"));
|
|
13
|
-
var _correctAnswerToggle = _interopRequireDefault(require("@pie-lib/correct-answer-toggle"));
|
|
14
|
-
var _fractionModelChart = _interopRequireDefault(require("./fraction-model-chart"));
|
|
15
|
-
var _configUi = require("@pie-lib/config-ui");
|
|
16
|
-
var _renderUi = require("@pie-lib/render-ui");
|
|
17
|
-
var _lodashEs = require("lodash-es");
|
|
18
|
-
const ModelPreview = (0, _styles.styled)('div')({
|
|
19
|
-
padding: '16px'
|
|
20
|
-
});
|
|
21
|
-
const TitleContainer = (0, _styles.styled)('div')({
|
|
22
|
-
textAlign: 'center',
|
|
23
|
-
fontSize: '20px'
|
|
24
|
-
});
|
|
25
|
-
class Main extends _react.default.Component {
|
|
26
|
-
constructor(props) {
|
|
27
|
-
super(props);
|
|
28
|
-
/**
|
|
29
|
-
* Function to trigger when session value change for fraction model
|
|
30
|
-
*/
|
|
31
|
-
(0, _defineProperty2.default)(this, "callOnSessionChange", () => {
|
|
32
|
-
const {
|
|
33
|
-
onSessionChange
|
|
34
|
-
} = this.props;
|
|
35
|
-
if (onSessionChange) {
|
|
36
|
-
onSessionChange(this.state.session);
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
/**
|
|
40
|
-
* Function to generate answers for preview selection
|
|
41
|
-
* @param {object} model contains model object for fraction model
|
|
42
|
-
* @returns answer model
|
|
43
|
-
*/
|
|
44
|
-
(0, _defineProperty2.default)(this, "generateAnswers", model => {
|
|
45
|
-
const answers = {
|
|
46
|
-
response: []
|
|
47
|
-
};
|
|
48
|
-
if (model.allowedStudentConfig) {
|
|
49
|
-
answers.noOfModel = '', answers.partsPerModel = '';
|
|
50
|
-
}
|
|
51
|
-
return answers;
|
|
52
|
-
});
|
|
53
|
-
/**
|
|
54
|
-
* Function to trigger when answer change from preview
|
|
55
|
-
* @param {object} newAnswers contains updated answer model
|
|
56
|
-
*/
|
|
57
|
-
(0, _defineProperty2.default)(this, "onAnswerChange", newAnswers => {
|
|
58
|
-
let oldSession = (0, _lodashEs.cloneDeep)(this.state.session);
|
|
59
|
-
let newSession = {
|
|
60
|
-
...this.state.session,
|
|
61
|
-
answers: newAnswers
|
|
62
|
-
};
|
|
63
|
-
if (newAnswers.response.length > 0) {
|
|
64
|
-
this.setState({
|
|
65
|
-
answerChangeDialog: {
|
|
66
|
-
open: true,
|
|
67
|
-
oldSession: oldSession,
|
|
68
|
-
newSession: newSession,
|
|
69
|
-
text: 'Changing either the Number of Models or Parts per Model will remove added answer. Are you sure you want to continue?'
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
} else {
|
|
73
|
-
this.setState(state => ({
|
|
74
|
-
session: newSession
|
|
75
|
-
}), this.callOnSessionChange);
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
/*
|
|
79
|
-
* Function to toggle correct answer
|
|
80
|
-
* @param {boolean} show contains boolean value to show correct answer
|
|
81
|
-
* */
|
|
82
|
-
(0, _defineProperty2.default)(this, "toggleShowCorrect", show => {
|
|
83
|
-
this.setState({
|
|
84
|
-
showCorrect: show
|
|
85
|
-
});
|
|
86
|
-
});
|
|
87
|
-
/*
|
|
88
|
-
* Function to trigger when response change from preview
|
|
89
|
-
* @param {object} response contains updated response model
|
|
90
|
-
* */
|
|
91
|
-
(0, _defineProperty2.default)(this, "onResponseChange", response => {
|
|
92
|
-
this.setState(state => ({
|
|
93
|
-
session: {
|
|
94
|
-
...state.session,
|
|
95
|
-
answers: {
|
|
96
|
-
...state.session.answers,
|
|
97
|
-
response
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}), this.callOnSessionChange);
|
|
101
|
-
});
|
|
102
|
-
/*
|
|
103
|
-
* Method to generate random key
|
|
104
|
-
* */
|
|
105
|
-
(0, _defineProperty2.default)(this, "generateRandomKey", () => {
|
|
106
|
-
return Math.floor(Math.random() * 10000);
|
|
107
|
-
});
|
|
108
|
-
this.state = {
|
|
109
|
-
session: {
|
|
110
|
-
...props.session,
|
|
111
|
-
answers: props.session && props.session.answers || this.generateAnswers(props.model)
|
|
112
|
-
},
|
|
113
|
-
showCorrect: false,
|
|
114
|
-
answerChangeDialog: {
|
|
115
|
-
open: false,
|
|
116
|
-
text: ''
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
|
-
this.callOnSessionChange();
|
|
120
|
-
}
|
|
121
|
-
render() {
|
|
122
|
-
const {
|
|
123
|
-
model
|
|
124
|
-
} = this.props;
|
|
125
|
-
const {
|
|
126
|
-
showCorrect,
|
|
127
|
-
session,
|
|
128
|
-
answerChangeDialog
|
|
129
|
-
} = this.state;
|
|
130
|
-
const {
|
|
131
|
-
prompt,
|
|
132
|
-
title,
|
|
133
|
-
correctness = {},
|
|
134
|
-
extraCSSRules,
|
|
135
|
-
language
|
|
136
|
-
} = model;
|
|
137
|
-
const showCorrectAnswerToggle = correctness.correctness && correctness.correctness !== 'correct';
|
|
138
|
-
const fractionModelChartKey = this.generateRandomKey();
|
|
139
|
-
return /*#__PURE__*/_react.default.createElement(_renderUi.UiLayout, {
|
|
140
|
-
extraCSSRules: extraCSSRules
|
|
141
|
-
}, /*#__PURE__*/_react.default.createElement(ModelPreview, null, /*#__PURE__*/_react.default.createElement(TitleContainer, null, /*#__PURE__*/_react.default.createElement(_renderUi.PreviewPrompt, {
|
|
142
|
-
className: "prompt",
|
|
143
|
-
prompt: title,
|
|
144
|
-
tagName: "h3"
|
|
145
|
-
})), /*#__PURE__*/_react.default.createElement(_renderUi.PreviewPrompt, {
|
|
146
|
-
className: "prompt",
|
|
147
|
-
prompt: prompt,
|
|
148
|
-
tagName: "p"
|
|
149
|
-
}), /*#__PURE__*/_react.default.createElement(_correctAnswerToggle.default, {
|
|
150
|
-
language: language,
|
|
151
|
-
show: showCorrectAnswerToggle,
|
|
152
|
-
toggled: showCorrect,
|
|
153
|
-
onToggle: this.toggleShowCorrect
|
|
154
|
-
}), /*#__PURE__*/_react.default.createElement(_answerFraction.default, {
|
|
155
|
-
model: model,
|
|
156
|
-
showCorrect: showCorrect,
|
|
157
|
-
disabled: model.view,
|
|
158
|
-
onAnswerChange: this.onAnswerChange,
|
|
159
|
-
answers: session.answers
|
|
160
|
-
}), /*#__PURE__*/_react.default.createElement(_fractionModelChart.default, {
|
|
161
|
-
key: fractionModelChartKey,
|
|
162
|
-
disabled: model.view,
|
|
163
|
-
value: showCorrect ? model.correctResponse : session.answers.response,
|
|
164
|
-
modelType: model.modelTypeSelected,
|
|
165
|
-
noOfModels: showCorrect ? model.maxModelSelected : model.allowedStudentConfig ? session.answers.noOfModel : model.maxModelSelected,
|
|
166
|
-
partsPerModel: showCorrect ? model.partsPerModel : model.allowedStudentConfig ? session.answers.partsPerModel : model.partsPerModel,
|
|
167
|
-
showLabel: model.showGraphLabels,
|
|
168
|
-
onChange: this.onResponseChange
|
|
169
|
-
}), /*#__PURE__*/_react.default.createElement(_configUi.AlertDialog, {
|
|
170
|
-
open: answerChangeDialog.open,
|
|
171
|
-
title: "Warning",
|
|
172
|
-
text: answerChangeDialog.text,
|
|
173
|
-
onConfirm: () => {
|
|
174
|
-
let newSession = this.state.answerChangeDialog.newSession;
|
|
175
|
-
newSession.answers.response = [];
|
|
176
|
-
this.setState(() => ({
|
|
177
|
-
session: newSession,
|
|
178
|
-
answerChangeDialog: {
|
|
179
|
-
open: false
|
|
180
|
-
}
|
|
181
|
-
}), this.callOnSessionChange);
|
|
182
|
-
},
|
|
183
|
-
onClose: () => {
|
|
184
|
-
this.setState(prevState => ({
|
|
185
|
-
session: prevState.answerChangeDialog.oldSession,
|
|
186
|
-
answerChangeDialog: {
|
|
187
|
-
open: false
|
|
188
|
-
}
|
|
189
|
-
}), this.callOnSessionChange);
|
|
190
|
-
},
|
|
191
|
-
onConfirmText: 'OK',
|
|
192
|
-
onCloseText: 'Cancel'
|
|
193
|
-
})));
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
exports.Main = Main;
|
|
197
|
-
(0, _defineProperty2.default)(Main, "propTypes", {
|
|
198
|
-
model: _propTypes.default.object,
|
|
199
|
-
session: _propTypes.default.object,
|
|
200
|
-
onSessionChange: _propTypes.default.func.isRequired
|
|
201
|
-
});
|
|
202
|
-
var _default = exports.default = Main;
|
|
203
|
-
//# sourceMappingURL=main.js.map
|
package/lib/main.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_answerFraction","_correctAnswerToggle","_fractionModelChart","_configUi","_renderUi","_lodashEs","ModelPreview","styled","padding","TitleContainer","textAlign","fontSize","Main","React","Component","constructor","props","_defineProperty2","default","onSessionChange","state","session","model","answers","response","allowedStudentConfig","noOfModel","partsPerModel","newAnswers","oldSession","cloneDeep","newSession","length","setState","answerChangeDialog","open","text","callOnSessionChange","show","showCorrect","Math","floor","random","generateAnswers","render","prompt","title","correctness","extraCSSRules","language","showCorrectAnswerToggle","fractionModelChartKey","generateRandomKey","createElement","UiLayout","PreviewPrompt","className","tagName","toggled","onToggle","toggleShowCorrect","disabled","view","onAnswerChange","key","value","correctResponse","modelType","modelTypeSelected","noOfModels","maxModelSelected","showLabel","showGraphLabels","onChange","onResponseChange","AlertDialog","onConfirm","onClose","prevState","onConfirmText","onCloseText","exports","PropTypes","object","func","isRequired","_default"],"sources":["../src/main.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport AnswerFraction from './answer-fraction';\nimport CorrectAnswerToggle from '@pie-lib/correct-answer-toggle';\nimport FractionModelChart from './fraction-model-chart';\nimport { AlertDialog } from '@pie-lib/config-ui';\nimport { PreviewPrompt, UiLayout } from '@pie-lib/render-ui';\nimport { cloneDeep } from 'lodash-es';\n\nconst ModelPreview = styled('div')({\n padding: '16px',\n});\n\nconst TitleContainer = styled('div')({\n textAlign: 'center',\n fontSize: '20px',\n});\n\nexport class Main extends React.Component {\n static propTypes = {\n model: PropTypes.object,\n session: PropTypes.object,\n onSessionChange: PropTypes.func.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n session: {\n ...props.session,\n answers: (props.session && props.session.answers) || this.generateAnswers(props.model),\n },\n showCorrect: false,\n answerChangeDialog: {\n open: false,\n text: '',\n },\n };\n this.callOnSessionChange();\n }\n\n /**\n * Function to trigger when session value change for fraction model\n */\n callOnSessionChange = () => {\n const { onSessionChange } = this.props;\n if (onSessionChange) {\n onSessionChange(this.state.session);\n }\n };\n\n /**\n * Function to generate answers for preview selection\n * @param {object} model contains model object for fraction model\n * @returns answer model\n */\n generateAnswers = (model) => {\n const answers = {\n response: [],\n };\n if (model.allowedStudentConfig) {\n (answers.noOfModel = ''), (answers.partsPerModel = '');\n }\n return answers;\n };\n\n /**\n * Function to trigger when answer change from preview\n * @param {object} newAnswers contains updated answer model\n */\n onAnswerChange = (newAnswers) => {\n let oldSession = cloneDeep(this.state.session);\n let newSession = {\n ...this.state.session,\n answers: newAnswers,\n };\n if (newAnswers.response.length > 0) {\n this.setState({\n answerChangeDialog: {\n open: true,\n oldSession: oldSession,\n newSession: newSession,\n text: 'Changing either the Number of Models or Parts per Model will remove added answer. Are you sure you want to continue?',\n },\n });\n } else {\n this.setState(\n (state) => ({\n session: newSession,\n }),\n this.callOnSessionChange,\n );\n }\n };\n\n /*\n * Function to toggle correct answer\n * @param {boolean} show contains boolean value to show correct answer\n * */\n toggleShowCorrect = (show) => {\n this.setState({ showCorrect: show });\n };\n\n /*\n * Function to trigger when response change from preview\n * @param {object} response contains updated response model\n * */\n onResponseChange = (response) => {\n this.setState(\n (state) => ({\n session: {\n ...state.session,\n answers: {\n ...state.session.answers,\n response,\n },\n },\n }),\n this.callOnSessionChange,\n );\n };\n\n /*\n * Method to generate random key\n * */\n generateRandomKey = () => {\n return Math.floor(Math.random() * 10000);\n };\n\n render() {\n const { model } = this.props;\n const { showCorrect, session, answerChangeDialog } = this.state;\n const { prompt, title, correctness = {}, extraCSSRules, language } = model;\n const showCorrectAnswerToggle = correctness.correctness && correctness.correctness !== 'correct';\n const fractionModelChartKey = this.generateRandomKey();\n\n return (\n <UiLayout extraCSSRules={extraCSSRules}>\n <ModelPreview>\n <TitleContainer>\n <PreviewPrompt className=\"prompt\" prompt={title} tagName=\"h3\" />\n </TitleContainer>\n <PreviewPrompt className=\"prompt\" prompt={prompt} tagName=\"p\" />\n\n <CorrectAnswerToggle\n language={language}\n show={showCorrectAnswerToggle}\n toggled={showCorrect}\n onToggle={this.toggleShowCorrect}\n />\n\n <AnswerFraction\n model={model}\n showCorrect={showCorrect}\n disabled={model.view}\n onAnswerChange={this.onAnswerChange}\n answers={session.answers}\n />\n\n <FractionModelChart\n key={fractionModelChartKey}\n disabled={model.view}\n value={showCorrect ? model.correctResponse : session.answers.response}\n modelType={model.modelTypeSelected}\n noOfModels={\n showCorrect\n ? model.maxModelSelected\n : model.allowedStudentConfig\n ? session.answers.noOfModel\n : model.maxModelSelected\n }\n partsPerModel={\n showCorrect\n ? model.partsPerModel\n : model.allowedStudentConfig\n ? session.answers.partsPerModel\n : model.partsPerModel\n }\n showLabel={model.showGraphLabels}\n onChange={this.onResponseChange}\n ></FractionModelChart>\n\n <AlertDialog\n open={answerChangeDialog.open}\n title=\"Warning\"\n text={answerChangeDialog.text}\n onConfirm={() => {\n let newSession = this.state.answerChangeDialog.newSession;\n newSession.answers.response = [];\n this.setState(\n () => ({\n session: newSession,\n answerChangeDialog: { open: false },\n }),\n this.callOnSessionChange,\n );\n }}\n onClose={() => {\n this.setState(\n (prevState) => ({\n session: prevState.answerChangeDialog.oldSession,\n answerChangeDialog: { open: false },\n }),\n this.callOnSessionChange,\n );\n }}\n onConfirmText={'OK'}\n onCloseText={'Cancel'}\n />\n </ModelPreview>\n </UiLayout>\n );\n }\n}\n\nexport default Main;\n"],"mappings":"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","ignoreList":[]}
|