@pie-element/select-text 9.5.7-next.12 → 9.5.7-next.18

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/lib/main.js CHANGED
@@ -105,11 +105,13 @@ var Main = /*#__PURE__*/function (_React$Component) {
105
105
  mode = _ref.mode;
106
106
 
107
107
  var selectedTokens = showCorrectAnswer ? this.correctAnswer() : session.selectedTokens;
108
+ var showRationale = model.rationale && ((0, _renderUi.hasText)(model.rationale) || (0, _renderUi.hasMedia)(model.rationale));
109
+ var showTeacherInstructions = model.teacherInstructions && ((0, _renderUi.hasText)(model.teacherInstructions) || (0, _renderUi.hasMedia)(model.teacherInstructions));
108
110
  log('[render] selectedTokens:', selectedTokens);
109
111
  return /*#__PURE__*/_react["default"].createElement(_renderUi.UiLayout, {
110
112
  extraCSSRules: extraCSSRules,
111
113
  className: classes.mainContainer
112
- }, model.teacherInstructions && (0, _renderUi.hasText)(model.teacherInstructions) && (!model.animationsDisabled ? /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
114
+ }, showTeacherInstructions && (!model.animationsDisabled ? /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
113
115
  labels: {
114
116
  hidden: 'Show Teacher Instructions',
115
117
  visible: 'Hide Teacher Instructions'
@@ -157,7 +159,7 @@ var Main = /*#__PURE__*/function (_React$Component) {
157
159
  animationsDisabled: model.animationsDisabled
158
160
  }), mode === 'evaluate' && /*#__PURE__*/_react["default"].createElement(_textSelect.Legend, {
159
161
  language: model.language
160
- }), model.rationale && (0, _renderUi.hasText)(model.rationale) && (!model.animationsDisabled ? /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
162
+ }), showRationale && (!model.animationsDisabled ? /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
161
163
  labels: {
162
164
  hidden: 'Show Rationale',
163
165
  visible: 'Hide Rationale'
package/lib/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/main.jsx"],"names":["log","Types","model","PropTypes","object","session","onSelectionChange","func","isRequired","Main","props","setState","showCorrectAnswer","state","tokens","filter","t","correct","alwaysShowCorrect","nextProps","classes","env","extraCSSRules","mode","selectedTokens","correctAnswer","mainContainer","teacherInstructions","animationsDisabled","hidden","visible","collapsible","prompt","disabled","incorrect","toggleShowCorrect","language","textSelect","text","selection","newSelections","map","select","token","find","start","end","highlightChoices","maxSelections","rationale","correctness","feedback","React","Component","StyledMain","theme","color","backgroundColor","background","marginBottom","spacing","unit","marginTop","whiteSpace","verticalAlign","Stateful","change"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { TextSelect, Legend } from '@pie-lib/pie-toolbox/text-select';\nimport {CorrectAnswerToggle} from '@pie-lib/pie-toolbox/correct-answer-toggle';\nimport { color, Feedback, Collapsible, hasText, PreviewPrompt, UiLayout } from '@pie-lib/pie-toolbox/render-ui';\nimport { withStyles } from '@material-ui/core/styles';\nimport generateModel from './utils';\n\nimport debug from 'debug';\n\nconst log = debug('@pie-ui:select-text');\n\nconst Types = {\n model: PropTypes.object,\n session: PropTypes.object,\n onSelectionChange: PropTypes.func.isRequired,\n};\n\nexport class Main extends React.Component {\n static propTypes = { ...Types, classes: PropTypes.object.isRequired };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n\n this.state = {\n showCorrectAnswer: this.props.model.alwaysShowCorrect || false,\n model: generateModel(props.model),\n };\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.setState({\n showCorrectAnswer: !!nextProps.model.alwaysShowCorrect,\n model: generateModel(nextProps.model),\n });\n }\n\n toggleShowCorrect = () => {\n this.setState({ showCorrectAnswer: !this.state.showCorrectAnswer });\n };\n\n correctAnswer = () => {\n const { model } = this.state;\n\n return model.tokens.filter((t) => t.correct);\n };\n\n render() {\n const { session, onSelectionChange, classes } = this.props;\n const { showCorrectAnswer, model } = this.state;\n const { env, extraCSSRules } = model;\n const { mode } = env || {};\n\n\n const selectedTokens = showCorrectAnswer ? this.correctAnswer() : session.selectedTokens;\n\n log('[render] selectedTokens:', selectedTokens);\n\n return (\n <UiLayout extraCSSRules={extraCSSRules} className={classes.mainContainer}>\n {model.teacherInstructions &&\n hasText(model.teacherInstructions) &&\n (!model.animationsDisabled ? (\n <Collapsible\n labels={{ hidden: 'Show Teacher Instructions', visible: 'Hide Teacher Instructions' }}\n className={classes.collapsible}\n >\n <PreviewPrompt prompt={model.teacherInstructions} />\n </Collapsible>\n ) : (\n <div className={classes.prompt}>\n <PreviewPrompt prompt={model.teacherInstructions} />\n </div>\n ))}\n\n <div className={classes.prompt}>\n <PreviewPrompt prompt={model.prompt} />\n </div>\n\n {!model.alwaysShowCorrect && (\n <CorrectAnswerToggle\n show={model.disabled && model.incorrect}\n toggled={showCorrectAnswer}\n onToggle={this.toggleShowCorrect}\n language={model.language}\n />\n )}\n\n <TextSelect\n className={classes.textSelect}\n disabled={model.disabled}\n text={model.text}\n tokens={model.tokens}\n selectedTokens={selectedTokens}\n onChange={(selection) => {\n const newSelections = selection.map((select) => {\n const token = model.tokens.find(({ start, end }) => select.start === start && select.end === end);\n\n // needed for getScore when tokens position is recalculated, to keep oldStart and oldEnd\n if (token) {\n return token;\n }\n\n return select;\n });\n\n onSelectionChange(newSelections);\n }}\n highlightChoices={model.highlightChoices}\n maxNoOfSelections={model.maxSelections}\n animationsDisabled={model.animationsDisabled}\n />\n {mode === 'evaluate' && <Legend language={model.language} />}\n\n {model.rationale &&\n hasText(model.rationale) &&\n (!model.animationsDisabled ? (\n <Collapsible\n labels={{ hidden: 'Show Rationale', visible: 'Hide Rationale' }}\n className={classes.collapsible}\n >\n <PreviewPrompt prompt={model.rationale} />\n </Collapsible>\n ) : (\n <div className={classes.prompt}>\n <PreviewPrompt prompt={model.rationale} />\n </div>\n ))}\n\n {model.correctness && model.feedback && !showCorrectAnswer && (\n <Feedback correctness={model.correctness} feedback={model.feedback} />\n )}\n </UiLayout>\n );\n }\n}\n\nconst StyledMain = withStyles((theme) => ({\n mainContainer: {\n color: color.text(),\n backgroundColor: color.background(),\n },\n textSelect: {\n marginBottom: theme.spacing.unit,\n marginTop: theme.spacing.unit * 2,\n whiteSpace: 'normal',\n },\n prompt: {\n verticalAlign: 'middle',\n marginBottom: theme.spacing.unit,\n },\n collapsible: {\n marginBottom: theme.spacing.unit * 2,\n },\n}))(Main);\n\nexport default class Stateful extends React.Component {\n static propTypes = Types;\n\n constructor(props) {\n super(props);\n this.state = {\n model: props.model,\n session: props.session,\n };\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.setState({ model: nextProps.model, session: nextProps.session });\n }\n\n change = (selectedTokens) => {\n const session = { ...this.state.session, selectedTokens };\n this.setState({ session }, () => {\n this.props.onSelectionChange(this.state.session.selectedTokens);\n });\n };\n\n render() {\n const { model, session } = this.state;\n return <StyledMain model={model} session={session} onSelectionChange={this.change} />;\n }\n}\n"],"file":"main.js"}
1
+ {"version":3,"sources":["../src/main.jsx"],"names":["log","Types","model","PropTypes","object","session","onSelectionChange","func","isRequired","Main","props","setState","showCorrectAnswer","state","tokens","filter","t","correct","alwaysShowCorrect","nextProps","classes","env","extraCSSRules","mode","selectedTokens","correctAnswer","showRationale","rationale","showTeacherInstructions","teacherInstructions","mainContainer","animationsDisabled","hidden","visible","collapsible","prompt","disabled","incorrect","toggleShowCorrect","language","textSelect","text","selection","newSelections","map","select","token","find","start","end","highlightChoices","maxSelections","correctness","feedback","React","Component","StyledMain","theme","color","backgroundColor","background","marginBottom","spacing","unit","marginTop","whiteSpace","verticalAlign","Stateful","change"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { TextSelect, Legend } from '@pie-lib/pie-toolbox/text-select';\nimport {CorrectAnswerToggle} from '@pie-lib/pie-toolbox/correct-answer-toggle';\nimport {color, Feedback, Collapsible, hasText, hasMedia, PreviewPrompt, UiLayout} from '@pie-lib/pie-toolbox/render-ui';\nimport { withStyles } from '@material-ui/core/styles';\nimport generateModel from './utils';\n\nimport debug from 'debug';\n\nconst log = debug('@pie-ui:select-text');\n\nconst Types = {\n model: PropTypes.object,\n session: PropTypes.object,\n onSelectionChange: PropTypes.func.isRequired,\n};\n\nexport class Main extends React.Component {\n static propTypes = { ...Types, classes: PropTypes.object.isRequired };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n\n this.state = {\n showCorrectAnswer: this.props.model.alwaysShowCorrect || false,\n model: generateModel(props.model),\n };\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.setState({\n showCorrectAnswer: !!nextProps.model.alwaysShowCorrect,\n model: generateModel(nextProps.model),\n });\n }\n\n toggleShowCorrect = () => {\n this.setState({ showCorrectAnswer: !this.state.showCorrectAnswer });\n };\n\n correctAnswer = () => {\n const { model } = this.state;\n\n return model.tokens.filter((t) => t.correct);\n };\n\n render() {\n const { session, onSelectionChange, classes } = this.props;\n const { showCorrectAnswer, model } = this.state;\n const { env, extraCSSRules } = model;\n const { mode } = env || {};\n\n\n const selectedTokens = showCorrectAnswer ? this.correctAnswer() : session.selectedTokens;\n const showRationale = model.rationale && (hasText(model.rationale) || hasMedia(model.rationale));\n const showTeacherInstructions = model.teacherInstructions && (hasText(model.teacherInstructions) || hasMedia(model.teacherInstructions));\n\n log('[render] selectedTokens:', selectedTokens);\n\n return (\n <UiLayout extraCSSRules={extraCSSRules} className={classes.mainContainer}>\n {showTeacherInstructions &&\n (!model.animationsDisabled ? (\n <Collapsible\n labels={{ hidden: 'Show Teacher Instructions', visible: 'Hide Teacher Instructions' }}\n className={classes.collapsible}\n >\n <PreviewPrompt prompt={model.teacherInstructions} />\n </Collapsible>\n ) : (\n <div className={classes.prompt}>\n <PreviewPrompt prompt={model.teacherInstructions} />\n </div>\n ))}\n\n <div className={classes.prompt}>\n <PreviewPrompt prompt={model.prompt} />\n </div>\n\n {!model.alwaysShowCorrect && (\n <CorrectAnswerToggle\n show={model.disabled && model.incorrect}\n toggled={showCorrectAnswer}\n onToggle={this.toggleShowCorrect}\n language={model.language}\n />\n )}\n\n <TextSelect\n className={classes.textSelect}\n disabled={model.disabled}\n text={model.text}\n tokens={model.tokens}\n selectedTokens={selectedTokens}\n onChange={(selection) => {\n const newSelections = selection.map((select) => {\n const token = model.tokens.find(({ start, end }) => select.start === start && select.end === end);\n\n // needed for getScore when tokens position is recalculated, to keep oldStart and oldEnd\n if (token) {\n return token;\n }\n\n return select;\n });\n\n onSelectionChange(newSelections);\n }}\n highlightChoices={model.highlightChoices}\n maxNoOfSelections={model.maxSelections}\n animationsDisabled={model.animationsDisabled}\n />\n {mode === 'evaluate' && <Legend language={model.language} />}\n\n {showRationale &&\n (!model.animationsDisabled ? (\n <Collapsible\n labels={{ hidden: 'Show Rationale', visible: 'Hide Rationale' }}\n className={classes.collapsible}\n >\n <PreviewPrompt prompt={model.rationale} />\n </Collapsible>\n ) : (\n <div className={classes.prompt}>\n <PreviewPrompt prompt={model.rationale} />\n </div>\n ))}\n\n {model.correctness && model.feedback && !showCorrectAnswer && (\n <Feedback correctness={model.correctness} feedback={model.feedback} />\n )}\n </UiLayout>\n );\n }\n}\n\nconst StyledMain = withStyles((theme) => ({\n mainContainer: {\n color: color.text(),\n backgroundColor: color.background(),\n },\n textSelect: {\n marginBottom: theme.spacing.unit,\n marginTop: theme.spacing.unit * 2,\n whiteSpace: 'normal',\n },\n prompt: {\n verticalAlign: 'middle',\n marginBottom: theme.spacing.unit,\n },\n collapsible: {\n marginBottom: theme.spacing.unit * 2,\n },\n}))(Main);\n\nexport default class Stateful extends React.Component {\n static propTypes = Types;\n\n constructor(props) {\n super(props);\n this.state = {\n model: props.model,\n session: props.session,\n };\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.setState({ model: nextProps.model, session: nextProps.session });\n }\n\n change = (selectedTokens) => {\n const session = { ...this.state.session, selectedTokens };\n this.setState({ session }, () => {\n this.props.onSelectionChange(this.state.session.selectedTokens);\n });\n };\n\n render() {\n const { model, session } = this.state;\n return <StyledMain model={model} session={session} onSelectionChange={this.change} />;\n }\n}\n"],"file":"main.js"}
@@ -1,4 +1,4 @@
1
- import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_debug, _dll_lodash, _dll_react_dom_server} from "../../../@pie-lib/pie-toolbox-math-rendering-module@4.1.4/module/index.js";
1
+ import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_debug, _dll_lodash, _dll_react_dom_server} from "../../../@pie-lib/pie-toolbox-math-rendering-module@4.1.5/module/index.js";
2
2
  import {_dll_pie_lib__pie_toolbox_config_ui, _dll_pie_lib__pie_toolbox_editable_html} from "../../../@pie-lib/pie-toolbox-module@7.0.3/module/index.js";
3
3
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
4
4
  function getDefaultExportFromCjs(x) {
package/module/element.js CHANGED
@@ -1,4 +1,4 @@
1
- import {_dll_react, _dll_prop_types, _dll_react_dom, _dll_classnames, _dll_debug, _dll_lodash, _dll_react_dom_server, _dll_pie_lib__pie_toolbox_math_rendering} from "../../../@pie-lib/pie-toolbox-math-rendering-module@4.1.4/module/index.js";
1
+ import {_dll_react, _dll_prop_types, _dll_react_dom, _dll_classnames, _dll_debug, _dll_lodash, _dll_react_dom_server, _dll_pie_lib__pie_toolbox_math_rendering} from "../../../@pie-lib/pie-toolbox-math-rendering-module@4.1.5/module/index.js";
2
2
  import {_dll_pie_lib__pie_toolbox_correct_answer_toggle, _dll_pie_lib__pie_toolbox_render_ui} from "../../../@pie-lib/pie-toolbox-module@7.0.3/module/index.js";
3
3
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
4
4
  function getDefaultExportFromCjs(x) {
@@ -122705,20 +122705,20 @@ var hasText$1 = function hasText(s) {
122705
122705
  return !!(tc && tc.trim());
122706
122706
  };
122707
122707
  hasText$2.hasText = hasText$1;
122708
- var hasMedia$1 = {};
122709
- Object.defineProperty(hasMedia$1, "__esModule", {
122708
+ var hasMedia$2 = {};
122709
+ Object.defineProperty(hasMedia$2, "__esModule", {
122710
122710
  value: true
122711
122711
  });
122712
- hasMedia$1.hasMedia = void 0;
122712
+ hasMedia$2.hasMedia = void 0;
122713
122713
  var dp = new DOMParser();
122714
- var hasMedia = function hasMedia(s) {
122714
+ var hasMedia$1 = function hasMedia(s) {
122715
122715
  if (!s) {
122716
122716
  return false;
122717
122717
  }
122718
122718
  var root = dp.parseFromString(s, 'text/html');
122719
122719
  return !!root.body.querySelector('img') || !!root.body.querySelector('video') || !!root.body.querySelector('audio');
122720
122720
  };
122721
- hasMedia$1.hasMedia = hasMedia;
122721
+ hasMedia$2.hasMedia = hasMedia$1;
122722
122722
  var enableAudioAutoplayImage = {};
122723
122723
  (function (exports) {
122724
122724
  Object.defineProperty(exports, "__esModule", {
@@ -122830,7 +122830,7 @@ getDefaultExportFromCjs(enableAudioAutoplayImage);
122830
122830
  var color = _interopRequireWildcard(color$1);
122831
122831
  exports.color = color;
122832
122832
  var _hasText = hasText$2;
122833
- var _hasMedia = hasMedia$1;
122833
+ var _hasMedia = hasMedia$2;
122834
122834
  var _enableAudioAutoplayImage = _interopRequireDefault(enableAudioAutoplayImage);
122835
122835
  function _getRequireWildcardCache(nodeInterop) {
122836
122836
  if (typeof WeakMap !== "function") return null;
@@ -129068,6 +129068,7 @@ const {color: color} = _dll_pie_lib__pie_toolbox_render_ui;
129068
129068
  const {Feedback: Feedback} = _dll_pie_lib__pie_toolbox_render_ui;
129069
129069
  const {Collapsible: Collapsible} = _dll_pie_lib__pie_toolbox_render_ui;
129070
129070
  const {hasText: hasText} = _dll_pie_lib__pie_toolbox_render_ui;
129071
+ const {hasMedia: hasMedia} = _dll_pie_lib__pie_toolbox_render_ui;
129071
129072
  const {PreviewPrompt: PreviewPrompt} = _dll_pie_lib__pie_toolbox_render_ui;
129072
129073
  const {UiLayout: UiLayout} = _dll_pie_lib__pie_toolbox_render_ui;
129073
129074
  const _jsxFileName = "/home/circleci/repo/packages/select-text/src/main.jsx";
@@ -129121,6 +129122,8 @@ class Main extends React$1.Component {
129121
129122
  const {env, extraCSSRules} = model;
129122
129123
  const {mode} = env || ({});
129123
129124
  const selectedTokens = showCorrectAnswer ? this.correctAnswer() : session.selectedTokens;
129125
+ const showRationale = model.rationale && (hasText(model.rationale) || hasMedia(model.rationale));
129126
+ const showTeacherInstructions = model.teacherInstructions && (hasText(model.teacherInstructions) || hasMedia(model.teacherInstructions));
129124
129127
  log('[render] selectedTokens:', selectedTokens);
129125
129128
  return React$1.createElement(UiLayout, {
129126
129129
  extraCSSRules: extraCSSRules,
@@ -129128,9 +129131,9 @@ class Main extends React$1.Component {
129128
129131
  __self: this,
129129
129132
  __source: {
129130
129133
  fileName: _jsxFileName,
129131
- lineNumber: 62
129134
+ lineNumber: 64
129132
129135
  }
129133
- }, model.teacherInstructions && hasText(model.teacherInstructions) && (!model.animationsDisabled ? React$1.createElement(Collapsible, {
129136
+ }, showTeacherInstructions && (!model.animationsDisabled ? React$1.createElement(Collapsible, {
129134
129137
  labels: {
129135
129138
  hidden: 'Show Teacher Instructions',
129136
129139
  visible: 'Hide Teacher Instructions'
@@ -129139,42 +129142,42 @@ class Main extends React$1.Component {
129139
129142
  __self: this,
129140
129143
  __source: {
129141
129144
  fileName: _jsxFileName,
129142
- lineNumber: 66
129145
+ lineNumber: 67
129143
129146
  }
129144
129147
  }, React$1.createElement(PreviewPrompt, {
129145
129148
  prompt: model.teacherInstructions,
129146
129149
  __self: this,
129147
129150
  __source: {
129148
129151
  fileName: _jsxFileName,
129149
- lineNumber: 70
129152
+ lineNumber: 71
129150
129153
  }
129151
129154
  })) : React$1.createElement('div', {
129152
129155
  className: classes.prompt,
129153
129156
  __self: this,
129154
129157
  __source: {
129155
129158
  fileName: _jsxFileName,
129156
- lineNumber: 73
129159
+ lineNumber: 74
129157
129160
  }
129158
129161
  }, React$1.createElement(PreviewPrompt, {
129159
129162
  prompt: model.teacherInstructions,
129160
129163
  __self: this,
129161
129164
  __source: {
129162
129165
  fileName: _jsxFileName,
129163
- lineNumber: 74
129166
+ lineNumber: 75
129164
129167
  }
129165
129168
  }))), React$1.createElement('div', {
129166
129169
  className: classes.prompt,
129167
129170
  __self: this,
129168
129171
  __source: {
129169
129172
  fileName: _jsxFileName,
129170
- lineNumber: 78
129173
+ lineNumber: 79
129171
129174
  }
129172
129175
  }, React$1.createElement(PreviewPrompt, {
129173
129176
  prompt: model.prompt,
129174
129177
  __self: this,
129175
129178
  __source: {
129176
129179
  fileName: _jsxFileName,
129177
- lineNumber: 79
129180
+ lineNumber: 80
129178
129181
  }
129179
129182
  })), !model.alwaysShowCorrect && React$1.createElement(CorrectAnswerToggle, {
129180
129183
  show: model.disabled && model.incorrect,
@@ -129184,7 +129187,7 @@ class Main extends React$1.Component {
129184
129187
  __self: this,
129185
129188
  __source: {
129186
129189
  fileName: _jsxFileName,
129187
- lineNumber: 83
129190
+ lineNumber: 84
129188
129191
  }
129189
129192
  }), React$1.createElement(textSelect$2.TextSelect, {
129190
129193
  className: classes.textSelect,
@@ -129208,16 +129211,16 @@ class Main extends React$1.Component {
129208
129211
  __self: this,
129209
129212
  __source: {
129210
129213
  fileName: _jsxFileName,
129211
- lineNumber: 91
129214
+ lineNumber: 92
129212
129215
  }
129213
129216
  }), mode === 'evaluate' && React$1.createElement(textSelect$2.Legend, {
129214
129217
  language: model.language,
129215
129218
  __self: this,
129216
129219
  __source: {
129217
129220
  fileName: _jsxFileName,
129218
- lineNumber: 115
129221
+ lineNumber: 116
129219
129222
  }
129220
- }), model.rationale && hasText(model.rationale) && (!model.animationsDisabled ? React$1.createElement(Collapsible, {
129223
+ }), showRationale && (!model.animationsDisabled ? React$1.createElement(Collapsible, {
129221
129224
  labels: {
129222
129225
  hidden: 'Show Rationale',
129223
129226
  visible: 'Hide Rationale'
@@ -4,7 +4,7 @@
4
4
  "modules": [
5
5
  {
6
6
  "name": "@pie-lib/pie-toolbox-math-rendering-module",
7
- "version": "4.1.4"
7
+ "version": "4.1.5"
8
8
  },
9
9
  {
10
10
  "name": "@pie-lib/pie-toolbox-module",
package/module/print.js CHANGED
@@ -1,4 +1,4 @@
1
- import {_dll_react, _dll_prop_types, _dll_react_dom, _dll_classnames, _dll_debug, _dll_lodash, _dll_react_dom_server, _dll_pie_lib__pie_toolbox_math_rendering} from "../../../@pie-lib/pie-toolbox-math-rendering-module@4.1.4/module/index.js";
1
+ import {_dll_react, _dll_prop_types, _dll_react_dom, _dll_classnames, _dll_debug, _dll_lodash, _dll_react_dom_server, _dll_pie_lib__pie_toolbox_math_rendering} from "../../../@pie-lib/pie-toolbox-math-rendering-module@4.1.5/module/index.js";
2
2
  import {_dll_pie_lib__pie_toolbox_correct_answer_toggle, _dll_pie_lib__pie_toolbox_render_ui} from "../../../@pie-lib/pie-toolbox-module@7.0.3/module/index.js";
3
3
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
4
4
  function getDefaultExportFromCjs(x) {
@@ -122668,20 +122668,20 @@ var hasText$1 = function hasText(s) {
122668
122668
  return !!(tc && tc.trim());
122669
122669
  };
122670
122670
  hasText$2.hasText = hasText$1;
122671
- var hasMedia$1 = {};
122672
- Object.defineProperty(hasMedia$1, "__esModule", {
122671
+ var hasMedia$2 = {};
122672
+ Object.defineProperty(hasMedia$2, "__esModule", {
122673
122673
  value: true
122674
122674
  });
122675
- hasMedia$1.hasMedia = void 0;
122675
+ hasMedia$2.hasMedia = void 0;
122676
122676
  var dp = new DOMParser();
122677
- var hasMedia = function hasMedia(s) {
122677
+ var hasMedia$1 = function hasMedia(s) {
122678
122678
  if (!s) {
122679
122679
  return false;
122680
122680
  }
122681
122681
  var root = dp.parseFromString(s, 'text/html');
122682
122682
  return !!root.body.querySelector('img') || !!root.body.querySelector('video') || !!root.body.querySelector('audio');
122683
122683
  };
122684
- hasMedia$1.hasMedia = hasMedia;
122684
+ hasMedia$2.hasMedia = hasMedia$1;
122685
122685
  var enableAudioAutoplayImage = {};
122686
122686
  (function (exports) {
122687
122687
  Object.defineProperty(exports, "__esModule", {
@@ -122793,7 +122793,7 @@ getDefaultExportFromCjs(enableAudioAutoplayImage);
122793
122793
  var color = _interopRequireWildcard(color$1);
122794
122794
  exports.color = color;
122795
122795
  var _hasText = hasText$2;
122796
- var _hasMedia = hasMedia$1;
122796
+ var _hasMedia = hasMedia$2;
122797
122797
  var _enableAudioAutoplayImage = _interopRequireDefault(enableAudioAutoplayImage);
122798
122798
  function _getRequireWildcardCache(nodeInterop) {
122799
122799
  if (typeof WeakMap !== "function") return null;
@@ -129031,6 +129031,7 @@ const {color: color} = _dll_pie_lib__pie_toolbox_render_ui;
129031
129031
  const {Feedback: Feedback} = _dll_pie_lib__pie_toolbox_render_ui;
129032
129032
  const {Collapsible: Collapsible} = _dll_pie_lib__pie_toolbox_render_ui;
129033
129033
  const {hasText: hasText} = _dll_pie_lib__pie_toolbox_render_ui;
129034
+ const {hasMedia: hasMedia} = _dll_pie_lib__pie_toolbox_render_ui;
129034
129035
  const {PreviewPrompt: PreviewPrompt} = _dll_pie_lib__pie_toolbox_render_ui;
129035
129036
  const {UiLayout: UiLayout} = _dll_pie_lib__pie_toolbox_render_ui;
129036
129037
  const _jsxFileName = "/home/circleci/repo/packages/select-text/src/main.jsx";
@@ -129084,6 +129085,8 @@ class Main extends React$1.Component {
129084
129085
  const {env, extraCSSRules} = model;
129085
129086
  const {mode} = env || ({});
129086
129087
  const selectedTokens = showCorrectAnswer ? this.correctAnswer() : session.selectedTokens;
129088
+ const showRationale = model.rationale && (hasText(model.rationale) || hasMedia(model.rationale));
129089
+ const showTeacherInstructions = model.teacherInstructions && (hasText(model.teacherInstructions) || hasMedia(model.teacherInstructions));
129087
129090
  log$1('[render] selectedTokens:', selectedTokens);
129088
129091
  return React$1.createElement(UiLayout, {
129089
129092
  extraCSSRules: extraCSSRules,
@@ -129091,9 +129094,9 @@ class Main extends React$1.Component {
129091
129094
  __self: this,
129092
129095
  __source: {
129093
129096
  fileName: _jsxFileName,
129094
- lineNumber: 62
129097
+ lineNumber: 64
129095
129098
  }
129096
- }, model.teacherInstructions && hasText(model.teacherInstructions) && (!model.animationsDisabled ? React$1.createElement(Collapsible, {
129099
+ }, showTeacherInstructions && (!model.animationsDisabled ? React$1.createElement(Collapsible, {
129097
129100
  labels: {
129098
129101
  hidden: 'Show Teacher Instructions',
129099
129102
  visible: 'Hide Teacher Instructions'
@@ -129102,42 +129105,42 @@ class Main extends React$1.Component {
129102
129105
  __self: this,
129103
129106
  __source: {
129104
129107
  fileName: _jsxFileName,
129105
- lineNumber: 66
129108
+ lineNumber: 67
129106
129109
  }
129107
129110
  }, React$1.createElement(PreviewPrompt, {
129108
129111
  prompt: model.teacherInstructions,
129109
129112
  __self: this,
129110
129113
  __source: {
129111
129114
  fileName: _jsxFileName,
129112
- lineNumber: 70
129115
+ lineNumber: 71
129113
129116
  }
129114
129117
  })) : React$1.createElement('div', {
129115
129118
  className: classes.prompt,
129116
129119
  __self: this,
129117
129120
  __source: {
129118
129121
  fileName: _jsxFileName,
129119
- lineNumber: 73
129122
+ lineNumber: 74
129120
129123
  }
129121
129124
  }, React$1.createElement(PreviewPrompt, {
129122
129125
  prompt: model.teacherInstructions,
129123
129126
  __self: this,
129124
129127
  __source: {
129125
129128
  fileName: _jsxFileName,
129126
- lineNumber: 74
129129
+ lineNumber: 75
129127
129130
  }
129128
129131
  }))), React$1.createElement('div', {
129129
129132
  className: classes.prompt,
129130
129133
  __self: this,
129131
129134
  __source: {
129132
129135
  fileName: _jsxFileName,
129133
- lineNumber: 78
129136
+ lineNumber: 79
129134
129137
  }
129135
129138
  }, React$1.createElement(PreviewPrompt, {
129136
129139
  prompt: model.prompt,
129137
129140
  __self: this,
129138
129141
  __source: {
129139
129142
  fileName: _jsxFileName,
129140
- lineNumber: 79
129143
+ lineNumber: 80
129141
129144
  }
129142
129145
  })), !model.alwaysShowCorrect && React$1.createElement(CorrectAnswerToggle, {
129143
129146
  show: model.disabled && model.incorrect,
@@ -129147,7 +129150,7 @@ class Main extends React$1.Component {
129147
129150
  __self: this,
129148
129151
  __source: {
129149
129152
  fileName: _jsxFileName,
129150
- lineNumber: 83
129153
+ lineNumber: 84
129151
129154
  }
129152
129155
  }), React$1.createElement(textSelect$2.TextSelect, {
129153
129156
  className: classes.textSelect,
@@ -129171,16 +129174,16 @@ class Main extends React$1.Component {
129171
129174
  __self: this,
129172
129175
  __source: {
129173
129176
  fileName: _jsxFileName,
129174
- lineNumber: 91
129177
+ lineNumber: 92
129175
129178
  }
129176
129179
  }), mode === 'evaluate' && React$1.createElement(textSelect$2.Legend, {
129177
129180
  language: model.language,
129178
129181
  __self: this,
129179
129182
  __source: {
129180
129183
  fileName: _jsxFileName,
129181
- lineNumber: 115
129184
+ lineNumber: 116
129182
129185
  }
129183
- }), model.rationale && hasText(model.rationale) && (!model.animationsDisabled ? React$1.createElement(Collapsible, {
129186
+ }), showRationale && (!model.animationsDisabled ? React$1.createElement(Collapsible, {
129184
129187
  labels: {
129185
129188
  hidden: 'Show Rationale',
129186
129189
  visible: 'Hide Rationale'
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public"
5
5
  },
6
6
  "repository": "pie-framework/pie-elements",
7
- "version": "9.5.7-next.12+407ed842a",
7
+ "version": "9.5.7-next.18+4163ed18e",
8
8
  "description": "",
9
9
  "dependencies": {
10
10
  "@material-ui/core": "^3.9.2",
@@ -16,7 +16,7 @@
16
16
  },
17
17
  "author": "",
18
18
  "license": "ISC",
19
- "gitHead": "407ed842aa83643f461a691662b6ae7ca7d9ed7e",
19
+ "gitHead": "4163ed18e59a416491e321a00da1d60f62d33877",
20
20
  "scripts": {
21
21
  "postpublish": "../../scripts/postpublish"
22
22
  },