@pie-element/multiple-choice 5.11.0-ps.10 → 6.0.0-strikethrough.1
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/CHANGELOG.md +39 -0
- package/configure/CHANGELOG.md +31 -0
- package/configure/lib/__tests__/root.test.js +271 -0
- package/configure/lib/defaults.js +17 -4
- package/configure/lib/defaults.js.map +1 -1
- package/configure/lib/index.js +9 -4
- package/configure/lib/index.js.map +1 -1
- package/configure/lib/main.js +68 -19
- package/configure/lib/main.js.map +1 -1
- package/configure/package.json +4 -4
- package/controller/CHANGELOG.md +13 -0
- package/controller/lib/__tests__/index.test.js +864 -0
- package/controller/lib/__tests__/utils.test.js +8 -0
- package/controller/lib/defaults.js +4 -2
- package/controller/lib/defaults.js.map +1 -1
- package/controller/lib/index.js +25 -7
- package/controller/lib/index.js.map +1 -1
- package/controller/lib/utils.js +9 -1
- package/controller/lib/utils.js.map +1 -1
- package/controller/package.json +1 -1
- package/docs/demo/generate.js +17 -14
- package/lib/__tests__/choice-input-test.js +124 -0
- package/lib/__tests__/index-test.js +22 -0
- package/lib/__tests__/multiple-choice-test.js +237 -0
- package/lib/__tests__/session-updater-test.js +72 -0
- package/lib/choice-input.js +79 -18
- package/lib/choice-input.js.map +1 -1
- package/lib/choice.js +149 -0
- package/lib/choice.js.map +1 -0
- package/lib/feedback-tick.js +1 -1
- package/lib/feedback-tick.js.map +1 -1
- package/lib/index.js +70 -3
- package/lib/index.js.map +1 -1
- package/lib/main.js +1 -1
- package/lib/main.js.map +1 -1
- package/lib/multiple-choice.js +84 -144
- package/lib/multiple-choice.js.map +1 -1
- package/lib/print.js +125 -0
- package/lib/print.js.map +1 -0
- package/module/configure.js +3 -3
- package/module/element.js +18 -13
- package/module/manifest.json +2 -2
- package/module/print.js +23 -15
- package/package.json +5 -5
package/module/element.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {_dll_prop_types, _dll_react_dom, _dll_react, _dll_material_ui__core_styles, _dll_pie_lib__render_ui, _dll_material_ui__core, _dll_classnames, _dll_pie_lib__correct_answer_toggle, _dll_lodash, _dll_debug} from "../../../@pie-lib/shared-module@^1.2.
|
|
2
|
-
import {_dll_pie_lib__math_rendering} from "../../../@pie-lib/math-rendering-module@^1.0.
|
|
1
|
+
import {_dll_prop_types, _dll_react_dom, _dll_react, _dll_material_ui__core_styles, _dll_pie_lib__render_ui, _dll_material_ui__core, _dll_classnames, _dll_pie_lib__correct_answer_toggle, _dll_lodash, _dll_debug} from "../../../@pie-lib/shared-module@^1.2.9/module/index.js";
|
|
2
|
+
import {_dll_pie_lib__math_rendering} from "../../../@pie-lib/math-rendering-module@^1.0.12/module/index.js";
|
|
3
3
|
function getDefaultExportFromCjs(x) {
|
|
4
4
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
5
5
|
}
|
|
@@ -1647,6 +1647,11 @@ class MultipleChoice$1 extends React$2.Component {
|
|
|
1647
1647
|
showCorrect: false
|
|
1648
1648
|
});
|
|
1649
1649
|
}
|
|
1650
|
+
if (nextProps.alwaysShowCorrect) {
|
|
1651
|
+
this.setState({
|
|
1652
|
+
showCorrect: true
|
|
1653
|
+
});
|
|
1654
|
+
}
|
|
1650
1655
|
}
|
|
1651
1656
|
isSelected(value) {
|
|
1652
1657
|
const sessionValue = this.props.session && this.props.session.value;
|
|
@@ -1693,13 +1698,13 @@ class MultipleChoice$1 extends React$2.Component {
|
|
|
1693
1698
|
__self: this,
|
|
1694
1699
|
__source: {
|
|
1695
1700
|
fileName: _jsxFileName$1,
|
|
1696
|
-
lineNumber:
|
|
1701
|
+
lineNumber: 146
|
|
1697
1702
|
}
|
|
1698
1703
|
}, teacherInstructions && React$2.createElement(React$2.Fragment, {
|
|
1699
1704
|
__self: this,
|
|
1700
1705
|
__source: {
|
|
1701
1706
|
fileName: _jsxFileName$1,
|
|
1702
|
-
lineNumber:
|
|
1707
|
+
lineNumber: 148
|
|
1703
1708
|
}
|
|
1704
1709
|
}, !animationsDisabled ? React$2.createElement(Collapsible, {
|
|
1705
1710
|
labels: {
|
|
@@ -1709,7 +1714,7 @@ class MultipleChoice$1 extends React$2.Component {
|
|
|
1709
1714
|
__self: this,
|
|
1710
1715
|
__source: {
|
|
1711
1716
|
fileName: _jsxFileName$1,
|
|
1712
|
-
lineNumber:
|
|
1717
|
+
lineNumber: 150
|
|
1713
1718
|
}
|
|
1714
1719
|
}, React$2.createElement(PreviewPrompt, {
|
|
1715
1720
|
tagName: "div",
|
|
@@ -1718,7 +1723,7 @@ class MultipleChoice$1 extends React$2.Component {
|
|
|
1718
1723
|
__self: this,
|
|
1719
1724
|
__source: {
|
|
1720
1725
|
fileName: _jsxFileName$1,
|
|
1721
|
-
lineNumber:
|
|
1726
|
+
lineNumber: 156
|
|
1722
1727
|
}
|
|
1723
1728
|
})) : React$2.createElement(PreviewPrompt, {
|
|
1724
1729
|
tagName: "div",
|
|
@@ -1728,13 +1733,13 @@ class MultipleChoice$1 extends React$2.Component {
|
|
|
1728
1733
|
__self: this,
|
|
1729
1734
|
__source: {
|
|
1730
1735
|
fileName: _jsxFileName$1,
|
|
1731
|
-
lineNumber:
|
|
1736
|
+
lineNumber: 162
|
|
1732
1737
|
}
|
|
1733
1738
|
}), React$2.createElement('br', {
|
|
1734
1739
|
__self: this,
|
|
1735
1740
|
__source: {
|
|
1736
1741
|
fileName: _jsxFileName$1,
|
|
1737
|
-
lineNumber:
|
|
1742
|
+
lineNumber: 168
|
|
1738
1743
|
}
|
|
1739
1744
|
})), !alwaysShowCorrect && React$2.createElement(CorrectAnswerToggle, {
|
|
1740
1745
|
show: showCorrectAnswerToggle,
|
|
@@ -1743,13 +1748,13 @@ class MultipleChoice$1 extends React$2.Component {
|
|
|
1743
1748
|
__self: this,
|
|
1744
1749
|
__source: {
|
|
1745
1750
|
fileName: _jsxFileName$1,
|
|
1746
|
-
lineNumber:
|
|
1751
|
+
lineNumber: 172
|
|
1747
1752
|
}
|
|
1748
1753
|
}), showCorrectAnswerToggle && React$2.createElement('br', {
|
|
1749
1754
|
__self: this,
|
|
1750
1755
|
__source: {
|
|
1751
1756
|
fileName: _jsxFileName$1,
|
|
1752
|
-
lineNumber:
|
|
1757
|
+
lineNumber: 178
|
|
1753
1758
|
}
|
|
1754
1759
|
}), React$2.createElement(PreviewPrompt, {
|
|
1755
1760
|
className: "prompt",
|
|
@@ -1758,7 +1763,7 @@ class MultipleChoice$1 extends React$2.Component {
|
|
|
1758
1763
|
__self: this,
|
|
1759
1764
|
__source: {
|
|
1760
1765
|
fileName: _jsxFileName$1,
|
|
1761
|
-
lineNumber:
|
|
1766
|
+
lineNumber: 179
|
|
1762
1767
|
}
|
|
1763
1768
|
}), React$2.createElement('div', {
|
|
1764
1769
|
className: classNames$1({
|
|
@@ -1770,7 +1775,7 @@ class MultipleChoice$1 extends React$2.Component {
|
|
|
1770
1775
|
__self: this,
|
|
1771
1776
|
__source: {
|
|
1772
1777
|
fileName: _jsxFileName$1,
|
|
1773
|
-
lineNumber:
|
|
1778
|
+
lineNumber: 180
|
|
1774
1779
|
}
|
|
1775
1780
|
}, choices.map((choice, index) => React$2.createElement(StyledChoice, {
|
|
1776
1781
|
choicesLayout: this.props.choicesLayout,
|
|
@@ -1791,7 +1796,7 @@ class MultipleChoice$1 extends React$2.Component {
|
|
|
1791
1796
|
__self: this,
|
|
1792
1797
|
__source: {
|
|
1793
1798
|
fileName: _jsxFileName$1,
|
|
1794
|
-
lineNumber:
|
|
1799
|
+
lineNumber: 191
|
|
1795
1800
|
}
|
|
1796
1801
|
}))));
|
|
1797
1802
|
}
|
package/module/manifest.json
CHANGED
package/module/print.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {_dll_prop_types, _dll_react_dom, _dll_react, _dll_material_ui__core_styles, _dll_pie_lib__render_ui, _dll_material_ui__core, _dll_classnames, _dll_pie_lib__correct_answer_toggle, _dll_lodash, _dll_debug} from "../../../@pie-lib/shared-module@^1.2.
|
|
2
|
-
import {_dll_pie_lib__math_rendering} from "../../../@pie-lib/math-rendering-module@^1.0.
|
|
1
|
+
import {_dll_prop_types, _dll_react_dom, _dll_react, _dll_material_ui__core_styles, _dll_pie_lib__render_ui, _dll_material_ui__core, _dll_classnames, _dll_pie_lib__correct_answer_toggle, _dll_lodash, _dll_debug} from "../../../@pie-lib/shared-module@^1.2.9/module/index.js";
|
|
2
|
+
import {_dll_pie_lib__math_rendering} from "../../../@pie-lib/math-rendering-module@^1.0.12/module/index.js";
|
|
3
3
|
function getDefaultExportFromCjs(x) {
|
|
4
4
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
5
5
|
}
|
|
@@ -1647,6 +1647,11 @@ class MultipleChoice extends React$2.Component {
|
|
|
1647
1647
|
showCorrect: false
|
|
1648
1648
|
});
|
|
1649
1649
|
}
|
|
1650
|
+
if (nextProps.alwaysShowCorrect) {
|
|
1651
|
+
this.setState({
|
|
1652
|
+
showCorrect: true
|
|
1653
|
+
});
|
|
1654
|
+
}
|
|
1650
1655
|
}
|
|
1651
1656
|
isSelected(value) {
|
|
1652
1657
|
const sessionValue = this.props.session && this.props.session.value;
|
|
@@ -1693,13 +1698,13 @@ class MultipleChoice extends React$2.Component {
|
|
|
1693
1698
|
__self: this,
|
|
1694
1699
|
__source: {
|
|
1695
1700
|
fileName: _jsxFileName$1,
|
|
1696
|
-
lineNumber:
|
|
1701
|
+
lineNumber: 146
|
|
1697
1702
|
}
|
|
1698
1703
|
}, teacherInstructions && React$2.createElement(React$2.Fragment, {
|
|
1699
1704
|
__self: this,
|
|
1700
1705
|
__source: {
|
|
1701
1706
|
fileName: _jsxFileName$1,
|
|
1702
|
-
lineNumber:
|
|
1707
|
+
lineNumber: 148
|
|
1703
1708
|
}
|
|
1704
1709
|
}, !animationsDisabled ? React$2.createElement(Collapsible, {
|
|
1705
1710
|
labels: {
|
|
@@ -1709,7 +1714,7 @@ class MultipleChoice extends React$2.Component {
|
|
|
1709
1714
|
__self: this,
|
|
1710
1715
|
__source: {
|
|
1711
1716
|
fileName: _jsxFileName$1,
|
|
1712
|
-
lineNumber:
|
|
1717
|
+
lineNumber: 150
|
|
1713
1718
|
}
|
|
1714
1719
|
}, React$2.createElement(PreviewPrompt, {
|
|
1715
1720
|
tagName: "div",
|
|
@@ -1718,7 +1723,7 @@ class MultipleChoice extends React$2.Component {
|
|
|
1718
1723
|
__self: this,
|
|
1719
1724
|
__source: {
|
|
1720
1725
|
fileName: _jsxFileName$1,
|
|
1721
|
-
lineNumber:
|
|
1726
|
+
lineNumber: 156
|
|
1722
1727
|
}
|
|
1723
1728
|
})) : React$2.createElement(PreviewPrompt, {
|
|
1724
1729
|
tagName: "div",
|
|
@@ -1728,13 +1733,13 @@ class MultipleChoice extends React$2.Component {
|
|
|
1728
1733
|
__self: this,
|
|
1729
1734
|
__source: {
|
|
1730
1735
|
fileName: _jsxFileName$1,
|
|
1731
|
-
lineNumber:
|
|
1736
|
+
lineNumber: 162
|
|
1732
1737
|
}
|
|
1733
1738
|
}), React$2.createElement('br', {
|
|
1734
1739
|
__self: this,
|
|
1735
1740
|
__source: {
|
|
1736
1741
|
fileName: _jsxFileName$1,
|
|
1737
|
-
lineNumber:
|
|
1742
|
+
lineNumber: 168
|
|
1738
1743
|
}
|
|
1739
1744
|
})), !alwaysShowCorrect && React$2.createElement(CorrectAnswerToggle, {
|
|
1740
1745
|
show: showCorrectAnswerToggle,
|
|
@@ -1743,13 +1748,13 @@ class MultipleChoice extends React$2.Component {
|
|
|
1743
1748
|
__self: this,
|
|
1744
1749
|
__source: {
|
|
1745
1750
|
fileName: _jsxFileName$1,
|
|
1746
|
-
lineNumber:
|
|
1751
|
+
lineNumber: 172
|
|
1747
1752
|
}
|
|
1748
1753
|
}), showCorrectAnswerToggle && React$2.createElement('br', {
|
|
1749
1754
|
__self: this,
|
|
1750
1755
|
__source: {
|
|
1751
1756
|
fileName: _jsxFileName$1,
|
|
1752
|
-
lineNumber:
|
|
1757
|
+
lineNumber: 178
|
|
1753
1758
|
}
|
|
1754
1759
|
}), React$2.createElement(PreviewPrompt, {
|
|
1755
1760
|
className: "prompt",
|
|
@@ -1758,7 +1763,7 @@ class MultipleChoice extends React$2.Component {
|
|
|
1758
1763
|
__self: this,
|
|
1759
1764
|
__source: {
|
|
1760
1765
|
fileName: _jsxFileName$1,
|
|
1761
|
-
lineNumber:
|
|
1766
|
+
lineNumber: 179
|
|
1762
1767
|
}
|
|
1763
1768
|
}), React$2.createElement('div', {
|
|
1764
1769
|
className: classNames$1({
|
|
@@ -1770,7 +1775,7 @@ class MultipleChoice extends React$2.Component {
|
|
|
1770
1775
|
__self: this,
|
|
1771
1776
|
__source: {
|
|
1772
1777
|
fileName: _jsxFileName$1,
|
|
1773
|
-
lineNumber:
|
|
1778
|
+
lineNumber: 180
|
|
1774
1779
|
}
|
|
1775
1780
|
}, choices.map((choice, index) => React$2.createElement(StyledChoice, {
|
|
1776
1781
|
choicesLayout: this.props.choicesLayout,
|
|
@@ -1791,7 +1796,7 @@ class MultipleChoice extends React$2.Component {
|
|
|
1791
1796
|
__self: this,
|
|
1792
1797
|
__source: {
|
|
1793
1798
|
fileName: _jsxFileName$1,
|
|
1794
|
-
lineNumber:
|
|
1799
|
+
lineNumber: 191
|
|
1795
1800
|
}
|
|
1796
1801
|
}))));
|
|
1797
1802
|
}
|
|
@@ -1890,20 +1895,23 @@ const Root = props => React$1.createElement(MuiThemeProvider, {
|
|
|
1890
1895
|
const React = _dll_react;
|
|
1891
1896
|
const ReactDOM = _dll_react_dom;
|
|
1892
1897
|
const {debounce: debounce} = _dll_lodash;
|
|
1898
|
+
const {cloneDeep: cloneDeep} = _dll_lodash;
|
|
1893
1899
|
const debug = _dll_debug;
|
|
1894
1900
|
const {renderMath: renderMath} = _dll_pie_lib__math_rendering;
|
|
1895
1901
|
const log = debug('pie-element:multiple-choice:print');
|
|
1896
1902
|
const preparePrintModel = (model, opts) => {
|
|
1897
|
-
const instr = opts.
|
|
1903
|
+
const instr = opts.role === 'instructor';
|
|
1898
1904
|
model.teacherInstructions = instr ? model.teacherInstructions : undefined;
|
|
1899
1905
|
model.showTeacherInstructions = instr;
|
|
1900
1906
|
model.alwaysShowCorrect = instr;
|
|
1901
1907
|
model.mode = instr ? 'evaluate' : model.mode;
|
|
1902
1908
|
model.disabled = true;
|
|
1903
1909
|
model.animationsDisabled = true;
|
|
1904
|
-
|
|
1910
|
+
const choices = cloneDeep(model.choices);
|
|
1911
|
+
model.choices = choices.map(c => {
|
|
1905
1912
|
c.rationale = instr ? c.rationale : undefined;
|
|
1906
1913
|
c.hideTick = instr;
|
|
1914
|
+
c.feedback = undefined;
|
|
1907
1915
|
return c;
|
|
1908
1916
|
});
|
|
1909
1917
|
return model;
|
package/package.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/multiple-choice",
|
|
3
3
|
"repository": "pie-framework/pie-elements",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "6.0.0-strikethrough.1",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"@material-ui/core": "^3.9.2",
|
|
10
|
-
"@pie-lib/config-ui": "^10.10.
|
|
11
|
-
"@pie-lib/correct-answer-toggle": "^2.3.
|
|
12
|
-
"@pie-lib/math-rendering": "^2.3.
|
|
13
|
-
"@pie-lib/render-ui": "^4.12.
|
|
10
|
+
"@pie-lib/config-ui": "^10.10.11",
|
|
11
|
+
"@pie-lib/correct-answer-toggle": "^2.3.31",
|
|
12
|
+
"@pie-lib/math-rendering": "^2.3.11",
|
|
13
|
+
"@pie-lib/render-ui": "^4.12.2",
|
|
14
14
|
"classnames": "^2.2.5",
|
|
15
15
|
"debug": "^4.1.1",
|
|
16
16
|
"enzyme-to-json": "^3.3.3",
|