@pie-element/number-line 6.1.9 → 6.1.10
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 +8 -0
- package/configure/CHANGELOG.md +8 -0
- package/configure/lib/defaults.js.map +1 -1
- package/configure/lib/index.js +15 -1
- package/configure/lib/index.js.map +1 -1
- package/configure/lib/main.js +8 -4
- package/configure/lib/main.js.map +1 -1
- package/configure/package.json +4 -4
- package/docs/config-schema.json +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [6.1.10](https://github.com/pie-framework/pie-elements/compare/@pie-element/number-line@6.1.9...@pie-element/number-line@6.1.10) (2022-09-29)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-element/number-line
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [6.1.9](https://github.com/pie-framework/pie-elements/compare/@pie-element/number-line@6.1.8...@pie-element/number-line@6.1.9) (2022-09-14)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @pie-element/number-line
|
package/configure/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [5.1.10](https://github.com/pie-framework/pie-elements/compare/@pie-element/number-line-configure@5.1.9...@pie-element/number-line-configure@5.1.10) (2022-09-29)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-element/number-line-configure
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [5.1.9](https://github.com/pie-framework/pie-elements/compare/@pie-element/number-line-configure@5.1.8...@pie-element/number-line-configure@5.1.9) (2022-09-14)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @pie-element/number-line-configure
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/defaults.js"],"names":["model","correctResponse","graph","domain","min","max","ticks","minor","major","arrows","left","right","maxNumberOfPoints","width","initialType","exhibitOnly","toolbarEditorPosition","availableTypes","PF","LFF","LEF","LFE","LEE","RFN","RFP","REN","REP","initialElements","feedback","correct","type","incorrect","partial","configuration","prompt","settings","label","spellCheck","enabled"],"mappings":";;;;;;AAAO,IAAMA,KAAK,GAAG;AACnBC,EAAAA,eAAe,EAAE,EADE;AAEnBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,MAAM,EAAE;AAAEC,MAAAA,GAAG,EAAE,CAAC,CAAR;AAAWC,MAAAA,GAAG,EAAE;AAAhB,KADH;AAELC,IAAAA,KAAK,EAAE;AACLC,MAAAA,KAAK,EAAE,CADF;AAELC,MAAAA,KAAK,EAAE;AAFF,KAFF;AAMLC,IAAAA,MAAM,EAAE;AACNC,MAAAA,IAAI,EAAE,IADA;AAENC,MAAAA,KAAK,EAAE;AAFD,KANH;AAULC,IAAAA,iBAAiB,EAAE,EAVd;AAWLC,IAAAA,KAAK,EAAE,GAXF;AAYLC,IAAAA,WAAW,EAAE,IAZR;AAaLC,IAAAA,WAAW,EAAE,KAbR;AAcLC,IAAAA,qBAAqB,EAAE,QAdlB;AAeLC,IAAAA,cAAc,EAAE;AACdC,MAAAA,EAAE,EAAE,IADU;AAEdC,MAAAA,GAAG,EAAE,IAFS;AAGdC,MAAAA,GAAG,EAAE,IAHS;AAIdC,MAAAA,GAAG,EAAE,IAJS;AAKdC,MAAAA,GAAG,EAAE,IALS;AAMdC,MAAAA,GAAG,EAAE,IANS;AAOdC,MAAAA,GAAG,EAAE,IAPS;AAQdC,MAAAA,GAAG,EAAE,IARS;AASdC,MAAAA,GAAG,EAAE;AATS,KAfX;AA0BLC,IAAAA,eAAe,EAAE;AA1BZ,GAFY;AA8BnBC,EAAAA,QAAQ,EAAE;AACRC,IAAAA,OAAO,EAAE;AACP,iBAAS,SADF;AAEPC,MAAAA,IAAI,EAAE;AAFC,KADD;AAKRC,IAAAA,SAAS,EAAE;AACT,iBAAS,WADA;AAETD,MAAAA,IAAI,EAAE;AAFG,KALH;AASRE,IAAAA,OAAO,EAAE;AACP,iBAAS,QADF;AAEPF,MAAAA,IAAI,EAAE;AAFC;AATD;AA9BS,CAAd;;AA8CA,IAAMG,aAAa,GAAG;AAC3BC,EAAAA,MAAM,EAAE;AACNC,IAAAA,QAAQ,EAAE,IADJ;AAENC,IAAAA,KAAK,EAAE;AAFD,GADmB;AAK3BC,EAAAA,UAAU,EAAE;AACVD,IAAAA,KAAK,EAAE,YADG;AAEVD,IAAAA,QAAQ,EAAC,KAFC;AAGVG,IAAAA,OAAO,EAAC;AAHE;AALe,CAAtB","sourcesContent":["export const model = {\n correctResponse: [],\n graph: {\n domain: { min: -5, max: 5 },\n ticks: {\n minor: 1,\n major: 2\n },\n arrows: {\n left: true,\n right: true\n },\n maxNumberOfPoints: 20,\n width: 500,\n initialType: 'PF',\n exhibitOnly: false,\n toolbarEditorPosition: 'bottom',\n availableTypes: {\n PF: true,\n LFF: true,\n LEF: true,\n LFE: true,\n LEE: true,\n RFN: true,\n RFP: true,\n REN: true,\n REP: true\n },\n initialElements: []\n },\n feedback: {\n correct: {\n default: 'Correct',\n type: 'none'\n },\n incorrect: {\n default: 'Incorrect',\n type: 'none'\n },\n partial: {\n default: 'Nearly',\n type: 'none'\n }\n },\n};\n\nexport const configuration = {\n prompt: {\n settings: true,\n label: 'Prompt'\n },\n spellCheck: {\n label: 'Spellcheck',\n settings:false,\n enabled:true\n }
|
|
1
|
+
{"version":3,"sources":["../src/defaults.js"],"names":["model","correctResponse","graph","domain","min","max","ticks","minor","major","arrows","left","right","maxNumberOfPoints","width","initialType","exhibitOnly","toolbarEditorPosition","availableTypes","PF","LFF","LEF","LFE","LEE","RFN","RFP","REN","REP","initialElements","feedback","correct","type","incorrect","partial","configuration","prompt","settings","label","spellCheck","enabled"],"mappings":";;;;;;AAAO,IAAMA,KAAK,GAAG;AACnBC,EAAAA,eAAe,EAAE,EADE;AAEnBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,MAAM,EAAE;AAAEC,MAAAA,GAAG,EAAE,CAAC,CAAR;AAAWC,MAAAA,GAAG,EAAE;AAAhB,KADH;AAELC,IAAAA,KAAK,EAAE;AACLC,MAAAA,KAAK,EAAE,CADF;AAELC,MAAAA,KAAK,EAAE;AAFF,KAFF;AAMLC,IAAAA,MAAM,EAAE;AACNC,MAAAA,IAAI,EAAE,IADA;AAENC,MAAAA,KAAK,EAAE;AAFD,KANH;AAULC,IAAAA,iBAAiB,EAAE,EAVd;AAWLC,IAAAA,KAAK,EAAE,GAXF;AAYLC,IAAAA,WAAW,EAAE,IAZR;AAaLC,IAAAA,WAAW,EAAE,KAbR;AAcLC,IAAAA,qBAAqB,EAAE,QAdlB;AAeLC,IAAAA,cAAc,EAAE;AACdC,MAAAA,EAAE,EAAE,IADU;AAEdC,MAAAA,GAAG,EAAE,IAFS;AAGdC,MAAAA,GAAG,EAAE,IAHS;AAIdC,MAAAA,GAAG,EAAE,IAJS;AAKdC,MAAAA,GAAG,EAAE,IALS;AAMdC,MAAAA,GAAG,EAAE,IANS;AAOdC,MAAAA,GAAG,EAAE,IAPS;AAQdC,MAAAA,GAAG,EAAE,IARS;AASdC,MAAAA,GAAG,EAAE;AATS,KAfX;AA0BLC,IAAAA,eAAe,EAAE;AA1BZ,GAFY;AA8BnBC,EAAAA,QAAQ,EAAE;AACRC,IAAAA,OAAO,EAAE;AACP,iBAAS,SADF;AAEPC,MAAAA,IAAI,EAAE;AAFC,KADD;AAKRC,IAAAA,SAAS,EAAE;AACT,iBAAS,WADA;AAETD,MAAAA,IAAI,EAAE;AAFG,KALH;AASRE,IAAAA,OAAO,EAAE;AACP,iBAAS,QADF;AAEPF,MAAAA,IAAI,EAAE;AAFC;AATD;AA9BS,CAAd;;AA8CA,IAAMG,aAAa,GAAG;AAC3BC,EAAAA,MAAM,EAAE;AACNC,IAAAA,QAAQ,EAAE,IADJ;AAENC,IAAAA,KAAK,EAAE;AAFD,GADmB;AAK3BC,EAAAA,UAAU,EAAE;AACVD,IAAAA,KAAK,EAAE,YADG;AAEVD,IAAAA,QAAQ,EAAC,KAFC;AAGVG,IAAAA,OAAO,EAAC;AAHE;AALe,CAAtB","sourcesContent":["export const model = {\n correctResponse: [],\n graph: {\n domain: { min: -5, max: 5 },\n ticks: {\n minor: 1,\n major: 2\n },\n arrows: {\n left: true,\n right: true\n },\n maxNumberOfPoints: 20,\n width: 500,\n initialType: 'PF',\n exhibitOnly: false,\n toolbarEditorPosition: 'bottom',\n availableTypes: {\n PF: true,\n LFF: true,\n LEF: true,\n LFE: true,\n LEE: true,\n RFN: true,\n RFP: true,\n REN: true,\n REP: true\n },\n initialElements: []\n },\n feedback: {\n correct: {\n default: 'Correct',\n type: 'none'\n },\n incorrect: {\n default: 'Incorrect',\n type: 'none'\n },\n partial: {\n default: 'Nearly',\n type: 'none'\n }\n },\n};\n\nexport const configuration = {\n prompt: {\n settings: true,\n label: 'Prompt'\n },\n spellCheck: {\n label: 'Spellcheck',\n settings:false,\n enabled:true\n }\n};\n"],"file":"defaults.js"}
|
package/configure/lib/index.js
CHANGED
|
@@ -108,13 +108,27 @@ var NumberLine = /*#__PURE__*/function (_HTMLElement) {
|
|
|
108
108
|
|
|
109
109
|
this._rerender();
|
|
110
110
|
}
|
|
111
|
+
}, {
|
|
112
|
+
key: "insertSound",
|
|
113
|
+
value: function insertSound(handler) {
|
|
114
|
+
this.dispatchEvent(new _pieConfigureEvents.InsertSoundEvent(handler));
|
|
115
|
+
}
|
|
116
|
+
}, {
|
|
117
|
+
key: "onDeleteSound",
|
|
118
|
+
value: function onDeleteSound(src, done) {
|
|
119
|
+
this.dispatchEvent(new _pieConfigureEvents.DeleteSoundEvent(src, done));
|
|
120
|
+
}
|
|
111
121
|
}, {
|
|
112
122
|
key: "_rerender",
|
|
113
123
|
value: function _rerender() {
|
|
114
124
|
var element = /*#__PURE__*/_react["default"].createElement(_main["default"], {
|
|
115
125
|
model: this._model,
|
|
116
126
|
configuration: this._configuration,
|
|
117
|
-
onChange: this.onChange
|
|
127
|
+
onChange: this.onChange,
|
|
128
|
+
uploadSoundSupport: {
|
|
129
|
+
add: this.insertSound.bind(this),
|
|
130
|
+
"delete": this.onDeleteSound.bind(this)
|
|
131
|
+
}
|
|
118
132
|
});
|
|
119
133
|
|
|
120
134
|
_reactDom["default"].render(element, this);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.js"],"names":["updateTicks","model","graph","domain","labelStep","ticks","minor","major","min","Number","toFixed","max","match","fraction","step","math","evaluate","NumberLine","o","_model","dispatchEvent","ModelUpdatedEvent","_rerender","createDefaultModel","_configuration","defaults","configuration","s","element","React","createElement","Main","onChange","ReactDOM","render","HTMLElement","normalizedModel"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;
|
|
1
|
+
{"version":3,"sources":["../src/index.js"],"names":["updateTicks","model","graph","domain","labelStep","ticks","minor","major","min","Number","toFixed","max","match","fraction","step","math","evaluate","NumberLine","o","_model","dispatchEvent","ModelUpdatedEvent","_rerender","createDefaultModel","_configuration","defaults","configuration","s","handler","InsertSoundEvent","src","done","DeleteSoundEvent","element","React","createElement","Main","onChange","uploadSoundSupport","add","insertSound","bind","onDeleteSound","ReactDOM","render","HTMLElement","normalizedModel"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAKA;;AACA;;;;;;;;;;;;;;AAEA;AACA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAAAC,KAAK,EAAI;AAC3B,qBAAwDA,KAAxD,CAAQC,KAAR;AAAA,2CAAkD,EAAlD;AAAA,MAAiBC,MAAjB,gBAAiBA,MAAjB;AAAA,MAAyBC,SAAzB,gBAAyBA,SAAzB;AAAA,wCAAoCC,KAApC;AAAA,MAAoCA,KAApC,mCAA4C,EAA5C;AACA,MAAQC,KAAR,GAAyBD,KAAzB,CAAQC,KAAR;AAAA,MAAeC,KAAf,GAAyBF,KAAzB,CAAeE,KAAf;;AAEA,MAAIJ,MAAJ,EAAY;AACVA,IAAAA,MAAM,CAACK,GAAP,GAAaC,MAAM,CAAC,CAACN,MAAM,CAACK,GAAP,IAAc,CAAf,EAAkBE,OAAlB,CAA0B,CAA1B,CAAD,CAAnB;AACAP,IAAAA,MAAM,CAACQ,GAAP,GAAaF,MAAM,CAAC,CAACN,MAAM,CAACQ,GAAP,IAAc,CAAf,EAAkBD,OAAlB,CAA0B,CAA1B,CAAD,CAAnB;AACD;;AAED,MAAIN,SAAS,IAAI,OAAOA,SAAP,KAAqB,QAAlC,IAA8CA,SAAS,CAACQ,KAAV,CAAgB,6BAAhB,CAAlD,EAAkG;AAChGX,IAAAA,KAAK,CAACC,KAAN,CAAYW,QAAZ,GAAuB,IAAvB,CADgG,CAGhG;;AACA,QAAMC,IAAI,GAAGC,IAAI,CAACC,QAAL,CAAcZ,SAAd,CAAb;;AAEA,QAAIU,IAAI,KAAKP,KAAb,EAAoB;AAClBF,MAAAA,KAAK,CAACE,KAAN,GAAcO,IAAd;AACAT,MAAAA,KAAK,CAACC,KAAN,GAAcQ,IAAI,IAAIP,KAAK,GAAGD,KAAZ,CAAlB;AACD;AACF;;AAED,SAAOL,KAAP;AACD,CAtBD;;IAwBqBgB,U;;;;;AAUnB,wBAAc;AAAA;;AAAA;AACZ;AADY,iGAWH,UAAAC,CAAC,EAAI;AACd,YAAKC,MAAL,mCAAmB,MAAKA,MAAxB,GAAmCD,CAAnC;;AAEA,YAAKE,aAAL,CAAmB,IAAIC,qCAAJ,CAAsB,MAAKF,MAA3B,CAAnB;;AAEA,YAAKG,SAAL;AACD,KAjBa;AAEZ,UAAKH,MAAL,GAAcF,UAAU,CAACM,kBAAX,EAAd;AACA,UAAKC,cAAL,GAAsBC,QAAQ,CAACC,aAA/B;AAHY;AAIb;;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKR,MAAL,GAAcF,UAAU,CAACM,kBAAX,CAA8BI,CAA9B,CAAd;;AACA,WAAKL,SAAL;AACD;;;WAUD,qBAAYM,OAAZ,EAAqB;AACnB,WAAKR,aAAL,CAAmB,IAAIS,oCAAJ,CAAqBD,OAArB,CAAnB;AACD;;;WAED,uBAAcE,GAAd,EAAmBC,IAAnB,EAAyB;AACvB,WAAKX,aAAL,CAAmB,IAAIY,oCAAJ,CAAqBF,GAArB,EAA0BC,IAA1B,CAAnB;AACD;;;WAED,qBAAY;AACV,UAAIE,OAAO,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACtCnC,QAAAA,KAAK,EAAE,KAAKkB,MAD0B;AAEtCO,QAAAA,aAAa,EAAE,KAAKF,cAFkB;AAGtCa,QAAAA,QAAQ,EAAE,KAAKA,QAHuB;AAItCC,QAAAA,kBAAkB,EAAE;AAClBC,UAAAA,GAAG,EAAE,KAAKC,WAAL,CAAiBC,IAAjB,CAAsB,IAAtB,CADa;AAElB,oBAAQ,KAAKC,aAAL,CAAmBD,IAAnB,CAAwB,IAAxB;AAFU;AAJkB,OAA1B,CAAd;;AASAE,2BAASC,MAAT,CAAgBX,OAAhB,EAAyB,IAAzB;AACD;;;kDAhDqCY,W;;;iCAAnB5B,U,wBACS,YAAgB;AAAA,MAAfhB,KAAe,uEAAP,EAAO;;AAC1C,MAAM6C,eAAe,mCAChBrB,QAAQ,CAACxB,KADO,GAEhBA,KAFgB,CAArB;;AAKA,SAAOD,WAAW,CAAC8C,eAAD,CAAlB;AACD,C","sourcesContent":["import Main from './main';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n ModelUpdatedEvent,\n InsertSoundEvent,\n DeleteSoundEvent\n} from '@pie-framework/pie-configure-events';\nimport * as defaults from './defaults';\nimport * as math from 'mathjs';\n\n// this function is duplicated in controller; at some point, use the same shared function\nconst updateTicks = model => {\n const { graph: { domain, labelStep, ticks = {}} = {}} = model;\n const { minor, major } = ticks;\n\n if (domain) {\n domain.min = Number((domain.min || 0).toFixed(2));\n domain.max = Number((domain.max || 0).toFixed(2));\n }\n\n if (labelStep && typeof labelStep === 'string' && labelStep.match(/^[1-9][0-9]*\\/[1-9][0-9]*$/g)) {\n model.graph.fraction = true;\n\n // update the ticks frequency and label value to match the label step if needed\n const step = math.evaluate(labelStep);\n\n if (step !== major) {\n ticks.major = step;\n ticks.minor = step / (major / minor);\n }\n }\n\n return model;\n};\n\nexport default class NumberLine extends HTMLElement {\n static createDefaultModel = (model = {}) => {\n const normalizedModel = {\n ...defaults.model,\n ...model\n };\n\n return updateTicks(normalizedModel);\n };\n\n constructor() {\n super();\n this._model = NumberLine.createDefaultModel();\n this._configuration = defaults.configuration;\n }\n\n set model(s) {\n this._model = NumberLine.createDefaultModel(s);\n this._rerender();\n }\n\n onChange = o => {\n this._model = { ...this._model, ...o };\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model));\n\n this._rerender();\n };\n\n insertSound(handler) {\n this.dispatchEvent(new InsertSoundEvent(handler));\n }\n\n onDeleteSound(src, done) {\n this.dispatchEvent(new DeleteSoundEvent(src, done));\n }\n\n _rerender() {\n let element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onChange: this.onChange,\n uploadSoundSupport: {\n add: this.insertSound.bind(this),\n delete: this.onDeleteSound.bind(this)\n }\n });\n ReactDOM.render(element, this);\n }\n}\n"],"file":"index.js"}
|
package/configure/lib/main.js
CHANGED
|
@@ -434,7 +434,8 @@ var Main = /*#__PURE__*/function (_React$Component) {
|
|
|
434
434
|
classes = _this$props12.classes,
|
|
435
435
|
model = _this$props12.model,
|
|
436
436
|
_onChange = _this$props12.onChange,
|
|
437
|
-
configuration = _this$props12.configuration
|
|
437
|
+
configuration = _this$props12.configuration,
|
|
438
|
+
uploadSoundSupport = _this$props12.uploadSoundSupport;
|
|
438
439
|
|
|
439
440
|
var _ref4 = model || {},
|
|
440
441
|
graph = _ref4.graph,
|
|
@@ -484,7 +485,8 @@ var Main = /*#__PURE__*/function (_React$Component) {
|
|
|
484
485
|
nonEmpty: false,
|
|
485
486
|
disableUnderline: true,
|
|
486
487
|
toolbarOpts: toolbarOpts,
|
|
487
|
-
spellCheck: spellCheckEnabled
|
|
488
|
+
spellCheck: spellCheckEnabled,
|
|
489
|
+
uploadSoundSupport: uploadSoundSupport
|
|
488
490
|
})), /*#__PURE__*/_react["default"].createElement(_cardBar["default"], {
|
|
489
491
|
header: "Attributes",
|
|
490
492
|
info: /*#__PURE__*/_react["default"].createElement(_Tooltip["default"], {
|
|
@@ -543,7 +545,8 @@ var Main = /*#__PURE__*/function (_React$Component) {
|
|
|
543
545
|
markup: graph.title || '',
|
|
544
546
|
onChange: this.changeGraphTitle,
|
|
545
547
|
toolbarOpts: toolbarOpts,
|
|
546
|
-
spellCheck: spellCheckEnabled
|
|
548
|
+
spellCheck: spellCheckEnabled,
|
|
549
|
+
uploadSoundSupport: uploadSoundSupport
|
|
547
550
|
})), /*#__PURE__*/_react["default"].createElement(_configUi.FormSection, {
|
|
548
551
|
label: 'Limits'
|
|
549
552
|
}, /*#__PURE__*/_react["default"].createElement(_numberTextField["default"], {
|
|
@@ -616,7 +619,8 @@ exports.Main = Main;
|
|
|
616
619
|
classes: _propTypes["default"].object.isRequired,
|
|
617
620
|
model: _propTypes["default"].object.isRequired,
|
|
618
621
|
configuration: _propTypes["default"].object.isRequired,
|
|
619
|
-
onChange: _propTypes["default"].func.isRequired
|
|
622
|
+
onChange: _propTypes["default"].func.isRequired,
|
|
623
|
+
uploadSoundSupport: _propTypes["default"].object.isRequired
|
|
620
624
|
});
|
|
621
625
|
|
|
622
626
|
var _default = (0, _styles.withStyles)(styles, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/main.jsx"],"names":["trimModel","model","feedback","undefined","prompt","graph","title","correctResponse","lineIsSwitched","dataConverter","switchGraphLine","toGraphFormat","toSessionFormat","styles","theme","maxNumberOfPoints","width","checkbox","marginTop","spacing","unit","row","display","flexWrap","paddingRight","hide","opacity","resetDefaults","margin","pointTypeChooser","promptHolder","paddingBottom","marginBottom","paddingTop","section","padding","tooltip","fontSize","whiteSpace","maxWidth","inlineFlexContainer","errorText","color","toPointType","response","rest","pointType","direction","leftPoint","rightPoint","type","toUpperCase","Main","props","o","onChange","height","graphChange","availableTypes","onlyPFAvailable","Object","entries","forEach","value","e","getAdjustedHeight","ticks","tickUtils","snapElements","domain","initialElements","arrows","defaultModel","event","exhibitOnly","index","el","position","update","Set","map","indices","filter","v","some","d","data","push","pop","addInitialView","classes","configuration","spellCheckEnabled","errors","spellCheck","widthError","domainError","maxError","pointsError","correctResponseError","validationMessage","initialView","toolbarOpts","toolbarEditorPosition","root","settings","label","marginLeft","changeSize","changeTicks","changeArrows","changeGraphTitle","changeMaxNoOfPoints","setDefaults","moveCorrectResponse","deleteCorrectResponse","addCorrectResponse","clearCorrectResponse","undoCorrectResponse","availableTypesChange","moveInitialView","deleteInitialView","onAddElement","clearInitialView","undoInitialView","exhibitChanged","React","Component","PropTypes","object","isRequired","func","name"],"mappings":"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","sourcesContent":["import { InputCheckbox, FeedbackConfig, FormSection } from '@pie-lib/config-ui';\nimport NumberTextField from './number-text-field';\nimport CardBar from './card-bar';\nimport {\n NumberLineComponent,\n dataConverter,\n tickUtils\n} from '@pie-element/number-line';\nimport Size from './size';\nimport PropTypes from 'prop-types';\nimport Button from '@material-ui/core/Button';\nimport Domain from './domain';\nimport Arrows from './arrows';\nimport PointConfig from './point-config';\nimport React from 'react';\nimport cloneDeep from 'lodash/cloneDeep';\nimport { withStyles } from '@material-ui/core/styles';\nimport EditableHtml from '@pie-lib/editable-html';\nimport Info from '@material-ui/icons/Info';\nimport Tooltip from '@material-ui/core/Tooltip';\n\nimport Ticks from './ticks';\nimport { model as defaultModel } from './defaults';\nimport { generateValidationMessage } from './utils';\n\nconst trimModel = model => ({\n ...model,\n feedback: undefined,\n prompt: undefined,\n graph: { ...model.graph, title: undefined },\n correctResponse: undefined\n});\n\nconst {\n lineIsSwitched,\n switchGraphLine,\n toGraphFormat,\n toSessionFormat\n} = dataConverter;\n\nconst styles = theme => ({\n maxNumberOfPoints: {\n width: '150px'\n },\n checkbox: {\n marginTop: theme.spacing.unit * 2\n },\n row: {\n display: 'flex',\n flexWrap: 'wrap',\n '& > *': {\n paddingRight: theme.spacing.unit * 2\n }\n },\n hide: {\n opacity: 0.5\n },\n resetDefaults: {\n margin: '20px 0'\n },\n pointTypeChooser: {\n margin: '20px 0'\n },\n promptHolder: {\n width: '100%',\n paddingBottom: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2\n },\n prompt: {\n paddingTop: theme.spacing.unit * 2,\n width: '100%'\n },\n section: {\n margin: 0,\n padding: 0\n },\n tooltip: {\n fontSize: '12px',\n whiteSpace: 'pre',\n maxWidth: '500px'\n },\n inlineFlexContainer: {\n display: 'inline-flex',\n },\n errorText: {\n fontSize: '12px',\n color: 'red',\n padding: '5px 0'\n }\n});\n\nexport const toPointType = response => {\n function rest(response) {\n if (response.pointType) {\n if (response.direction) {\n return `${response.pointType[0]}${response.direction[0]}`;\n }\n return response.pointType[0];\n } else {\n return `${response.leftPoint[0]}${response.rightPoint[0]}`;\n }\n }\n return `${response.type[0]}${rest(response)}`.toUpperCase();\n};\n\nexport class Main extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired\n };\n\n constructor(props) {\n super(props);\n const { model: { graph: { availableTypes, maxNumberOfPoints }}} = props;\n const height = this.getAdjustedHeight(availableTypes, maxNumberOfPoints);\n\n this.graphChange({ height });\n }\n\n graphChange = o => {\n const { onChange } = this.props;\n const graph = { ...this.props.model.graph, ...o };\n onChange({ graph });\n };\n\n changeSize = ({ width, height }) => this.graphChange({ width, height });\n\n getAdjustedHeight = (availableTypes, maxNumberOfPoints) => {\n let onlyPFAvailable = true;\n\n Object.entries(availableTypes || {}).forEach(([type, value]) => {\n if (type !== 'PF' && value) {\n onlyPFAvailable = false;\n return;\n }\n });\n\n const height = maxNumberOfPoints && (maxNumberOfPoints === 1 || onlyPFAvailable)\n ? 100 : (50 + (maxNumberOfPoints || 20) * 25);\n\n return height;\n };\n\n changeMaxNoOfPoints = (e, maxNumberOfPoints) => {\n const { model : { graph: { availableTypes }}} = this.props;\n const height = this.getAdjustedHeight(availableTypes, maxNumberOfPoints);\n\n this.graphChange({ maxNumberOfPoints, height });\n };\n\n changeGraphTitle = title => this.graphChange({ title });\n\n changeTicks = ticks => {\n const { model, onChange } = this.props;\n const correctResponse = tickUtils.snapElements(\n model.graph.domain,\n ticks,\n model.correctResponse\n );\n const initialElements = tickUtils.snapElements(\n model.graph.domain,\n ticks,\n model.graph.initialElements\n );\n\n const graph = { ...this.props.model.graph, ticks, initialElements };\n onChange({ graph, correctResponse });\n };\n\n changeArrows = arrows => this.graphChange({ arrows });\n\n setDefaults = () => {\n const { graph: { availableTypes, maxNumberOfPoints }} = defaultModel;\n const height = this.getAdjustedHeight(availableTypes, maxNumberOfPoints);\n const graph = { ...cloneDeep(defaultModel.graph), height };\n\n this.props.onChange({ graph });\n };\n\n exhibitChanged = (event, value) => {\n const graph = { ...this.props.model.graph, exhibitOnly: value };\n this.props.onChange({ graph });\n };\n\n moveCorrectResponse = (index, el, position) => {\n const { onChange, model } = this.props;\n el.position = position;\n const update = toSessionFormat(\n el.type === 'line' && lineIsSwitched(el) ? switchGraphLine(el) : el\n );\n const correctResponse = [...model.correctResponse];\n correctResponse[index] = update;\n onChange({ correctResponse });\n };\n\n moveInitialView = (index, el, position) => {\n const { model, onChange } = this.props;\n el.position = position;\n const update = toSessionFormat(\n el.type === 'line' && lineIsSwitched(el) ? switchGraphLine(el) : el\n );\n const initialElements = [...this.props.model.graph.initialElements];\n initialElements[index] = update;\n const graph = { ...model.graph, initialElements };\n onChange({ graph });\n };\n\n availableTypesChange = availableTypes => {\n const { model, onChange } = this.props;\n const { correctResponse, graph: { maxNumberOfPoints }} = model;\n\n new Set(correctResponse.map(toPointType)).forEach(pointType => {\n availableTypes[pointType] = true;\n });\n\n const height = this.getAdjustedHeight(availableTypes, maxNumberOfPoints);\n const graph = { ...model.graph, availableTypes, height };\n\n onChange({ graph });\n };\n\n deleteCorrectResponse = indices => {\n const { model, onChange } = this.props;\n const correctResponse = model.correctResponse.filter((v, index) => {\n return !indices.some(d => d === index);\n });\n onChange({ correctResponse });\n };\n\n deleteInitialView = indices => {\n const { model, onChange } = this.props;\n const initialElements = model.graph.initialElements.filter((v, index) => {\n return !indices.some(d => d === index);\n });\n const graph = { ...model.graph, initialElements };\n onChange({ graph });\n };\n\n addCorrectResponse = data => {\n const { model, onChange } = this.props;\n const correctResponse = [...model.correctResponse];\n correctResponse.push(toSessionFormat(data));\n onChange({ correctResponse });\n };\n\n addInitialView = data => {\n const { onChange, model } = this.props;\n const graph = { ...model.graph };\n graph.initialElements = graph.initialElements || [];\n graph.initialElements.push(toSessionFormat(data));\n onChange({ graph });\n };\n\n clearCorrectResponse = () => {\n const { onChange } = this.props;\n const correctResponse = [];\n onChange({ correctResponse });\n };\n\n clearInitialView = () => {\n const { model, onChange } = this.props;\n const initialElements = [];\n const graph = { ...model.graph, initialElements };\n onChange({ graph });\n };\n\n undoCorrectResponse = () => {\n const { model, onChange } = this.props;\n const correctResponse = [...model.correctResponse];\n correctResponse.pop();\n onChange({ correctResponse });\n };\n\n undoInitialView = () => {\n const { onChange, model } = this.props;\n const graph = { ...model.graph };\n graph.initialElements = graph.initialElements || [];\n graph.initialElements.pop();\n onChange({ graph });\n };\n\n onAddElement = this.addInitialView;\n\n render() {\n const { classes, model, onChange, configuration } = this.props;\n\n const { graph, spellCheckEnabled, errors } = model || {};\n const { prompt = {}, spellCheck = {} } = configuration || {};\n const { widthError, domainError, maxError, pointsError, correctResponseError } = errors || {};\n const validationMessage = generateValidationMessage();\n\n const correctResponse = cloneDeep(model.correctResponse || []).map(\n toGraphFormat\n );\n\n const initialView = cloneDeep(graph.initialElements || []).map(\n toGraphFormat\n );\n const toolbarOpts = {};\n\n switch (model.toolbarEditorPosition) {\n case 'top':\n toolbarOpts.position = 'top';\n break;\n default:\n toolbarOpts.position = 'bottom';\n break;\n }\n\n return (\n <div className={classes.root}>\n\n {prompt.settings && (\n <FormSection label={prompt.label}>\n <EditableHtml\n className={classes.prompt}\n markup={model.prompt}\n onChange={prompt => onChange({ prompt })}\n nonEmpty={false}\n disableUnderline\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n />\n </FormSection>\n )}\n <CardBar\n header=\"Attributes\"\n info={<Tooltip\n classes={{tooltip: classes.tooltip}}\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} style={{ marginLeft: '5px' }}/>\n </Tooltip>}\n >\n Set up the number line by entering the domain and number of tick marks\n to display. Labels on the number line can be edited or removed by\n clicking on the label.\n </CardBar>\n\n {widthError && <div className={classes.errorText}>{widthError}</div>}\n {domainError && <div className={classes.errorText}>{domainError}</div>}\n {maxError && <div className={classes.errorText}>{maxError}</div>}\n\n <div className={classes.row}>\n <FormSection label={'Size'}>\n <Size size={graph} onChange={this.changeSize} />\n </FormSection>\n\n <FormSection label={'Domain'}>\n <Domain\n domain={graph.domain}\n onChange={domain => this.graphChange({ domain })}\n />\n </FormSection>\n </div>\n <div className={classes.row}>\n <FormSection label={'Ticks'}>\n <Ticks\n ticks={graph.ticks}\n onChange={this.changeTicks}\n domain={graph.domain}\n />\n </FormSection>\n <FormSection label={'Arrows'}>\n <Arrows arrows={graph.arrows} onChange={this.changeArrows} />\n </FormSection>\n </div>\n <FormSection label={'Title'}>\n <EditableHtml\n markup={graph.title || ''}\n onChange={this.changeGraphTitle}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n />\n </FormSection>\n <FormSection label={'Limits'}>\n <NumberTextField\n className={classes.maxNumberOfPoints}\n label=\"Max No of Elements\"\n min={1}\n max={20}\n value={graph.maxNumberOfPoints}\n onChange={this.changeMaxNoOfPoints}\n />\n </FormSection>\n <Button\n variant=\"outlined\"\n mini\n color=\"primary\"\n onClick={this.setDefaults}\n >\n Reset to default values\n </Button>\n <br />\n <br />\n\n {!graph.exhibitOnly && (\n <div>\n <CardBar header=\"Correct Response\">\n Select answer type and place it on the number line. Intersecting\n points, line segments and/or rays will appear above the number\n line.{' '}\n <i>\n Note: A maximum of 20 points, line segments or rays may be\n plotted.\n </i>\n </CardBar>\n\n {pointsError && <div className={classes.errorText}>{pointsError}</div>}\n {correctResponseError && <div className={classes.errorText}>{correctResponseError}</div>}\n\n <NumberLineComponent\n onMoveElement={this.moveCorrectResponse}\n onDeleteElements={this.deleteCorrectResponse}\n onAddElement={this.addCorrectResponse}\n onClearElements={this.clearCorrectResponse}\n onUndoElement={this.undoCorrectResponse}\n answer={correctResponse}\n //strip feedback for this model\n model={trimModel(model)}\n />\n <CardBar header=\"Available Types\" mini>\n Click on the input options to be displayed to the students. All\n inputs will display by default.\n </CardBar>\n <div className={classes.pointTypeChooser}>\n <PointConfig\n onSelectionChange={this.availableTypesChange}\n selection={graph.availableTypes}\n />\n </div>\n </div>\n )}\n <CardBar header=\"Initial view/Make Exhibit\">\n Use this number line to set a starting point, line segment or ray.\n This is optional. <br />\n This number line may also be used to make an exhibit number line,\n which can not be manipulated by a student.\n </CardBar>\n <NumberLineComponent\n onMoveElement={this.moveInitialView}\n onDeleteElements={this.deleteInitialView}\n onAddElement={this.onAddElement}\n onClearElements={this.clearInitialView}\n onUndoElement={this.undoInitialView}\n answer={initialView}\n model={trimModel(model)}\n />\n <InputCheckbox\n label=\"Make exhibit\"\n className={classes.checkbox}\n checked={graph.exhibitOnly}\n onChange={this.exhibitChanged}\n value={'exhibitOnly'}\n />\n\n {!graph.exhibitOnly && (\n <React.Fragment>\n <br />\n <FeedbackConfig\n feedback={model.feedback}\n onChange={feedback => onChange({ feedback })}\n toolbarOpts={toolbarOpts}\n />\n </React.Fragment>\n )}\n </div>\n );\n }\n}\n\nexport default withStyles(styles, { name: 'Main' })(Main);\n"],"file":"main.js"}
|
|
1
|
+
{"version":3,"sources":["../src/main.jsx"],"names":["trimModel","model","feedback","undefined","prompt","graph","title","correctResponse","lineIsSwitched","dataConverter","switchGraphLine","toGraphFormat","toSessionFormat","styles","theme","maxNumberOfPoints","width","checkbox","marginTop","spacing","unit","row","display","flexWrap","paddingRight","hide","opacity","resetDefaults","margin","pointTypeChooser","promptHolder","paddingBottom","marginBottom","paddingTop","section","padding","tooltip","fontSize","whiteSpace","maxWidth","inlineFlexContainer","errorText","color","toPointType","response","rest","pointType","direction","leftPoint","rightPoint","type","toUpperCase","Main","props","o","onChange","height","graphChange","availableTypes","onlyPFAvailable","Object","entries","forEach","value","e","getAdjustedHeight","ticks","tickUtils","snapElements","domain","initialElements","arrows","defaultModel","event","exhibitOnly","index","el","position","update","Set","map","indices","filter","v","some","d","data","push","pop","addInitialView","classes","configuration","uploadSoundSupport","spellCheckEnabled","errors","spellCheck","widthError","domainError","maxError","pointsError","correctResponseError","validationMessage","initialView","toolbarOpts","toolbarEditorPosition","root","settings","label","marginLeft","changeSize","changeTicks","changeArrows","changeGraphTitle","changeMaxNoOfPoints","setDefaults","moveCorrectResponse","deleteCorrectResponse","addCorrectResponse","clearCorrectResponse","undoCorrectResponse","availableTypesChange","moveInitialView","deleteInitialView","onAddElement","clearInitialView","undoInitialView","exhibitChanged","React","Component","PropTypes","object","isRequired","func","name"],"mappings":"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","sourcesContent":["import { InputCheckbox, FeedbackConfig, FormSection } from '@pie-lib/config-ui';\nimport NumberTextField from './number-text-field';\nimport CardBar from './card-bar';\nimport {\n NumberLineComponent,\n dataConverter,\n tickUtils\n} from '@pie-element/number-line';\nimport Size from './size';\nimport PropTypes from 'prop-types';\nimport Button from '@material-ui/core/Button';\nimport Domain from './domain';\nimport Arrows from './arrows';\nimport PointConfig from './point-config';\nimport React from 'react';\nimport cloneDeep from 'lodash/cloneDeep';\nimport { withStyles } from '@material-ui/core/styles';\nimport EditableHtml from '@pie-lib/editable-html';\nimport Info from '@material-ui/icons/Info';\nimport Tooltip from '@material-ui/core/Tooltip';\n\nimport Ticks from './ticks';\nimport { model as defaultModel } from './defaults';\nimport { generateValidationMessage } from './utils';\n\nconst trimModel = model => ({\n ...model,\n feedback: undefined,\n prompt: undefined,\n graph: { ...model.graph, title: undefined },\n correctResponse: undefined\n});\n\nconst {\n lineIsSwitched,\n switchGraphLine,\n toGraphFormat,\n toSessionFormat\n} = dataConverter;\n\nconst styles = theme => ({\n maxNumberOfPoints: {\n width: '150px'\n },\n checkbox: {\n marginTop: theme.spacing.unit * 2\n },\n row: {\n display: 'flex',\n flexWrap: 'wrap',\n '& > *': {\n paddingRight: theme.spacing.unit * 2\n }\n },\n hide: {\n opacity: 0.5\n },\n resetDefaults: {\n margin: '20px 0'\n },\n pointTypeChooser: {\n margin: '20px 0'\n },\n promptHolder: {\n width: '100%',\n paddingBottom: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2\n },\n prompt: {\n paddingTop: theme.spacing.unit * 2,\n width: '100%'\n },\n section: {\n margin: 0,\n padding: 0\n },\n tooltip: {\n fontSize: '12px',\n whiteSpace: 'pre',\n maxWidth: '500px'\n },\n inlineFlexContainer: {\n display: 'inline-flex',\n },\n errorText: {\n fontSize: '12px',\n color: 'red',\n padding: '5px 0'\n }\n});\n\nexport const toPointType = response => {\n function rest(response) {\n if (response.pointType) {\n if (response.direction) {\n return `${response.pointType[0]}${response.direction[0]}`;\n }\n return response.pointType[0];\n } else {\n return `${response.leftPoint[0]}${response.rightPoint[0]}`;\n }\n }\n return `${response.type[0]}${rest(response)}`.toUpperCase();\n};\n\nexport class Main extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n uploadSoundSupport: PropTypes.object.isRequired\n };\n\n constructor(props) {\n super(props);\n const { model: { graph: { availableTypes, maxNumberOfPoints }}} = props;\n const height = this.getAdjustedHeight(availableTypes, maxNumberOfPoints);\n\n this.graphChange({ height });\n }\n\n graphChange = o => {\n const { onChange } = this.props;\n const graph = { ...this.props.model.graph, ...o };\n onChange({ graph });\n };\n\n changeSize = ({ width, height }) => this.graphChange({ width, height });\n\n getAdjustedHeight = (availableTypes, maxNumberOfPoints) => {\n let onlyPFAvailable = true;\n\n Object.entries(availableTypes || {}).forEach(([type, value]) => {\n if (type !== 'PF' && value) {\n onlyPFAvailable = false;\n return;\n }\n });\n\n const height = maxNumberOfPoints && (maxNumberOfPoints === 1 || onlyPFAvailable)\n ? 100 : (50 + (maxNumberOfPoints || 20) * 25);\n\n return height;\n };\n\n changeMaxNoOfPoints = (e, maxNumberOfPoints) => {\n const { model : { graph: { availableTypes }}} = this.props;\n const height = this.getAdjustedHeight(availableTypes, maxNumberOfPoints);\n\n this.graphChange({ maxNumberOfPoints, height });\n };\n\n changeGraphTitle = title => this.graphChange({ title });\n\n changeTicks = ticks => {\n const { model, onChange } = this.props;\n const correctResponse = tickUtils.snapElements(\n model.graph.domain,\n ticks,\n model.correctResponse\n );\n const initialElements = tickUtils.snapElements(\n model.graph.domain,\n ticks,\n model.graph.initialElements\n );\n\n const graph = { ...this.props.model.graph, ticks, initialElements };\n onChange({ graph, correctResponse });\n };\n\n changeArrows = arrows => this.graphChange({ arrows });\n\n setDefaults = () => {\n const { graph: { availableTypes, maxNumberOfPoints }} = defaultModel;\n const height = this.getAdjustedHeight(availableTypes, maxNumberOfPoints);\n const graph = { ...cloneDeep(defaultModel.graph), height };\n\n this.props.onChange({ graph });\n };\n\n exhibitChanged = (event, value) => {\n const graph = { ...this.props.model.graph, exhibitOnly: value };\n this.props.onChange({ graph });\n };\n\n moveCorrectResponse = (index, el, position) => {\n const { onChange, model } = this.props;\n el.position = position;\n const update = toSessionFormat(\n el.type === 'line' && lineIsSwitched(el) ? switchGraphLine(el) : el\n );\n const correctResponse = [...model.correctResponse];\n correctResponse[index] = update;\n onChange({ correctResponse });\n };\n\n moveInitialView = (index, el, position) => {\n const { model, onChange } = this.props;\n el.position = position;\n const update = toSessionFormat(\n el.type === 'line' && lineIsSwitched(el) ? switchGraphLine(el) : el\n );\n const initialElements = [...this.props.model.graph.initialElements];\n initialElements[index] = update;\n const graph = { ...model.graph, initialElements };\n onChange({ graph });\n };\n\n availableTypesChange = availableTypes => {\n const { model, onChange } = this.props;\n const { correctResponse, graph: { maxNumberOfPoints }} = model;\n\n new Set(correctResponse.map(toPointType)).forEach(pointType => {\n availableTypes[pointType] = true;\n });\n\n const height = this.getAdjustedHeight(availableTypes, maxNumberOfPoints);\n const graph = { ...model.graph, availableTypes, height };\n\n onChange({ graph });\n };\n\n deleteCorrectResponse = indices => {\n const { model, onChange } = this.props;\n const correctResponse = model.correctResponse.filter((v, index) => {\n return !indices.some(d => d === index);\n });\n onChange({ correctResponse });\n };\n\n deleteInitialView = indices => {\n const { model, onChange } = this.props;\n const initialElements = model.graph.initialElements.filter((v, index) => {\n return !indices.some(d => d === index);\n });\n const graph = { ...model.graph, initialElements };\n onChange({ graph });\n };\n\n addCorrectResponse = data => {\n const { model, onChange } = this.props;\n const correctResponse = [...model.correctResponse];\n correctResponse.push(toSessionFormat(data));\n onChange({ correctResponse });\n };\n\n addInitialView = data => {\n const { onChange, model } = this.props;\n const graph = { ...model.graph };\n graph.initialElements = graph.initialElements || [];\n graph.initialElements.push(toSessionFormat(data));\n onChange({ graph });\n };\n\n clearCorrectResponse = () => {\n const { onChange } = this.props;\n const correctResponse = [];\n onChange({ correctResponse });\n };\n\n clearInitialView = () => {\n const { model, onChange } = this.props;\n const initialElements = [];\n const graph = { ...model.graph, initialElements };\n onChange({ graph });\n };\n\n undoCorrectResponse = () => {\n const { model, onChange } = this.props;\n const correctResponse = [...model.correctResponse];\n correctResponse.pop();\n onChange({ correctResponse });\n };\n\n undoInitialView = () => {\n const { onChange, model } = this.props;\n const graph = { ...model.graph };\n graph.initialElements = graph.initialElements || [];\n graph.initialElements.pop();\n onChange({ graph });\n };\n\n onAddElement = this.addInitialView;\n\n render() {\n const { classes, model, onChange, configuration, uploadSoundSupport } = this.props;\n\n const { graph, spellCheckEnabled, errors } = model || {};\n const { prompt = {}, spellCheck = {} } = configuration || {};\n const { widthError, domainError, maxError, pointsError, correctResponseError } = errors || {};\n const validationMessage = generateValidationMessage();\n\n const correctResponse = cloneDeep(model.correctResponse || []).map(\n toGraphFormat\n );\n\n const initialView = cloneDeep(graph.initialElements || []).map(\n toGraphFormat\n );\n const toolbarOpts = {};\n\n switch (model.toolbarEditorPosition) {\n case 'top':\n toolbarOpts.position = 'top';\n break;\n default:\n toolbarOpts.position = 'bottom';\n break;\n }\n\n return (\n <div className={classes.root}>\n\n {prompt.settings && (\n <FormSection label={prompt.label}>\n <EditableHtml\n className={classes.prompt}\n markup={model.prompt}\n onChange={prompt => onChange({ prompt })}\n nonEmpty={false}\n disableUnderline\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n uploadSoundSupport={uploadSoundSupport}\n />\n </FormSection>\n )}\n <CardBar\n header=\"Attributes\"\n info={<Tooltip\n classes={{tooltip: classes.tooltip}}\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} style={{ marginLeft: '5px' }}/>\n </Tooltip>}\n >\n Set up the number line by entering the domain and number of tick marks\n to display. Labels on the number line can be edited or removed by\n clicking on the label.\n </CardBar>\n\n {widthError && <div className={classes.errorText}>{widthError}</div>}\n {domainError && <div className={classes.errorText}>{domainError}</div>}\n {maxError && <div className={classes.errorText}>{maxError}</div>}\n\n <div className={classes.row}>\n <FormSection label={'Size'}>\n <Size size={graph} onChange={this.changeSize} />\n </FormSection>\n\n <FormSection label={'Domain'}>\n <Domain\n domain={graph.domain}\n onChange={domain => this.graphChange({ domain })}\n />\n </FormSection>\n </div>\n <div className={classes.row}>\n <FormSection label={'Ticks'}>\n <Ticks\n ticks={graph.ticks}\n onChange={this.changeTicks}\n domain={graph.domain}\n />\n </FormSection>\n <FormSection label={'Arrows'}>\n <Arrows arrows={graph.arrows} onChange={this.changeArrows} />\n </FormSection>\n </div>\n <FormSection label={'Title'}>\n <EditableHtml\n markup={graph.title || ''}\n onChange={this.changeGraphTitle}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n uploadSoundSupport={uploadSoundSupport}\n />\n </FormSection>\n <FormSection label={'Limits'}>\n <NumberTextField\n className={classes.maxNumberOfPoints}\n label=\"Max No of Elements\"\n min={1}\n max={20}\n value={graph.maxNumberOfPoints}\n onChange={this.changeMaxNoOfPoints}\n />\n </FormSection>\n <Button\n variant=\"outlined\"\n mini\n color=\"primary\"\n onClick={this.setDefaults}\n >\n Reset to default values\n </Button>\n <br />\n <br />\n\n {!graph.exhibitOnly && (\n <div>\n <CardBar header=\"Correct Response\">\n Select answer type and place it on the number line. Intersecting\n points, line segments and/or rays will appear above the number\n line.{' '}\n <i>\n Note: A maximum of 20 points, line segments or rays may be\n plotted.\n </i>\n </CardBar>\n\n {pointsError && <div className={classes.errorText}>{pointsError}</div>}\n {correctResponseError && <div className={classes.errorText}>{correctResponseError}</div>}\n\n <NumberLineComponent\n onMoveElement={this.moveCorrectResponse}\n onDeleteElements={this.deleteCorrectResponse}\n onAddElement={this.addCorrectResponse}\n onClearElements={this.clearCorrectResponse}\n onUndoElement={this.undoCorrectResponse}\n answer={correctResponse}\n //strip feedback for this model\n model={trimModel(model)}\n />\n <CardBar header=\"Available Types\" mini>\n Click on the input options to be displayed to the students. All\n inputs will display by default.\n </CardBar>\n <div className={classes.pointTypeChooser}>\n <PointConfig\n onSelectionChange={this.availableTypesChange}\n selection={graph.availableTypes}\n />\n </div>\n </div>\n )}\n <CardBar header=\"Initial view/Make Exhibit\">\n Use this number line to set a starting point, line segment or ray.\n This is optional. <br />\n This number line may also be used to make an exhibit number line,\n which can not be manipulated by a student.\n </CardBar>\n <NumberLineComponent\n onMoveElement={this.moveInitialView}\n onDeleteElements={this.deleteInitialView}\n onAddElement={this.onAddElement}\n onClearElements={this.clearInitialView}\n onUndoElement={this.undoInitialView}\n answer={initialView}\n model={trimModel(model)}\n />\n <InputCheckbox\n label=\"Make exhibit\"\n className={classes.checkbox}\n checked={graph.exhibitOnly}\n onChange={this.exhibitChanged}\n value={'exhibitOnly'}\n />\n\n {!graph.exhibitOnly && (\n <React.Fragment>\n <br />\n <FeedbackConfig\n feedback={model.feedback}\n onChange={feedback => onChange({ feedback })}\n toolbarOpts={toolbarOpts}\n />\n </React.Fragment>\n )}\n </div>\n );\n }\n}\n\nexport default withStyles(styles, { name: 'Main' })(Main);\n"],"file":"main.js"}
|
package/configure/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/number-line-configure",
|
|
3
3
|
"private": true,
|
|
4
|
-
"version": "5.1.
|
|
4
|
+
"version": "5.1.10",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "src/index.js",
|
|
7
7
|
"dependencies": {
|
|
8
8
|
"@material-ui/core": "^3.9.2",
|
|
9
|
-
"@pie-framework/pie-configure-events": "^1.
|
|
10
|
-
"@pie-lib/config-ui": "^11.0.
|
|
11
|
-
"@pie-lib/editable-html": "^9.
|
|
9
|
+
"@pie-framework/pie-configure-events": "^1.3.0",
|
|
10
|
+
"@pie-lib/config-ui": "^11.0.19",
|
|
11
|
+
"@pie-lib/editable-html": "^9.2.2",
|
|
12
12
|
"react": "^16.8.1",
|
|
13
13
|
"react-dom": "^16.8.1"
|
|
14
14
|
}
|
package/docs/config-schema.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/number-line",
|
|
3
|
-
"version": "6.1.
|
|
3
|
+
"version": "6.1.10",
|
|
4
4
|
"repository": "pie-framework/pie-elements",
|
|
5
5
|
"description": "",
|
|
6
6
|
"publishConfig": {
|
|
@@ -8,11 +8,11 @@
|
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
10
|
"@material-ui/core": "^3.9.2",
|
|
11
|
-
"@pie-lib/correct-answer-toggle": "^2.3.
|
|
11
|
+
"@pie-lib/correct-answer-toggle": "^2.3.46",
|
|
12
12
|
"@pie-lib/feedback": "^0.4.27",
|
|
13
13
|
"@pie-lib/icons": "^2.4.25",
|
|
14
14
|
"@pie-lib/math-rendering": "^2.5.0",
|
|
15
|
-
"@pie-lib/render-ui": "^4.13.
|
|
15
|
+
"@pie-lib/render-ui": "^4.13.6",
|
|
16
16
|
"classnames": "^2.2.5",
|
|
17
17
|
"d3-scale": "^3.2.1",
|
|
18
18
|
"d3-selection": "^1.4.1",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
},
|
|
28
28
|
"author": "pie framework developers",
|
|
29
29
|
"license": "ISC",
|
|
30
|
-
"gitHead": "
|
|
30
|
+
"gitHead": "f60d1edac928da4682a9789000e3c8cf464348c0",
|
|
31
31
|
"scripts": {
|
|
32
32
|
"postpublish": "../../scripts/postpublish"
|
|
33
33
|
},
|