@pie-element/inline-dropdown 3.9.3 → 3.9.8

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 CHANGED
@@ -3,6 +3,22 @@
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
+ ## [3.9.8](https://github.com/pie-framework/pie-elements/compare/@pie-element/inline-dropdown@3.9.7...@pie-element/inline-dropdown@3.9.8) (2021-12-23)
7
+
8
+ **Note:** Version bump only for package @pie-element/inline-dropdown
9
+
10
+
11
+
12
+
13
+
14
+ ## [3.9.6](https://github.com/pie-framework/pie-elements/compare/@pie-element/inline-dropdown@3.9.5...@pie-element/inline-dropdown@3.9.6) (2021-12-13)
15
+
16
+ **Note:** Version bump only for package @pie-element/inline-dropdown
17
+
18
+
19
+
20
+
21
+
6
22
  ## [3.9.3](https://github.com/pie-framework/pie-elements/compare/@pie-element/inline-dropdown@3.9.2...@pie-element/inline-dropdown@3.9.3) (2021-11-29)
7
23
 
8
24
  **Note:** Version bump only for package @pie-element/inline-dropdown
@@ -3,6 +3,22 @@
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
+ ## [3.6.7](https://github.com/pie-framework/pie-elements/compare/@pie-element/inline-dropdown-configure@3.6.6...@pie-element/inline-dropdown-configure@3.6.7) (2021-12-23)
7
+
8
+ **Note:** Version bump only for package @pie-element/inline-dropdown-configure
9
+
10
+
11
+
12
+
13
+
14
+ ## [3.6.5](https://github.com/pie-framework/pie-elements/compare/@pie-element/inline-dropdown-configure@3.6.4...@pie-element/inline-dropdown-configure@3.6.5) (2021-12-13)
15
+
16
+ **Note:** Version bump only for package @pie-element/inline-dropdown-configure
17
+
18
+
19
+
20
+
21
+
6
22
  ## [3.6.2](https://github.com/pie-framework/pie-elements/compare/@pie-element/inline-dropdown-configure@3.6.1...@pie-element/inline-dropdown-configure@3.6.2) (2021-11-29)
7
23
 
8
24
  **Note:** Version bump only for package @pie-element/inline-dropdown-configure
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-element/inline-dropdown-configure",
3
- "version": "3.6.2",
3
+ "version": "3.6.7",
4
4
  "private": true,
5
5
  "main": "lib/index.js",
6
6
  "module": "src/index.js",
@@ -8,8 +8,8 @@
8
8
  "@material-ui/core": "^3.9.2",
9
9
  "@material-ui/icons": "^3.0.1",
10
10
  "@pie-framework/pie-configure-events": "^1.2.0",
11
- "@pie-lib/config-ui": "^10.10.12",
12
- "@pie-lib/editable-html": "^7.17.12",
11
+ "@pie-lib/config-ui": "^10.10.14",
12
+ "@pie-lib/editable-html": "^7.17.14",
13
13
  "@pie-lib/math-rendering": "^2.3.12",
14
14
  "classnames": "^2.2.6",
15
15
  "debug": "^3.1.0",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/inline-dropdown-controller",
3
3
  "private": true,
4
- "version": "3.3.0",
4
+ "version": "3.3.3",
5
5
  "description": "",
6
6
  "main": "lib/index.js",
7
7
  "module": "src/index.js",
@@ -120,18 +120,14 @@ var InlineDropdown = /*#__PURE__*/function (_React$Component) {
120
120
  hidden: 'Show Teacher Instructions',
121
121
  visible: 'Hide Teacher Instructions'
122
122
  }
123
- }, /*#__PURE__*/_react["default"].createElement("div", {
124
- dangerouslySetInnerHTML: {
125
- __html: teacherInstructions
126
- }
123
+ }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
124
+ prompt: teacherInstructions
127
125
  })), /*#__PURE__*/_react["default"].createElement("br", null)), /*#__PURE__*/_react["default"].createElement(_correctAnswerToggle["default"], {
128
126
  show: showCorrectAnswerToggle,
129
127
  toggled: showCorrectAnswer,
130
128
  onToggle: this.toggleShowCorrect
131
- }), showCorrectAnswerToggle && /*#__PURE__*/_react["default"].createElement("br", null), prompt && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
132
- dangerouslySetInnerHTML: {
133
- __html: prompt
134
- }
129
+ }), showCorrectAnswerToggle && /*#__PURE__*/_react["default"].createElement("br", null), prompt && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
130
+ prompt: prompt
135
131
  }), /*#__PURE__*/_react["default"].createElement("br", null)), /*#__PURE__*/_react["default"].createElement(_maskMarkup.InlineDropdown, (0, _extends2["default"])({}, this.props, {
136
132
  showCorrectAnswer: showCorrectAnswer
137
133
  })), rationale && (0, _renderUi.hasText)(rationale) && /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
