@pie-element/charting 12.2.2-beta.5 → 12.2.2-beta.6
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 +4 -0
- package/configure/CHANGELOG.md +4 -0
- package/configure/package.json +4 -4
- package/controller/CHANGELOG.md +4 -0
- package/controller/package.json +1 -1
- package/package.json +3 -3
- package/configure/lib/charting-config.js +0 -192
- package/configure/lib/charting-config.js.map +0 -1
- package/configure/lib/configure.js +0 -312
- package/configure/lib/configure.js.map +0 -1
- package/configure/lib/correct-response.js +0 -244
- package/configure/lib/correct-response.js.map +0 -1
- package/configure/lib/defaults.js +0 -233
- package/configure/lib/defaults.js.map +0 -1
- package/configure/lib/index.js +0 -124
- package/configure/lib/index.js.map +0 -1
- package/configure/lib/utils.js +0 -80
- package/configure/lib/utils.js.map +0 -1
- package/controller/lib/defaults.js +0 -42
- package/controller/lib/defaults.js.map +0 -1
- package/controller/lib/index.js +0 -434
- package/controller/lib/index.js.map +0 -1
- package/lib/index.js +0 -118
- package/lib/index.js.map +0 -1
- package/lib/main.js +0 -167
- package/lib/main.js.map +0 -1
package/configure/lib/index.js
DELETED
|
@@ -1,124 +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 = void 0;
|
|
8
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
-
var _react = _interopRequireDefault(require("react"));
|
|
10
|
-
var _client = require("react-dom/client");
|
|
11
|
-
var _pieConfigureEvents = require("@pie-framework/pie-configure-events");
|
|
12
|
-
var _debug = _interopRequireDefault(require("debug"));
|
|
13
|
-
var _configure = _interopRequireDefault(require("./configure"));
|
|
14
|
-
var _defaults = _interopRequireDefault(require("./defaults"));
|
|
15
|
-
var _mathRendering = require("@pie-lib/math-rendering");
|
|
16
|
-
const log = (0, _debug.default)('pie-elements:graphing:configure');
|
|
17
|
-
class GraphLinesConfigure extends HTMLElement {
|
|
18
|
-
constructor() {
|
|
19
|
-
super();
|
|
20
|
-
this._root = null;
|
|
21
|
-
this._model = GraphLinesConfigure.createDefaultModel();
|
|
22
|
-
this._configuration = _defaults.default.configuration;
|
|
23
|
-
}
|
|
24
|
-
set model(m) {
|
|
25
|
-
this._model = GraphLinesConfigure.createDefaultModel(m);
|
|
26
|
-
this._render();
|
|
27
|
-
}
|
|
28
|
-
set configuration(c) {
|
|
29
|
-
const newConfiguration = {
|
|
30
|
-
..._defaults.default.configuration,
|
|
31
|
-
...c
|
|
32
|
-
};
|
|
33
|
-
this._configuration = newConfiguration;
|
|
34
|
-
|
|
35
|
-
// if language:enabled is true, then the corresponding default item model should include a language value;
|
|
36
|
-
// if it is false, then the language field should be omitted from the item model.
|
|
37
|
-
// if a default item model includes a language value (e.g., en_US) and the corresponding authoring view settings have language:settings = true,
|
|
38
|
-
// then (a) language:enabled should also be true, and (b) that default language value should be represented in languageChoices[] (as a key).
|
|
39
|
-
if (newConfiguration?.language?.enabled) {
|
|
40
|
-
if (newConfiguration?.languageChoices?.options?.length) {
|
|
41
|
-
this._model.language = newConfiguration?.languageChoices.options[0].value;
|
|
42
|
-
}
|
|
43
|
-
} else if (newConfiguration.language.settings && this._model.language) {
|
|
44
|
-
this._configuration.language.enabled = true;
|
|
45
|
-
if (!this._configuration.languageChoices.options || !this._configuration.languageChoices.options.length) {
|
|
46
|
-
this._configuration.languageChoices.options = [];
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
// check if the language is already included in the languageChoices.options array
|
|
50
|
-
// and if not, then add it.
|
|
51
|
-
if (!this._configuration.languageChoices.options.find(option => option.value === this._model.language)) {
|
|
52
|
-
this._configuration.languageChoices.options.push({
|
|
53
|
-
value: this._model.language,
|
|
54
|
-
label: this._model.language
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
} else {
|
|
58
|
-
delete this._model.language;
|
|
59
|
-
}
|
|
60
|
-
this._render();
|
|
61
|
-
}
|
|
62
|
-
onModelChanged(model) {
|
|
63
|
-
this._model = model;
|
|
64
|
-
this._render();
|
|
65
|
-
log('[onModelChanged]: ', this._model);
|
|
66
|
-
this.dispatchEvent(new _pieConfigureEvents.ModelUpdatedEvent(this._model));
|
|
67
|
-
}
|
|
68
|
-
onConfigurationChanged(config) {
|
|
69
|
-
this._configuration = config;
|
|
70
|
-
this._render();
|
|
71
|
-
}
|
|
72
|
-
insertImage(handler) {
|
|
73
|
-
this.dispatchEvent(new _pieConfigureEvents.InsertImageEvent(handler));
|
|
74
|
-
}
|
|
75
|
-
onDeleteImage(src, done) {
|
|
76
|
-
this.dispatchEvent(new _pieConfigureEvents.DeleteImageEvent(src, done));
|
|
77
|
-
}
|
|
78
|
-
insertSound(handler) {
|
|
79
|
-
this.dispatchEvent(new _pieConfigureEvents.InsertSoundEvent(handler));
|
|
80
|
-
}
|
|
81
|
-
onDeleteSound(src, done) {
|
|
82
|
-
this.dispatchEvent(new _pieConfigureEvents.DeleteSoundEvent(src, done));
|
|
83
|
-
}
|
|
84
|
-
_render() {
|
|
85
|
-
if (this._model) {
|
|
86
|
-
const el = /*#__PURE__*/_react.default.createElement(_configure.default, {
|
|
87
|
-
onModelChanged: this.onModelChanged.bind(this),
|
|
88
|
-
onConfigurationChanged: this.onConfigurationChanged.bind(this),
|
|
89
|
-
model: this._model,
|
|
90
|
-
configuration: this._configuration,
|
|
91
|
-
imageSupport: {
|
|
92
|
-
add: this.insertImage.bind(this),
|
|
93
|
-
delete: this.onDeleteImage.bind(this)
|
|
94
|
-
},
|
|
95
|
-
uploadSoundSupport: {
|
|
96
|
-
add: this.insertSound.bind(this),
|
|
97
|
-
delete: this.onDeleteSound.bind(this)
|
|
98
|
-
}
|
|
99
|
-
});
|
|
100
|
-
if (!this._root) {
|
|
101
|
-
this._root = (0, _client.createRoot)(this);
|
|
102
|
-
}
|
|
103
|
-
this._root.render(el);
|
|
104
|
-
queueMicrotask(() => {
|
|
105
|
-
(0, _mathRendering.renderMath)(this);
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
connectedCallback() {
|
|
110
|
-
this._render();
|
|
111
|
-
}
|
|
112
|
-
disconnectedCallback() {
|
|
113
|
-
if (this._root) {
|
|
114
|
-
this._root.unmount();
|
|
115
|
-
this._root = null;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
exports.default = GraphLinesConfigure;
|
|
120
|
-
(0, _defineProperty2.default)(GraphLinesConfigure, "createDefaultModel", (model = {}) => ({
|
|
121
|
-
..._defaults.default.model,
|
|
122
|
-
...model
|
|
123
|
-
}));
|
|
124
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_client","_pieConfigureEvents","_debug","_configure","_defaults","_mathRendering","log","debug","GraphLinesConfigure","HTMLElement","constructor","_root","_model","createDefaultModel","_configuration","defaultValues","configuration","model","m","_render","c","newConfiguration","language","enabled","languageChoices","options","length","value","settings","find","option","push","label","onModelChanged","dispatchEvent","ModelUpdatedEvent","onConfigurationChanged","config","insertImage","handler","InsertImageEvent","onDeleteImage","src","done","DeleteImageEvent","insertSound","InsertSoundEvent","onDeleteSound","DeleteSoundEvent","el","React","createElement","Configure","bind","imageSupport","add","delete","uploadSoundSupport","createRoot","render","queueMicrotask","renderMath","connectedCallback","disconnectedCallback","unmount","exports","default","_defineProperty2"],"sources":["../src/index.js"],"sourcesContent":["import React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport {\n ModelUpdatedEvent,\n DeleteImageEvent,\n InsertImageEvent,\n InsertSoundEvent,\n DeleteSoundEvent,\n} from '@pie-framework/pie-configure-events';\nimport debug from 'debug';\nimport Configure from './configure';\nimport defaultValues from './defaults';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nconst log = debug('pie-elements:graphing:configure');\n\nexport default class GraphLinesConfigure extends HTMLElement {\n static createDefaultModel = (model = {}) => ({ ...defaultValues.model, ...model });\n\n constructor() {\n super();\n this._root = null;\n this._model = GraphLinesConfigure.createDefaultModel();\n this._configuration = defaultValues.configuration;\n }\n\n set model(m) {\n this._model = GraphLinesConfigure.createDefaultModel(m);\n this._render();\n }\n\n set configuration(c) {\n const newConfiguration = {\n ...defaultValues.configuration,\n ...c,\n };\n\n this._configuration = newConfiguration;\n\n // if language:enabled is true, then the corresponding default item model should include a language value;\n // if it is false, then the language field should be omitted from the item model.\n // if a default item model includes a language value (e.g., en_US) and the corresponding authoring view settings have language:settings = true,\n // then (a) language:enabled should also be true, and (b) that default language value should be represented in languageChoices[] (as a key).\n if (newConfiguration?.language?.enabled) {\n if (newConfiguration?.languageChoices?.options?.length) {\n this._model.language = newConfiguration?.languageChoices.options[0].value;\n }\n } else if (newConfiguration.language.settings && this._model.language) {\n this._configuration.language.enabled = true;\n\n if (!this._configuration.languageChoices.options || !this._configuration.languageChoices.options.length) {\n this._configuration.languageChoices.options = [];\n }\n\n // check if the language is already included in the languageChoices.options array\n // and if not, then add it.\n if (!this._configuration.languageChoices.options.find((option) => option.value === this._model.language)) {\n this._configuration.languageChoices.options.push({\n value: this._model.language,\n label: this._model.language,\n });\n }\n } else {\n delete this._model.language;\n }\n\n this._render();\n }\n\n onModelChanged(model) {\n this._model = model;\n this._render();\n\n log('[onModelChanged]: ', this._model);\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model));\n }\n\n onConfigurationChanged(config) {\n this._configuration = config;\n this._render();\n }\n\n insertImage(handler) {\n this.dispatchEvent(new InsertImageEvent(handler));\n }\n\n onDeleteImage(src, done) {\n this.dispatchEvent(new DeleteImageEvent(src, done));\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 _render() {\n if (this._model) {\n const el = React.createElement(Configure, {\n onModelChanged: this.onModelChanged.bind(this),\n onConfigurationChanged: this.onConfigurationChanged.bind(this),\n model: this._model,\n configuration: this._configuration,\n imageSupport: {\n add: this.insertImage.bind(this),\n delete: this.onDeleteImage.bind(this),\n },\n uploadSoundSupport: {\n add: this.insertSound.bind(this),\n delete: this.onDeleteSound.bind(this),\n },\n });\n\n if (!this._root) {\n this._root = createRoot(this);\n }\n this._root.render(el);\n queueMicrotask(() => {\n renderMath(this);\n });\n }\n }\n\n connectedCallback() {\n this._render();\n }\n\n disconnectedCallback() {\n if (this._root) {\n this._root.unmount();\n this._root = null;\n }\n }\n}"],"mappings":"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","ignoreList":[]}
|
package/configure/lib/utils.js
DELETED
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getLabelValues = exports.getGridValues = exports.applyConstraints = exports.VALID_LABEL_VALUES = void 0;
|
|
7
|
-
var _lodashEs = require("lodash-es");
|
|
8
|
-
// this file is almost duplicated from graphing/configure/src/utils.js; the same logic must be used in charting
|
|
9
|
-
|
|
10
|
-
const VALID_GRID_VALUES = [0.01, 0.02, 0.04, 0.05, 0.0625, 0.1, 0.125, 0.2, 0.25, 0.5, 1, 2, 3, 4, 5, 8, 10, 12, 15, 20, 40, 50, 64, 100, 500, 1000];
|
|
11
|
-
|
|
12
|
-
// same as VALID_GRID_VALUES but next values are excluded: 0.04, 0.0625, 0.125, 3, 4, 8, 12, 15, 40, 64
|
|
13
|
-
const PREFERRED_VALID_GRID_VALUES = [0.01, 0.02, 0.05, 0.1, 0.2, 0.25, 0.5, 1, 2, 5, 10, 20, 50, 100, 500, 1000];
|
|
14
|
-
const VALID_LABEL_VALUES = exports.VALID_LABEL_VALUES = {
|
|
15
|
-
0.01: [0, 0.01, 0.02, 0.04, 0.05, 0.1],
|
|
16
|
-
0.02: [0, 0.02, 0.04, 0.1],
|
|
17
|
-
0.04: [0, 0.04, 0.08, 0.16, 0.2],
|
|
18
|
-
0.05: [0, 0.05, 0.1, 0.2, 0.25],
|
|
19
|
-
0.0625: [0, 0.0625, 0.125, 0.25, 0.5],
|
|
20
|
-
0.1: [0, 0.1, 0.2, 0.4, 0.5, 1],
|
|
21
|
-
0.125: [0, 0.125, 0.25, 0.5, 1],
|
|
22
|
-
0.2: [0, 0.2, 0.5, 0.1],
|
|
23
|
-
0.25: [0, 0.25, 0.5, 1, 2],
|
|
24
|
-
0.5: [0, 0.5, 1, 2],
|
|
25
|
-
1: [0, 1, 2, 4, 5, 10],
|
|
26
|
-
2: [0, 2, 4, 8, 10],
|
|
27
|
-
3: [0, 3, 6, 12, 15],
|
|
28
|
-
4: [0, 4, 8, 16, 20],
|
|
29
|
-
5: [0, 5, 10, 20, 25],
|
|
30
|
-
8: [0, 8, 16, 32, 40, 64],
|
|
31
|
-
10: [0, 10, 20, 40, 50, 100],
|
|
32
|
-
12: [0, 12, 24],
|
|
33
|
-
15: [0, 15, 30, 60],
|
|
34
|
-
20: [0, 20, 40, 80, 100],
|
|
35
|
-
40: [0, 40, 80, 160, 200],
|
|
36
|
-
50: [0, 50, 100, 200, 250],
|
|
37
|
-
64: [0, 64, 128],
|
|
38
|
-
100: [0, 100, 200, 400, 500],
|
|
39
|
-
500: [0, 500, 1000, 2500],
|
|
40
|
-
1000: [0, 1000, 2000, 4000, 5000]
|
|
41
|
-
};
|
|
42
|
-
const getGridValues = (axis, size, prefferedValues = false) => {
|
|
43
|
-
const minValue = 10 * (axis.max - axis.min) / size;
|
|
44
|
-
const maxValue = minValue * 10;
|
|
45
|
-
|
|
46
|
-
// if preferred values should be used enforce all values to be used if the axis step
|
|
47
|
-
// is included in all supported values and not included in preferred values
|
|
48
|
-
const useAllValues = prefferedValues && !PREFERRED_VALID_GRID_VALUES.includes(axis.step) && VALID_GRID_VALUES.includes(axis.step);
|
|
49
|
-
const values = !prefferedValues || useAllValues ? VALID_GRID_VALUES : PREFERRED_VALID_GRID_VALUES;
|
|
50
|
-
return values.filter(value => value >= minValue && value <= maxValue);
|
|
51
|
-
};
|
|
52
|
-
exports.getGridValues = getGridValues;
|
|
53
|
-
const getLabelValues = value => VALID_LABEL_VALUES[value] || [];
|
|
54
|
-
exports.getLabelValues = getLabelValues;
|
|
55
|
-
const applyConstraints = (axis, size, oldGridValues, oldLabelValues) => {
|
|
56
|
-
const gridValues = getGridValues(axis, size);
|
|
57
|
-
let labelValues = getLabelValues(axis.step || 1);
|
|
58
|
-
if (!(0, _lodashEs.isEqual)(oldGridValues, gridValues) && !gridValues.includes(axis.step)) {
|
|
59
|
-
const preferredValues = getGridValues(axis, size, true);
|
|
60
|
-
const lowestValue = preferredValues[0] || 1;
|
|
61
|
-
axis.step = lowestValue;
|
|
62
|
-
labelValues = getLabelValues(lowestValue);
|
|
63
|
-
if (!labelValues.includes(axis.labelStep)) {
|
|
64
|
-
axis.labelStep = lowestValue;
|
|
65
|
-
}
|
|
66
|
-
return {
|
|
67
|
-
gridValues,
|
|
68
|
-
labelValues
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
if (!(0, _lodashEs.isEqual)(oldLabelValues, labelValues) && !labelValues.includes(axis.labelStep)) {
|
|
72
|
-
axis.labelStep = axis.step;
|
|
73
|
-
}
|
|
74
|
-
return {
|
|
75
|
-
gridValues,
|
|
76
|
-
labelValues
|
|
77
|
-
};
|
|
78
|
-
};
|
|
79
|
-
exports.applyConstraints = applyConstraints;
|
|
80
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":["_lodashEs","require","VALID_GRID_VALUES","PREFERRED_VALID_GRID_VALUES","VALID_LABEL_VALUES","exports","getGridValues","axis","size","prefferedValues","minValue","max","min","maxValue","useAllValues","includes","step","values","filter","value","getLabelValues","applyConstraints","oldGridValues","oldLabelValues","gridValues","labelValues","isEqual","preferredValues","lowestValue","labelStep"],"sources":["../src/utils.js"],"sourcesContent":["// this file is almost duplicated from graphing/configure/src/utils.js; the same logic must be used in charting\nimport { isEqual } from 'lodash-es';\n\nconst VALID_GRID_VALUES = [\n 0.01, 0.02, 0.04, 0.05, 0.0625, 0.1, 0.125, 0.2, 0.25, 0.5, 1, 2, 3, 4, 5, 8, 10, 12, 15, 20, 40, 50, 64, 100, 500,\n 1000,\n];\n\n// same as VALID_GRID_VALUES but next values are excluded: 0.04, 0.0625, 0.125, 3, 4, 8, 12, 15, 40, 64\nconst PREFERRED_VALID_GRID_VALUES = [0.01, 0.02, 0.05, 0.1, 0.2, 0.25, 0.5, 1, 2, 5, 10, 20, 50, 100, 500, 1000];\n\nexport const VALID_LABEL_VALUES = {\n 0.01: [0, 0.01, 0.02, 0.04, 0.05, 0.1],\n 0.02: [0, 0.02, 0.04, 0.1],\n 0.04: [0, 0.04, 0.08, 0.16, 0.2],\n 0.05: [0, 0.05, 0.1, 0.2, 0.25],\n 0.0625: [0, 0.0625, 0.125, 0.25, 0.5],\n 0.1: [0, 0.1, 0.2, 0.4, 0.5, 1],\n 0.125: [0, 0.125, 0.25, 0.5, 1],\n 0.2: [0, 0.2, 0.5, 0.1],\n 0.25: [0, 0.25, 0.5, 1, 2],\n 0.5: [0, 0.5, 1, 2],\n 1: [0, 1, 2, 4, 5, 10],\n 2: [0, 2, 4, 8, 10],\n 3: [0, 3, 6, 12, 15],\n 4: [0, 4, 8, 16, 20],\n 5: [0, 5, 10, 20, 25],\n 8: [0, 8, 16, 32, 40, 64],\n 10: [0, 10, 20, 40, 50, 100],\n 12: [0, 12, 24],\n 15: [0, 15, 30, 60],\n 20: [0, 20, 40, 80, 100],\n 40: [0, 40, 80, 160, 200],\n 50: [0, 50, 100, 200, 250],\n 64: [0, 64, 128],\n 100: [0, 100, 200, 400, 500],\n 500: [0, 500, 1000, 2500],\n 1000: [0, 1000, 2000, 4000, 5000],\n};\n\nexport const getGridValues = (axis, size, prefferedValues = false) => {\n const minValue = (10 * (axis.max - axis.min)) / size;\n const maxValue = minValue * 10;\n\n // if preferred values should be used enforce all values to be used if the axis step\n // is included in all supported values and not included in preferred values\n const useAllValues =\n prefferedValues && !PREFERRED_VALID_GRID_VALUES.includes(axis.step) && VALID_GRID_VALUES.includes(axis.step);\n const values = !prefferedValues || useAllValues ? VALID_GRID_VALUES : PREFERRED_VALID_GRID_VALUES;\n\n return values.filter((value) => value >= minValue && value <= maxValue);\n};\n\nexport const getLabelValues = (value) => VALID_LABEL_VALUES[value] || [];\n\nexport const applyConstraints = (axis, size, oldGridValues, oldLabelValues) => {\n const gridValues = getGridValues(axis, size);\n let labelValues = getLabelValues(axis.step || 1);\n\n if (!isEqual(oldGridValues, gridValues) && !gridValues.includes(axis.step)) {\n const preferredValues = getGridValues(axis, size, true);\n const lowestValue = preferredValues[0] || 1;\n\n axis.step = lowestValue;\n labelValues = getLabelValues(lowestValue);\n\n if (!labelValues.includes(axis.labelStep)) {\n axis.labelStep = lowestValue;\n }\n\n return { gridValues, labelValues };\n }\n\n if (!isEqual(oldLabelValues, labelValues) && !labelValues.includes(axis.labelStep)) {\n axis.labelStep = axis.step;\n }\n\n return { gridValues, labelValues };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
/**
|
|
8
|
-
* NOTE: There's no functionality described for graphTitle,
|
|
9
|
-
* rationale, scoringType, studentInstructions, teacherInstructions
|
|
10
|
-
* so there's no implementation (they are only added in model)
|
|
11
|
-
*/
|
|
12
|
-
var _default = exports.default = {
|
|
13
|
-
addCategoryEnabled: true,
|
|
14
|
-
changeAddCategoryEnabled: false,
|
|
15
|
-
changeEditableEnabled: false,
|
|
16
|
-
changeInteractiveEnabled: false,
|
|
17
|
-
chartType: 'lineCross',
|
|
18
|
-
correctAnswer: {},
|
|
19
|
-
data: [],
|
|
20
|
-
domain: {},
|
|
21
|
-
graph: {
|
|
22
|
-
width: 480,
|
|
23
|
-
height: 480
|
|
24
|
-
},
|
|
25
|
-
prompt: '',
|
|
26
|
-
promptEnabled: true,
|
|
27
|
-
range: {
|
|
28
|
-
label: '',
|
|
29
|
-
max: 1,
|
|
30
|
-
min: 0,
|
|
31
|
-
labelStep: 1
|
|
32
|
-
},
|
|
33
|
-
rationale: '',
|
|
34
|
-
rationaleEnabled: true,
|
|
35
|
-
scoringType: 'all or nothing',
|
|
36
|
-
studentInstructionsEnabled: true,
|
|
37
|
-
studentNewCategoryDefaultLabel: 'New Category',
|
|
38
|
-
teacherInstructions: '',
|
|
39
|
-
teacherInstructionsEnabled: true,
|
|
40
|
-
title: ''
|
|
41
|
-
};
|
|
42
|
-
//# sourceMappingURL=defaults.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","names":["_default","exports","default","addCategoryEnabled","changeAddCategoryEnabled","changeEditableEnabled","changeInteractiveEnabled","chartType","correctAnswer","data","domain","graph","width","height","prompt","promptEnabled","range","label","max","min","labelStep","rationale","rationaleEnabled","scoringType","studentInstructionsEnabled","studentNewCategoryDefaultLabel","teacherInstructions","teacherInstructionsEnabled","title"],"sources":["../src/defaults.js"],"sourcesContent":["/**\n * NOTE: There's no functionality described for graphTitle,\n * rationale, scoringType, studentInstructions, teacherInstructions\n * so there's no implementation (they are only added in model)\n */\n\nexport default {\n addCategoryEnabled: true,\n changeAddCategoryEnabled: false,\n changeEditableEnabled: false,\n changeInteractiveEnabled: false,\n chartType: 'lineCross',\n correctAnswer: {},\n data: [],\n domain: {},\n graph: { width: 480, height: 480 },\n prompt: '',\n promptEnabled: true,\n range: { label: '', max: 1, min: 0, labelStep: 1 },\n rationale: '',\n rationaleEnabled: true,\n scoringType: 'all or nothing',\n studentInstructionsEnabled: true,\n studentNewCategoryDefaultLabel: 'New Category',\n teacherInstructions: '',\n teacherInstructionsEnabled: true,\n title: '',\n};\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AAJA,IAAAA,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAMe;EACbC,kBAAkB,EAAE,IAAI;EACxBC,wBAAwB,EAAE,KAAK;EAC/BC,qBAAqB,EAAE,KAAK;EAC5BC,wBAAwB,EAAE,KAAK;EAC/BC,SAAS,EAAE,WAAW;EACtBC,aAAa,EAAE,CAAC,CAAC;EACjBC,IAAI,EAAE,EAAE;EACRC,MAAM,EAAE,CAAC,CAAC;EACVC,KAAK,EAAE;IAAEC,KAAK,EAAE,GAAG;IAAEC,MAAM,EAAE;EAAI,CAAC;EAClCC,MAAM,EAAE,EAAE;EACVC,aAAa,EAAE,IAAI;EACnBC,KAAK,EAAE;IAAEC,KAAK,EAAE,EAAE;IAAEC,GAAG,EAAE,CAAC;IAAEC,GAAG,EAAE,CAAC;IAAEC,SAAS,EAAE;EAAE,CAAC;EAClDC,SAAS,EAAE,EAAE;EACbC,gBAAgB,EAAE,IAAI;EACtBC,WAAW,EAAE,gBAAgB;EAC7BC,0BAA0B,EAAE,IAAI;EAChCC,8BAA8B,EAAE,cAAc;EAC9CC,mBAAmB,EAAE,EAAE;EACvBC,0BAA0B,EAAE,IAAI;EAChCC,KAAK,EAAE;AACT,CAAC","ignoreList":[]}
|