@pie-element/select-text 8.3.3-next.9 → 8.4.1-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/CHANGELOG.md +13 -0
- package/configure/CHANGELOG.md +13 -0
- package/configure/lib/defaultConfiguration.js +47 -3
- package/configure/lib/defaultConfiguration.js.map +1 -1
- package/configure/lib/design.js +12 -0
- package/configure/lib/design.js.map +1 -1
- package/configure/package.json +2 -2
- package/controller/CHANGELOG.md +11 -0
- package/controller/package.json +2 -2
- package/docs/config-schema.json +264 -3
- package/docs/config-schema.json.md +188 -0
- package/docs/pie-schema.json +105 -0
- package/docs/pie-schema.json.md +76 -0
- package/module/configure.js +89 -32
- package/module/element.js +11 -6
- package/module/index.html +1 -1
- package/module/manifest.json +6 -2
- package/module/print.html +1 -1
- package/module/print.js +11 -6
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,19 @@
|
|
|
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
|
+
# [8.4.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text@8.3.2...@pie-element/select-text@8.4.0) (2024-03-04)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* Add configuration for custom buttons PD-3506 ([0fa8fee](https://github.com/pie-framework/pie-elements/commit/0fa8fee71238f31f3c94be66263a58595e19b407))
|
|
12
|
+
* Add configuration for custom buttons PD-3506 ([690e6d3](https://github.com/pie-framework/pie-elements/commit/690e6d31cf66ad02287501ad5cb9c5cc22d6b088))
|
|
13
|
+
* update pie-lib/pie-toolbox version PD-1870 and PD-3501 ([8df1d8d](https://github.com/pie-framework/pie-elements/commit/8df1d8d281a0d6023d5a9c0e6fdd29fea71b6ac1))
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
6
19
|
## [8.3.2](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text@8.3.1...@pie-element/select-text@8.3.2) (2024-02-20)
|
|
7
20
|
|
|
8
21
|
|
package/configure/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,19 @@
|
|
|
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
|
+
# [7.4.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text-configure@7.3.2...@pie-element/select-text-configure@7.4.0) (2024-03-04)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* Add configuration for custom buttons PD-3506 ([0fa8fee](https://github.com/pie-framework/pie-elements/commit/0fa8fee71238f31f3c94be66263a58595e19b407))
|
|
12
|
+
* Add configuration for custom buttons PD-3506 ([690e6d3](https://github.com/pie-framework/pie-elements/commit/690e6d31cf66ad02287501ad5cb9c5cc22d6b088))
|
|
13
|
+
* update pie-lib/pie-toolbox version PD-1870 and PD-3501 ([8df1d8d](https://github.com/pie-framework/pie-elements/commit/8df1d8d281a0d6023d5a9c0e6fdd29fea71b6ac1))
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
6
19
|
## [7.3.2](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text-configure@7.3.1...@pie-element/select-text-configure@7.3.2) (2024-02-20)
|
|
7
20
|
|
|
8
21
|
|
|
@@ -31,6 +31,17 @@ var _default = {
|
|
|
31
31
|
toolbarEditorPosition: 'bottom'
|
|
32
32
|
},
|
|
33
33
|
configuration: {
|
|
34
|
+
baseInputConfiguration: {
|
|
35
|
+
audio: {
|
|
36
|
+
disabled: false
|
|
37
|
+
},
|
|
38
|
+
video: {
|
|
39
|
+
disabled: false
|
|
40
|
+
},
|
|
41
|
+
image: {
|
|
42
|
+
disabled: false
|
|
43
|
+
}
|
|
44
|
+
},
|
|
34
45
|
selectionCount: {
|
|
35
46
|
settings: true,
|
|
36
47
|
label: 'Selection count'
|
|
@@ -49,7 +60,18 @@ var _default = {
|
|
|
49
60
|
},
|
|
50
61
|
rationale: {
|
|
51
62
|
settings: true,
|
|
52
|
-
label: 'Rationale'
|
|
63
|
+
label: 'Rationale',
|
|
64
|
+
inputConfiguration: {
|
|
65
|
+
audio: {
|
|
66
|
+
disabled: false
|
|
67
|
+
},
|
|
68
|
+
video: {
|
|
69
|
+
disabled: false
|
|
70
|
+
},
|
|
71
|
+
image: {
|
|
72
|
+
disabled: false
|
|
73
|
+
}
|
|
74
|
+
}
|
|
53
75
|
},
|
|
54
76
|
scoringType: {
|
|
55
77
|
settings: false,
|
|
@@ -61,11 +83,33 @@ var _default = {
|
|
|
61
83
|
},
|
|
62
84
|
teacherInstructions: {
|
|
63
85
|
settings: true,
|
|
64
|
-
label: 'Teacher Instructions'
|
|
86
|
+
label: 'Teacher Instructions',
|
|
87
|
+
inputConfiguration: {
|
|
88
|
+
audio: {
|
|
89
|
+
disabled: false
|
|
90
|
+
},
|
|
91
|
+
video: {
|
|
92
|
+
disabled: false
|
|
93
|
+
},
|
|
94
|
+
image: {
|
|
95
|
+
disabled: false
|
|
96
|
+
}
|
|
97
|
+
}
|
|
65
98
|
},
|
|
66
99
|
prompt: {
|
|
67
100
|
label: 'Prompt',
|
|
68
|
-
settings: true
|
|
101
|
+
settings: true,
|
|
102
|
+
inputConfiguration: {
|
|
103
|
+
audio: {
|
|
104
|
+
disabled: false
|
|
105
|
+
},
|
|
106
|
+
video: {
|
|
107
|
+
disabled: false
|
|
108
|
+
},
|
|
109
|
+
image: {
|
|
110
|
+
disabled: false
|
|
111
|
+
}
|
|
112
|
+
}
|
|
69
113
|
},
|
|
70
114
|
text: {
|
|
71
115
|
settings: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/defaultConfiguration.js"],"names":["tokens","text","start","end","model","highlightChoices","partialScoring","maxSelections","mode","prompt","scoringType","feedbackEnabled","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","toolbarEditorPosition","configuration","selectionCount","settings","label","correctAnswer","selections","rationale","studentInstructions","teacherInstructions","feedback","spellCheck","enabled","minTokens","maxImageWidth","maxImageHeight","withRubric","mathMlOptions","mmlOutput","mmlEditing","language","languageChoices","options"],"mappings":";;;;;;;AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS;AAAA,SAAM,CACnB;AACEC,IAAAA,IAAI,EAAE,EADR;AAEEC,IAAAA,KAAK,EAAE,CAFT;AAGEC,IAAAA,GAAG,EAAE;AAHP,GADmB,CAAN;AAAA,CAAf;;eAQe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,gBAAgB,EAAE,KADb;AAELC,IAAAA,cAAc,EAAE,KAFX;AAGLC,IAAAA,aAAa,EAAE,CAHV;AAILC,IAAAA,IAAI,EAAE,UAJD;AAKLC,IAAAA,MAAM,EAAE,2BALH;AAMLR,IAAAA,IAAI,EAAE,EAND;AAOLD,IAAAA,MAAM,EAAEA,MAAM,EAPT;AAQLU,IAAAA,WAAW,EAAE,MARR;AASLC,IAAAA,eAAe,EAAE,KATZ;AAULC,IAAAA,gBAAgB,EAAE,IAVb;AAWLC,IAAAA,aAAa,EAAE,IAXV;AAYLC,IAAAA,0BAA0B,EAAE,IAZvB;AAaLC,IAAAA,0BAA0B,EAAE,IAbvB;AAcLC,IAAAA,qBAAqB,EAAE;AAdlB,GADM;AAiBbC,EAAAA,aAAa,EAAE;AACbC,IAAAA,cAAc,EAAE;AACdC,MAAAA,QAAQ,EAAE,IADI;AAEdC,MAAAA,KAAK,EAAE;AAFO,
|
|
1
|
+
{"version":3,"sources":["../src/defaultConfiguration.js"],"names":["tokens","text","start","end","model","highlightChoices","partialScoring","maxSelections","mode","prompt","scoringType","feedbackEnabled","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","toolbarEditorPosition","configuration","baseInputConfiguration","audio","disabled","video","image","selectionCount","settings","label","correctAnswer","selections","rationale","inputConfiguration","studentInstructions","teacherInstructions","feedback","spellCheck","enabled","minTokens","maxImageWidth","maxImageHeight","withRubric","mathMlOptions","mmlOutput","mmlEditing","language","languageChoices","options"],"mappings":"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","sourcesContent":["const tokens = () => [\n {\n text: '',\n start: 0,\n end: 0,\n },\n];\n\nexport default {\n model: {\n highlightChoices: false,\n partialScoring: false,\n maxSelections: 2,\n mode: 'sentence',\n prompt: 'Question Prompt goes here',\n text: '',\n tokens: tokens(),\n scoringType: 'auto',\n feedbackEnabled: false,\n rationaleEnabled: true,\n promptEnabled: true,\n teacherInstructionsEnabled: true,\n studentInstructionsEnabled: true,\n toolbarEditorPosition: 'bottom',\n },\n configuration: {\n baseInputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n selectionCount: {\n settings: true,\n label: 'Selection count',\n },\n correctAnswer: {\n settings: true,\n label: 'Correct Answers',\n },\n selections: {\n settings: true,\n label: 'Selections Available',\n },\n highlightChoices: {\n settings: true,\n label: 'Highlight choices',\n },\n rationale: {\n settings: true,\n label: 'Rationale',\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n },\n scoringType: {\n settings: false,\n label: 'Scoring Type',\n },\n studentInstructions: {\n settings: false,\n label: 'Student Instructions',\n },\n teacherInstructions: {\n settings: true,\n label: 'Teacher Instructions',\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n },\n prompt: {\n label: 'Prompt',\n settings: true,\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n },\n text: {\n settings: true,\n label: 'Content',\n },\n tokens: {\n settings: true,\n label: 'Tokens',\n },\n feedback: {\n settings: true,\n label: 'Feedback',\n },\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n partialScoring: {\n settings: false,\n label: 'Allow Partial Scoring',\n },\n mode: {\n settings: true,\n label: 'Mode',\n },\n minTokens: 2,\n maxImageWidth: {\n teacherInstructions: 300,\n prompt: 300,\n rationale: 300,\n },\n maxImageHeight: {\n teacherInstructions: 300,\n prompt: 300,\n rationale: 300,\n },\n withRubric: {\n settings: false,\n label: 'Add Rubric',\n },\n mathMlOptions: {\n mmlOutput: false,\n mmlEditing: false,\n },\n language: {\n settings: false,\n label: 'Specify Language',\n enabled: false,\n },\n languageChoices: {\n label: 'Language Choices',\n options: [],\n },\n },\n};\n"],"file":"defaultConfiguration.js"}
|
package/configure/lib/design.js
CHANGED
|
@@ -164,6 +164,8 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
164
164
|
}, {
|
|
165
165
|
key: "render",
|
|
166
166
|
value: function render() {
|
|
167
|
+
var _configuration$teache, _configuration$prompt, _configuration$ration;
|
|
168
|
+
|
|
167
169
|
var textValue = this.state.text;
|
|
168
170
|
var _this$props6 = this.props,
|
|
169
171
|
classes = _this$props6.classes,
|
|
@@ -175,6 +177,8 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
175
177
|
uploadSoundSupport = _this$props6.uploadSoundSupport;
|
|
176
178
|
|
|
177
179
|
var _ref = configuration || {},
|
|
180
|
+
_ref$baseInputConfigu = _ref.baseInputConfiguration,
|
|
181
|
+
baseInputConfiguration = _ref$baseInputConfigu === void 0 ? {} : _ref$baseInputConfigu,
|
|
178
182
|
_ref$correctAnswer = _ref.correctAnswer,
|
|
179
183
|
correctAnswer = _ref$correctAnswer === void 0 ? {} : _ref$correctAnswer,
|
|
180
184
|
_ref$contentDimension = _ref.contentDimensions,
|
|
@@ -259,6 +263,11 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
259
263
|
scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric']),
|
|
260
264
|
rubricEnabled: (withRubric === null || withRubric === void 0 ? void 0 : withRubric.settings) && toggle(withRubric === null || withRubric === void 0 ? void 0 : withRubric.label)
|
|
261
265
|
};
|
|
266
|
+
|
|
267
|
+
var getPluginProps = function getPluginProps(props) {
|
|
268
|
+
return Object.assign(_objectSpread({}, baseInputConfiguration), props || {});
|
|
269
|
+
};
|
|
270
|
+
|
|
262
271
|
return /*#__PURE__*/_react["default"].createElement(_configUi.layout.ConfigLayout, {
|
|
263
272
|
dimensions: contentDimensions,
|
|
264
273
|
hideSettings: settingsPanelDisabled,
|
|
@@ -284,6 +293,7 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
284
293
|
imageSupport: imageSupport,
|
|
285
294
|
nonEmpty: false,
|
|
286
295
|
toolbarOpts: toolbarOpts,
|
|
296
|
+
pluginProps: getPluginProps(configuration === null || configuration === void 0 ? void 0 : (_configuration$teache = configuration.teacherInstructions) === null || _configuration$teache === void 0 ? void 0 : _configuration$teache.inputConfiguration),
|
|
287
297
|
spellCheck: spellCheckEnabled,
|
|
288
298
|
maxImageWidth: maxImageWidth && maxImageWidth.teacherInstructions || defaultImageMaxWidth,
|
|
289
299
|
maxImageHeight: maxImageHeight && maxImageHeight.teacherInstructions || defaultImageMaxHeight,
|
|
@@ -303,6 +313,7 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
303
313
|
onChange: this.onPromptChanged,
|
|
304
314
|
imageSupport: imageSupport,
|
|
305
315
|
toolbarOpts: toolbarOpts,
|
|
316
|
+
pluginProps: getPluginProps(configuration === null || configuration === void 0 ? void 0 : (_configuration$prompt = configuration.prompt) === null || _configuration$prompt === void 0 ? void 0 : _configuration$prompt.inputConfiguration),
|
|
306
317
|
spellCheck: spellCheckEnabled,
|
|
307
318
|
maxImageWidth: defaultImageMaxWidth,
|
|
308
319
|
maxImageHeight: defaultImageMaxHeight,
|
|
@@ -381,6 +392,7 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
381
392
|
onChange: this.onRationaleChanged,
|
|
382
393
|
imageSupport: imageSupport,
|
|
383
394
|
toolbarOpts: toolbarOpts,
|
|
395
|
+
pluginProps: getPluginProps(configuration === null || configuration === void 0 ? void 0 : (_configuration$ration = configuration.rationale) === null || _configuration$ration === void 0 ? void 0 : _configuration$ration.inputConfiguration),
|
|
384
396
|
spellCheck: spellCheckEnabled,
|
|
385
397
|
maxImageWidth: maxImageWidth && maxImageWidth.rationale || defaultImageMaxWidth,
|
|
386
398
|
maxImageHeight: maxImageHeight && maxImageHeight.rationale || defaultImageMaxHeight,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/design.jsx"],"names":["Panel","settings","toggle","radio","dropdown","log","Design","props","val","apply","u","text","tokens","event","updateText","target","value","mode","correctTokenCount","filter","t","correct","length","max","isFinite","maxSelections","Math","fn","onModelChanged","model","update","feedback","partialScoring","prompt","teacherInstructions","rationale","state","nProps","setState","textValue","classes","configuration","imageSupport","onConfigurationChanged","uploadSoundSupport","correctAnswer","contentDimensions","highlightChoices","selectionCount","selections","settingsPanelDisabled","scoringType","spellCheck","studentInstructions","maxImageWidth","maxImageHeight","withRubric","mathMlOptions","language","languageChoices","errors","feedbackEnabled","promptEnabled","rationaleEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","tokensError","selectionsError","validationMessage","defaultImageMaxWidth","defaultImageMaxHeight","tokensModel","toolbarOpts","position","panelSettings","label","enabled","options","panelProperties","studentInstructionsEnabled","rubricEnabled","Settings","Properties","promptHolder","onTeacherInstructionsChanged","onPromptChanged","input","changeText","tokenizerContainer","tooltip","left","top","tokenizer","changeTokens","errorText","tokensDetails","chip","changeMaxSelections","numberField","onRationaleChanged","changeFeedback","React","Component","PropTypes","object","isRequired","func","shape","add","theme","paddingRight","marginRight","bottom","right","height","content","backgroundColor","palette","primary","main","marginBottom","spacing","unit","marginTop","width","mainOpts","justifyContent","display","alignItems","paddingTop","flexWrap","margin","fontSize","typography","whiteSpace","maxWidth","color","error","paddingBottom"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport TextField from '@material-ui/core/TextField';\nimport { withStyles } from '@material-ui/core/styles';\nimport cloneDeep from 'lodash/cloneDeep';\nimport debounce from 'lodash/debounce';\nimport { Tokenizer } from '@pie-lib/pie-toolbox/text-select';\nimport { InputContainer, NumberTextField, FeedbackConfig, settings, layout } from '@pie-lib/pie-toolbox/config-ui';\nimport Chip from '@material-ui/core/Chip';\nimport Info from '@material-ui/icons/Info';\nimport debug from 'debug';\nimport {EditableHtml} from '@pie-lib/pie-toolbox/editable-html';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport { generateValidationMessage } from './utils';\n\nconst { Panel, toggle, radio, dropdown } = settings;\n\nconst log = debug('@pie-element:select-text:configure');\n\nexport class Design extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n uploadSoundSupport: PropTypes.object,\n };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n\n const { model } = this.props;\n\n this.state = {\n text: (model && model.text) || '',\n };\n }\n\n UNSAFE_componentWillReceiveProps(nProps) {\n const { model } = nProps;\n\n if (model && model.text) {\n this.setState({\n text: model.text,\n });\n }\n }\n\n updateText = debounce((val) => {\n this.apply((u) => {\n u.text = val;\n u.tokens = [];\n });\n }, 200);\n\n changeText = (event) => this.updateText(event.target.value);\n\n changeTokens = (tokens, mode) => {\n this.apply((u) => {\n u.tokens = tokens;\n u.mode = mode;\n\n const correctTokenCount = tokens.filter((t) => t.correct).length;\n const max = isFinite(u.maxSelections) ? u.maxSelections : 0;\n\n u.maxSelections = Math.max(max, correctTokenCount);\n });\n };\n\n changeMaxSelections = (event, max) => {\n this.apply((u) => (u.maxSelections = max));\n };\n\n apply = (fn) => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n\n fn(update);\n onModelChanged(update);\n };\n\n changeFeedback = (feedback) => {\n this.apply((u) => (u.feedback = feedback));\n };\n\n changePartialScoring = (partialScoring) => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n update.partialScoring = partialScoring;\n\n onModelChanged(update);\n };\n\n onPromptChanged = (prompt) => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n\n update.prompt = prompt;\n onModelChanged(update);\n };\n\n onTeacherInstructionsChanged = (teacherInstructions) => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n\n update.teacherInstructions = teacherInstructions;\n onModelChanged(update);\n };\n\n onRationaleChanged = (rationale) => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({ ...model, rationale });\n };\n\n render() {\n const { text: textValue } = this.state;\n const { classes, configuration, imageSupport, model, onConfigurationChanged, onModelChanged, uploadSoundSupport } =\n this.props;\n const {\n correctAnswer = {},\n contentDimensions = {},\n feedback = {},\n highlightChoices = {},\n mode = {},\n partialScoring = {},\n prompt = {},\n rationale = {},\n selectionCount = {},\n selections = {},\n settingsPanelDisabled,\n scoringType = {},\n spellCheck = {},\n studentInstructions = {},\n teacherInstructions = {},\n text = {},\n tokens = {},\n maxImageWidth = {},\n maxImageHeight = {},\n withRubric = {},\n mathMlOptions = {},\n language = {},\n languageChoices = {},\n } = configuration || {};\n const {\n errors,\n feedbackEnabled,\n promptEnabled,\n rationaleEnabled,\n spellCheckEnabled,\n teacherInstructionsEnabled,\n toolbarEditorPosition,\n } = model || {};\n\n const { tokensError, selectionsError } = errors || {};\n const validationMessage = generateValidationMessage(configuration);\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n let { tokens: tokensModel } = model;\n tokensModel = tokensModel || [];\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n log('[render] maxSelections:', model.maxSelections);\n\n const panelSettings = {\n partialScoring: partialScoring.settings && toggle(partialScoring.label),\n highlightChoices: highlightChoices.settings && toggle(highlightChoices.label),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n 'language.enabled': language.settings && toggle(language.label, true),\n language: language.settings && language.enabled && dropdown(languageChoices.label, languageChoices.options),\n };\n\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),\n promptEnabled: prompt.settings && toggle(prompt.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric']),\n rubricEnabled: withRubric?.settings && toggle(withRubric?.label),\n };\n\n return (\n <layout.ConfigLayout\n dimensions={contentDimensions}\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(model) => onModelChanged(model)}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.onTeacherInstructionsChanged}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.teacherInstructions) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.teacherInstructions) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer label={prompt.label || ''} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.prompt}\n onChange={this.onPromptChanged}\n imageSupport={imageSupport}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={defaultImageMaxWidth}\n maxImageHeight={defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </InputContainer>\n )}\n\n {text.settings && (\n <InputContainer label={text.label || ''} className={classes.promptHolder}>\n <TextField\n className={classes.input}\n multiline\n defaultValue={textValue}\n onChange={this.changeText}\n spellCheck={spellCheckEnabled}\n />\n </InputContainer>\n )}\n\n {tokens.settings && (\n <InputContainer label={tokens.label || ''} className={classes.tokenizerContainer}>\n <Tooltip\n classes={{ tooltip: classes.tooltip }}\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} style={{ position: 'absolute', left: '48px', top: '-3px' }} />\n </Tooltip>\n\n <Tokenizer\n className={classes.tokenizer}\n text={model.text}\n tokens={tokensModel}\n onChange={this.changeTokens}\n />\n </InputContainer>\n )}\n {tokensError && <div className={classes.errorText}>{tokensError}</div>}\n {selectionsError && <div className={classes.errorText}>{selectionsError}</div>}\n\n <div className={classes.tokensDetails}>\n {mode.settings && (\n <Chip label={`${mode.label}: ${model.mode ? model.mode : 'None'}`} className={classes.chip} />\n )}\n\n {selections.settings && (\n <Chip label={`${selections.label}: ${tokensModel.length}`} className={classes.chip} />\n )}\n\n {correctAnswer.settings && (\n <Chip\n label={`${correctAnswer.label}: ${tokensModel.filter((t) => t.correct).length}`}\n className={classes.chip}\n />\n )}\n\n {selectionCount.settings && (\n <NumberTextField\n min={tokensModel.filter((t) => t.correct).length || 0}\n label={`${selectionCount.label} (0:any)`}\n max={tokensModel.length}\n value={model.maxSelections}\n onChange={this.changeMaxSelections}\n className={classes.numberField}\n />\n )}\n </div>\n\n {rationaleEnabled && (\n <InputContainer label={rationale.label || ''} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.rationale || ''}\n onChange={this.onRationaleChanged}\n imageSupport={imageSupport}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.rationale) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.rationale) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </InputContainer>\n )}\n\n {feedbackEnabled && (\n <FeedbackConfig feedback={model.feedback} onChange={this.changeFeedback} toolbarOpts={toolbarOpts} />\n )}\n </layout.ConfigLayout>\n );\n }\n}\n\nexport default withStyles((theme) => ({\n tokenizerContainer: {\n paddingRight: 0,\n marginRight: 0,\n '&:after': {\n position: 'absolute',\n bottom: 0,\n left: 0,\n right: 0,\n height: '1px',\n content: '\"\"',\n backgroundColor: theme.palette.primary.main,\n },\n marginBottom: theme.spacing.unit,\n },\n chip: {\n marginTop: theme.spacing.unit / 2,\n marginRight: theme.spacing.unit * 2,\n },\n input: {\n width: '100%',\n },\n tokenizer: {\n marginTop: theme.spacing.unit * 2,\n },\n mainOpts: {\n width: '100%',\n justifyContent: 'space-between',\n display: 'flex',\n alignItems: 'baseline',\n },\n promptHolder: {\n width: '100%',\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n tokensDetails: {\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n marginBottom: theme.spacing.unit * 2.5,\n },\n numberField: {\n width: '180px',\n margin: `${theme.spacing.unit / 2}px auto 0`,\n },\n tooltip: {\n fontSize: theme.typography.fontSize - 2,\n whiteSpace: 'pre',\n maxWidth: '500px',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingBottom: theme.spacing.unit,\n },\n}))(Design);\n"],"file":"design.js"}
|
|
1
|
+
{"version":3,"sources":["../src/design.jsx"],"names":["Panel","settings","toggle","radio","dropdown","log","Design","props","val","apply","u","text","tokens","event","updateText","target","value","mode","correctTokenCount","filter","t","correct","length","max","isFinite","maxSelections","Math","fn","onModelChanged","model","update","feedback","partialScoring","prompt","teacherInstructions","rationale","state","nProps","setState","textValue","classes","configuration","imageSupport","onConfigurationChanged","uploadSoundSupport","baseInputConfiguration","correctAnswer","contentDimensions","highlightChoices","selectionCount","selections","settingsPanelDisabled","scoringType","spellCheck","studentInstructions","maxImageWidth","maxImageHeight","withRubric","mathMlOptions","language","languageChoices","errors","feedbackEnabled","promptEnabled","rationaleEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","tokensError","selectionsError","validationMessage","defaultImageMaxWidth","defaultImageMaxHeight","tokensModel","toolbarOpts","position","panelSettings","label","enabled","options","panelProperties","studentInstructionsEnabled","rubricEnabled","getPluginProps","Object","assign","Settings","Properties","promptHolder","onTeacherInstructionsChanged","inputConfiguration","onPromptChanged","input","changeText","tokenizerContainer","tooltip","left","top","tokenizer","changeTokens","errorText","tokensDetails","chip","changeMaxSelections","numberField","onRationaleChanged","changeFeedback","React","Component","PropTypes","object","isRequired","func","shape","add","theme","paddingRight","marginRight","bottom","right","height","content","backgroundColor","palette","primary","main","marginBottom","spacing","unit","marginTop","width","mainOpts","justifyContent","display","alignItems","paddingTop","flexWrap","margin","fontSize","typography","whiteSpace","maxWidth","color","error","paddingBottom"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport TextField from '@material-ui/core/TextField';\nimport { withStyles } from '@material-ui/core/styles';\nimport cloneDeep from 'lodash/cloneDeep';\nimport debounce from 'lodash/debounce';\nimport { Tokenizer } from '@pie-lib/pie-toolbox/text-select';\nimport { InputContainer, NumberTextField, FeedbackConfig, settings, layout } from '@pie-lib/pie-toolbox/config-ui';\nimport Chip from '@material-ui/core/Chip';\nimport Info from '@material-ui/icons/Info';\nimport debug from 'debug';\nimport { EditableHtml } from '@pie-lib/pie-toolbox/editable-html';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport { generateValidationMessage } from './utils';\n\nconst { Panel, toggle, radio, dropdown } = settings;\n\nconst log = debug('@pie-element:select-text:configure');\n\nexport class Design extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n uploadSoundSupport: PropTypes.object,\n };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n\n const { model } = this.props;\n\n this.state = {\n text: (model && model.text) || '',\n };\n }\n\n UNSAFE_componentWillReceiveProps(nProps) {\n const { model } = nProps;\n\n if (model && model.text) {\n this.setState({\n text: model.text,\n });\n }\n }\n\n updateText = debounce((val) => {\n this.apply((u) => {\n u.text = val;\n u.tokens = [];\n });\n }, 200);\n\n changeText = (event) => this.updateText(event.target.value);\n\n changeTokens = (tokens, mode) => {\n this.apply((u) => {\n u.tokens = tokens;\n u.mode = mode;\n\n const correctTokenCount = tokens.filter((t) => t.correct).length;\n const max = isFinite(u.maxSelections) ? u.maxSelections : 0;\n\n u.maxSelections = Math.max(max, correctTokenCount);\n });\n };\n\n changeMaxSelections = (event, max) => {\n this.apply((u) => (u.maxSelections = max));\n };\n\n apply = (fn) => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n\n fn(update);\n onModelChanged(update);\n };\n\n changeFeedback = (feedback) => {\n this.apply((u) => (u.feedback = feedback));\n };\n\n changePartialScoring = (partialScoring) => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n update.partialScoring = partialScoring;\n\n onModelChanged(update);\n };\n\n onPromptChanged = (prompt) => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n\n update.prompt = prompt;\n onModelChanged(update);\n };\n\n onTeacherInstructionsChanged = (teacherInstructions) => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n\n update.teacherInstructions = teacherInstructions;\n onModelChanged(update);\n };\n\n onRationaleChanged = (rationale) => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({ ...model, rationale });\n };\n\n render() {\n const { text: textValue } = this.state;\n const { classes, configuration, imageSupport, model, onConfigurationChanged, onModelChanged, uploadSoundSupport } =\n this.props;\n const {\n baseInputConfiguration = {},\n correctAnswer = {},\n contentDimensions = {},\n feedback = {},\n highlightChoices = {},\n mode = {},\n partialScoring = {},\n prompt = {},\n rationale = {},\n selectionCount = {},\n selections = {},\n settingsPanelDisabled,\n scoringType = {},\n spellCheck = {},\n studentInstructions = {},\n teacherInstructions = {},\n text = {},\n tokens = {},\n maxImageWidth = {},\n maxImageHeight = {},\n withRubric = {},\n mathMlOptions = {},\n language = {},\n languageChoices = {},\n } = configuration || {};\n const {\n errors,\n feedbackEnabled,\n promptEnabled,\n rationaleEnabled,\n spellCheckEnabled,\n teacherInstructionsEnabled,\n toolbarEditorPosition,\n } = model || {};\n\n const { tokensError, selectionsError } = errors || {};\n const validationMessage = generateValidationMessage(configuration);\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n let { tokens: tokensModel } = model;\n tokensModel = tokensModel || [];\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n log('[render] maxSelections:', model.maxSelections);\n\n const panelSettings = {\n partialScoring: partialScoring.settings && toggle(partialScoring.label),\n highlightChoices: highlightChoices.settings && toggle(highlightChoices.label),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n 'language.enabled': language.settings && toggle(language.label, true),\n language: language.settings && language.enabled && dropdown(languageChoices.label, languageChoices.options),\n };\n\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),\n promptEnabled: prompt.settings && toggle(prompt.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric']),\n rubricEnabled: withRubric?.settings && toggle(withRubric?.label),\n };\n\n const getPluginProps = (props) => {\n return Object.assign(\n {\n ...baseInputConfiguration,\n },\n props || {},\n );\n };\n\n return (\n <layout.ConfigLayout\n dimensions={contentDimensions}\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(model) => onModelChanged(model)}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.onTeacherInstructionsChanged}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(configuration?.teacherInstructions?.inputConfiguration)}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.teacherInstructions) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.teacherInstructions) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer label={prompt.label || ''} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.prompt}\n onChange={this.onPromptChanged}\n imageSupport={imageSupport}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(configuration?.prompt?.inputConfiguration)}\n spellCheck={spellCheckEnabled}\n maxImageWidth={defaultImageMaxWidth}\n maxImageHeight={defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </InputContainer>\n )}\n\n {text.settings && (\n <InputContainer label={text.label || ''} className={classes.promptHolder}>\n <TextField\n className={classes.input}\n multiline\n defaultValue={textValue}\n onChange={this.changeText}\n spellCheck={spellCheckEnabled}\n />\n </InputContainer>\n )}\n\n {tokens.settings && (\n <InputContainer label={tokens.label || ''} className={classes.tokenizerContainer}>\n <Tooltip\n classes={{ tooltip: classes.tooltip }}\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} style={{ position: 'absolute', left: '48px', top: '-3px' }} />\n </Tooltip>\n\n <Tokenizer\n className={classes.tokenizer}\n text={model.text}\n tokens={tokensModel}\n onChange={this.changeTokens}\n />\n </InputContainer>\n )}\n {tokensError && <div className={classes.errorText}>{tokensError}</div>}\n {selectionsError && <div className={classes.errorText}>{selectionsError}</div>}\n\n <div className={classes.tokensDetails}>\n {mode.settings && (\n <Chip label={`${mode.label}: ${model.mode ? model.mode : 'None'}`} className={classes.chip} />\n )}\n\n {selections.settings && (\n <Chip label={`${selections.label}: ${tokensModel.length}`} className={classes.chip} />\n )}\n\n {correctAnswer.settings && (\n <Chip\n label={`${correctAnswer.label}: ${tokensModel.filter((t) => t.correct).length}`}\n className={classes.chip}\n />\n )}\n\n {selectionCount.settings && (\n <NumberTextField\n min={tokensModel.filter((t) => t.correct).length || 0}\n label={`${selectionCount.label} (0:any)`}\n max={tokensModel.length}\n value={model.maxSelections}\n onChange={this.changeMaxSelections}\n className={classes.numberField}\n />\n )}\n </div>\n\n {rationaleEnabled && (\n <InputContainer label={rationale.label || ''} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.rationale || ''}\n onChange={this.onRationaleChanged}\n imageSupport={imageSupport}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(configuration?.rationale?.inputConfiguration)}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.rationale) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.rationale) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </InputContainer>\n )}\n\n {feedbackEnabled && (\n <FeedbackConfig feedback={model.feedback} onChange={this.changeFeedback} toolbarOpts={toolbarOpts} />\n )}\n </layout.ConfigLayout>\n );\n }\n}\n\nexport default withStyles((theme) => ({\n tokenizerContainer: {\n paddingRight: 0,\n marginRight: 0,\n '&:after': {\n position: 'absolute',\n bottom: 0,\n left: 0,\n right: 0,\n height: '1px',\n content: '\"\"',\n backgroundColor: theme.palette.primary.main,\n },\n marginBottom: theme.spacing.unit,\n },\n chip: {\n marginTop: theme.spacing.unit / 2,\n marginRight: theme.spacing.unit * 2,\n },\n input: {\n width: '100%',\n },\n tokenizer: {\n marginTop: theme.spacing.unit * 2,\n },\n mainOpts: {\n width: '100%',\n justifyContent: 'space-between',\n display: 'flex',\n alignItems: 'baseline',\n },\n promptHolder: {\n width: '100%',\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n tokensDetails: {\n display: 'flex',\n alignItems: 'center',\n flexWrap: 'wrap',\n marginBottom: theme.spacing.unit * 2.5,\n },\n numberField: {\n width: '180px',\n margin: `${theme.spacing.unit / 2}px auto 0`,\n },\n tooltip: {\n fontSize: theme.typography.fontSize - 2,\n whiteSpace: 'pre',\n maxWidth: '500px',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingBottom: theme.spacing.unit,\n },\n}))(Design);\n"],"file":"design.js"}
|
package/configure/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/select-text-configure",
|
|
3
3
|
"private": true,
|
|
4
|
-
"version": "7.
|
|
4
|
+
"version": "7.4.0",
|
|
5
5
|
"description": "",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"module": "src/index.js",
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"@material-ui/core": "^3.9.2",
|
|
10
10
|
"@pie-framework/pie-configure-events": "^1.3.0",
|
|
11
|
-
"@pie-lib/pie-toolbox": "1.
|
|
11
|
+
"@pie-lib/pie-toolbox": "1.8.1",
|
|
12
12
|
"debug": "^3.1.0",
|
|
13
13
|
"lodash": "^4.17.15",
|
|
14
14
|
"prop-types": "^15.6.2",
|
package/controller/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
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.3.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text-controller@5.2.2...@pie-element/select-text-controller@5.3.0) (2024-03-04)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* update pie-lib/pie-toolbox version PD-1870 and PD-3501 ([8df1d8d](https://github.com/pie-framework/pie-elements/commit/8df1d8d281a0d6023d5a9c0e6fdd29fea71b6ac1))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
## [5.2.2](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text-controller@5.2.1...@pie-element/select-text-controller@5.2.2) (2024-02-20)
|
|
7
18
|
|
|
8
19
|
|
package/controller/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/select-text-controller",
|
|
3
3
|
"private": true,
|
|
4
|
-
"version": "5.
|
|
4
|
+
"version": "5.3.0",
|
|
5
5
|
"description": "",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"module": "src/index.js",
|
|
8
8
|
"dependencies": {
|
|
9
|
-
"@pie-lib/pie-toolbox": "1.
|
|
9
|
+
"@pie-lib/pie-toolbox": "1.8.1",
|
|
10
10
|
"debug": "^3.1.0",
|
|
11
11
|
"lodash": "^4.17.15"
|
|
12
12
|
},
|