@@ -139,10 +135,8 @@ var InlineDropdown = /*#__PURE__*/function (_React$Component) {
139
135
  hidden: 'Show Rationale',
140
136
  visible: 'Hide Rationale'
141
137
  }
142
- }, /*#__PURE__*/_react["default"].createElement("div", {
143
- dangerouslySetInnerHTML: {
144
- __html: rationale
145
- }
138
+ }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
139
+ prompt: rationale
146
140
  })), choiceRationalesHaveText && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("br", null), /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
147
141
  labels: {
148
142
  hidden: 'Show Rationale for choices',
@@ -160,10 +154,8 @@ var InlineDropdown = /*#__PURE__*/function (_React$Component) {
160
154
  dangerouslySetInnerHTML: {
161
155
  __html: "".concat(choice.label, ": ")
162
156
  }
163
- }), /*#__PURE__*/_react["default"].createElement("div", {
164
- dangerouslySetInnerHTML: {
165
- __html: choice.rationale
166
- }
157
+ }), /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
158
+ prompt: choice.rationale
167
159
  }));
168
160
  }), choices && choices.length > 0 && /*#__PURE__*/_react["default"].createElement("br", null));
169
161
  })))));
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/inline-dropdown.jsx"],"names":["InlineDropdown","showCorrectAnswer","setState","state","nextProps","feedback","domNode","ReactDOM","findDOMNode","props","classes","prompt","mode","rationale","teacherInstructions","choices","showCorrectAnswerToggle","choiceRationalesHaveText","choiceRationales","Object","keys","map","key","reduce","acc","currentValue","push","mainContainer","hidden","visible","__html","toggleShowCorrect","index","length","choice","choiceRationale","label","choiceRationaleLabel","correct","React","Component","PropTypes","object","string","disabled","bool","markup","value","onChange","func","styles","theme","color","text","backgroundColor","background","padding","spacing","unit","display","whiteSpace","incorrect"],"mappings":"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","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport PropTypes from 'prop-types';\nimport isEmpty from 'lodash/isEmpty';\nimport CorrectAnswerToggle from '@pie-lib/correct-answer-toggle';\nimport { InlineDropdown as DropDown } from '@pie-lib/mask-markup';\nimport { color, Collapsible, hasText } from '@pie-lib/render-ui';\nimport { renderMath } from '@pie-lib/math-rendering';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\n\nexport class InlineDropdown extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n prompt: PropTypes.string,\n disabled: PropTypes.bool,\n markup: PropTypes.string,\n mode: PropTypes.string,\n rationale: PropTypes.string,\n teacherInstructions: PropTypes.string,\n choices: PropTypes.object,\n value: PropTypes.object,\n feedback: PropTypes.object,\n onChange: PropTypes.func\n };\n\n static defaultProps = {\n value: {}\n };\n\n state = {\n showCorrectAnswer: false\n };\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (isEmpty(nextProps.feedback)) {\n this.setState({ showCorrectAnswer: false });\n }\n }\n\n componentDidUpdate() {\n // eslint-disable-next-line\n const domNode = ReactDOM.findDOMNode(this);\n\n renderMath(domNode);\n }\n\n toggleShowCorrect = () => {\n this.setState({ showCorrectAnswer: !this.state.showCorrectAnswer });\n };\n\n render() {\n const { showCorrectAnswer } = this.state;\n const { classes, prompt, mode, rationale, teacherInstructions, choices } = this.props;\n const showCorrectAnswerToggle = mode === 'evaluate';\n let choiceRationalesHaveText = false;\n\n const choiceRationales = (Object.keys(choices) || []).map(key => (choices[key] || [])\n .reduce((acc, currentValue) => {\n if (currentValue.rationale && hasText(currentValue.rationale)) {\n choiceRationalesHaveText = true;\n\n acc.push(currentValue);\n }\n return acc;\n }, []));\n\n return (\n <div className={classes.mainContainer}>\n {\n teacherInstructions && hasText(teacherInstructions) && (\n <React.Fragment>\n <Collapsible\n labels={{ hidden: 'Show Teacher Instructions', visible: 'Hide Teacher Instructions' }}\n >\n <div dangerouslySetInnerHTML={{ __html: teacherInstructions }}/>\n </Collapsible>\n <br />\n </React.Fragment>\n )\n }\n\n <CorrectAnswerToggle\n show={showCorrectAnswerToggle}\n toggled={showCorrectAnswer}\n onToggle={this.toggleShowCorrect}\n />\n {showCorrectAnswerToggle && <br />}\n\n {prompt && (\n <React.Fragment>\n <div dangerouslySetInnerHTML={{ __html: prompt }}/>\n <br />\n </React.Fragment>\n )}\n <DropDown\n {...this.props}\n showCorrectAnswer={showCorrectAnswer}\n />\n {rationale && hasText(rationale) && (\n <Collapsible\n labels={{ hidden: 'Show Rationale', visible: 'Hide Rationale' }}\n >\n <div dangerouslySetInnerHTML={{ __html: rationale }}/>\n </Collapsible>\n )}\n {choiceRationalesHaveText && (\n <React.Fragment>\n <br />\n <Collapsible labels={{hidden: 'Show Rationale for choices', visible: 'Hide Rationale for choices'}}>\n <div>\n {choiceRationales.map((choices, index) =>\n <div key={index}>\n {choices && choices.length > 0 && choices.map( choice =>\n <div className={classes.choiceRationale} key={choice.label}>\n <div\n className={classNames(classes.choiceRationaleLabel, choice.correct ? 'correct' : 'incorrect')}\n dangerouslySetInnerHTML={{ __html: `${choice.label}: ` }}\n />\n <div dangerouslySetInnerHTML={{ __html: choice.rationale }}/>\n </div>\n )}\n {choices && choices.length > 0 && <br />}\n </div>\n )}\n </div>\n </Collapsible>\n </React.Fragment>\n )}\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n mainContainer: {\n color: color.text(),\n backgroundColor: color.background(),\n padding: theme.spacing.unit\n },\n choiceRationale: {\n display: 'flex',\n whiteSpace: 'break-spaces'\n },\n choiceRationaleLabel: {\n display: 'flex',\n '&.correct': {\n color: color.correct()\n },\n '&.incorrect': {\n color: color.incorrect()\n }\n }\n});\n\nexport default withStyles(styles)(InlineDropdown);\n"],"file":"inline-dropdown.js"}
1
+ {"version":3,"sources":["../src/inline-dropdown.jsx"],"names":["InlineDropdown","showCorrectAnswer","setState","state","nextProps","feedback","domNode","ReactDOM","findDOMNode","props","classes","prompt","mode","rationale","teacherInstructions","choices","showCorrectAnswerToggle","choiceRationalesHaveText","choiceRationales","Object","keys","map","key","reduce","acc","currentValue","push","mainContainer","hidden","visible","toggleShowCorrect","index","length","choice","choiceRationale","label","choiceRationaleLabel","correct","__html","React","Component","PropTypes","object","string","disabled","bool","markup","value","onChange","func","styles","theme","color","text","backgroundColor","background","padding","spacing","unit","display","whiteSpace","incorrect"],"mappings":"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","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport PropTypes from 'prop-types';\nimport isEmpty from 'lodash/isEmpty';\nimport CorrectAnswerToggle from '@pie-lib/correct-answer-toggle';\nimport { InlineDropdown as DropDown } from '@pie-lib/mask-markup';\nimport {color, Collapsible, hasText, PreviewPrompt} from '@pie-lib/render-ui';\nimport { renderMath } from '@pie-lib/math-rendering';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\n\nexport class InlineDropdown extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n prompt: PropTypes.string,\n disabled: PropTypes.bool,\n markup: PropTypes.string,\n mode: PropTypes.string,\n rationale: PropTypes.string,\n teacherInstructions: PropTypes.string,\n choices: PropTypes.object,\n value: PropTypes.object,\n feedback: PropTypes.object,\n onChange: PropTypes.func\n };\n\n static defaultProps = {\n value: {}\n };\n\n state = {\n showCorrectAnswer: false\n };\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (isEmpty(nextProps.feedback)) {\n this.setState({ showCorrectAnswer: false });\n }\n }\n\n componentDidUpdate() {\n // eslint-disable-next-line\n const domNode = ReactDOM.findDOMNode(this);\n\n renderMath(domNode);\n }\n\n toggleShowCorrect = () => {\n this.setState({ showCorrectAnswer: !this.state.showCorrectAnswer });\n };\n\n render() {\n const { showCorrectAnswer } = this.state;\n const { classes, prompt, mode, rationale, teacherInstructions, choices } = this.props;\n const showCorrectAnswerToggle = mode === 'evaluate';\n let choiceRationalesHaveText = false;\n\n const choiceRationales = (Object.keys(choices) || []).map(key => (choices[key] || [])\n .reduce((acc, currentValue) => {\n if (currentValue.rationale && hasText(currentValue.rationale)) {\n choiceRationalesHaveText = true;\n\n acc.push(currentValue);\n }\n return acc;\n }, []));\n\n return (\n <div className={classes.mainContainer}>\n {\n teacherInstructions && hasText(teacherInstructions) && (\n <React.Fragment>\n <Collapsible\n labels={{ hidden: 'Show Teacher Instructions', visible: 'Hide Teacher Instructions' }}\n >\n <PreviewPrompt prompt={teacherInstructions} />\n </Collapsible>\n <br />\n </React.Fragment>\n )\n }\n\n <CorrectAnswerToggle\n show={showCorrectAnswerToggle}\n toggled={showCorrectAnswer}\n onToggle={this.toggleShowCorrect}\n />\n {showCorrectAnswerToggle && <br />}\n\n {prompt && (\n <React.Fragment>\n <PreviewPrompt prompt={prompt} />\n <br />\n </React.Fragment>\n )}\n <DropDown\n {...this.props}\n showCorrectAnswer={showCorrectAnswer}\n />\n {rationale && hasText(rationale) && (\n <Collapsible\n labels={{ hidden: 'Show Rationale', visible: 'Hide Rationale' }}\n >\n <PreviewPrompt prompt={rationale} />\n </Collapsible>\n )}\n {choiceRationalesHaveText && (\n <React.Fragment>\n <br />\n <Collapsible labels={{hidden: 'Show Rationale for choices', visible: 'Hide Rationale for choices'}}>\n <div>\n {choiceRationales.map((choices, index) =>\n <div key={index}>\n {choices && choices.length > 0 && choices.map( choice =>\n <div className={classes.choiceRationale} key={choice.label}>\n <div\n className={classNames(classes.choiceRationaleLabel, choice.correct ? 'correct' : 'incorrect')}\n dangerouslySetInnerHTML={{ __html: `${choice.label}: ` }}\n />\n <PreviewPrompt prompt={choice.rationale} />\n </div>\n )}\n {choices && choices.length > 0 && <br />}\n </div>\n )}\n </div>\n </Collapsible>\n </React.Fragment>\n )}\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n mainContainer: {\n color: color.text(),\n backgroundColor: color.background(),\n padding: theme.spacing.unit\n },\n choiceRationale: {\n display: 'flex',\n whiteSpace: 'break-spaces'\n },\n choiceRationaleLabel: {\n display: 'flex',\n '&.correct': {\n color: color.correct()\n },\n '&.incorrect': {\n color: color.incorrect()\n }\n }\n});\n\nexport default withStyles(styles)(InlineDropdown);\n"],"file":"inline-dropdown.js"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public"
5
5
  },
6
6
  "repository": "pie-framework/pie-elements",
7
- "version": "3.9.3",
7
+ "version": "3.9.8",
8
8
  "description": "",
9
9
  "scripts": {
10
10
  "test": "echo \"Error: no test specified\" && exit 1",
@@ -13,10 +13,10 @@
13
13
  "dependencies": {
14
14
  "@material-ui/core": "^3.9.2",
15
15
  "@pie-framework/pie-player-events": "^0.1.0",
16
- "@pie-lib/correct-answer-toggle": "^2.3.32",
17
- "@pie-lib/mask-markup": "^1.11.3",
16
+ "@pie-lib/correct-answer-toggle": "^2.3.34",
17
+ "@pie-lib/mask-markup": "^1.11.4",
18
18
  "@pie-lib/math-rendering": "^2.3.12",
19
- "@pie-lib/render-ui": "^4.12.3",
19
+ "@pie-lib/render-ui": "^4.12.4",
20
20
  "classnames": "^2.2.5",
21
21
  "lodash": "^4.17.10",
22
22
  "prop-types": "^15.6.1",
@@ -25,7 +25,7 @@
25
25
  },
26
26
  "author": "",
27
27
  "license": "ISC",
28
- "gitHead": "25d4d90078b237c54893757434bb09258812b803",
28
+ "gitHead": "aed4c49b18e323dd0fc7fbf2186039723d406751",
29
29
  "main": "lib/index.js",
30
30
  "module": "src/index.js"
31
31
  }