@pie-element/explicit-constructed-response 10.0.0-beta.1 → 10.0.0-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.
@@ -8,24 +8,21 @@ exports.default = exports.AlternateResponses = void 0;
8
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
9
  var _react = _interopRequireDefault(require("react"));
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
- var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
12
- var _map = _interopRequireDefault(require("lodash/map"));
13
- var _reduce = _interopRequireDefault(require("lodash/reduce"));
14
- var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
11
+ var _lodashEs = require("lodash-es");
15
12
  var _alternateSection = _interopRequireDefault(require("./alternateSection"));
16
13
  class AlternateResponses extends _react.default.Component {
17
14
  constructor(...args) {
18
15
  super(...args);
19
16
  (0, _defineProperty2.default)(this, "state", {
20
- maxLengthPerChoice: (0, _cloneDeep.default)(this.props.model.maxLengthPerChoice)
17
+ maxLengthPerChoice: (0, _lodashEs.cloneDeep)(this.props.model.maxLengthPerChoice)
21
18
  });
22
19
  (0, _defineProperty2.default)(this, "updateChoicesIfNeeded", props => {
23
- if (!this.state.choices || !(0, _isEqual.default)(this.state.choices, props.model.choices) || !(0, _isEqual.default)(props.model.choices, this.props.model.choices) || this.state.values && Object.keys(this.state.values).length !== Object.keys(this.props.model.choices).length || props.maxLengthPerChoiceEnabled !== this.props.maxLengthPerChoiceEnabled) {
20
+ if (!this.state.choices || !(0, _lodashEs.isEqual)(this.state.choices, props.model.choices) || !(0, _lodashEs.isEqual)(props.model.choices, this.props.model.choices) || this.state.values && Object.keys(this.state.values).length !== Object.keys(this.props.model.choices).length || props.maxLengthPerChoiceEnabled !== this.props.maxLengthPerChoiceEnabled) {
24
21
  const {
25
22
  choices,
26
23
  maxLengthPerChoice
27
24
  } = props.model;
28
- const selectedValues = (0, _reduce.default)(choices, (obj, c, key) => {
25
+ const selectedValues = (0, _lodashEs.reduce)(choices, (obj, c, key) => {
29
26
  // if maxLengthPerChoiceEnabled is true, we display all the choices
30
27
  if (c && (props.maxLengthPerChoiceEnabled || c.length > 1)) {
31
28
  obj[key] = c[0];
@@ -35,7 +32,7 @@ class AlternateResponses extends _react.default.Component {
35
32
  this.setState({
36
33
  choices: props.model.choices,
37
34
  values: selectedValues,
38
- maxLengthPerChoice: (0, _cloneDeep.default)(maxLengthPerChoice)
35
+ maxLengthPerChoice: (0, _lodashEs.cloneDeep)(maxLengthPerChoice)
39
36
  });
40
37
  }
41
38
  });
@@ -43,7 +40,7 @@ class AlternateResponses extends _react.default.Component {
43
40
  const {
44
41
  choices
45
42
  } = this.state;
46
- return (0, _reduce.default)(choices, (arr, c, key) => {
43
+ return (0, _lodashEs.reduce)(choices, (arr, c, key) => {
47
44
  if (c && c.length === 1 && !valueKey) {
48
45
  arr.push({
49
46
  label: c[0].label,
@@ -157,7 +154,7 @@ class AlternateResponses extends _react.default.Component {
157
154
  choicesErrors,
158
155
  pluginProps
159
156
  } = this.props;
160
- return /*#__PURE__*/_react.default.createElement("div", null, (0, _map.default)(choices, (c, key) => {
157
+ return /*#__PURE__*/_react.default.createElement("div", null, (0, _lodashEs.map)(choices, (c, key) => {
161
158
  // if maxLengthPerChoiceEnabled is true, we display all the choices
162
159
  if (c && (maxLengthPerChoiceEnabled || c.length > 1)) {
163
160
  const selected = this.state.values[key];
@@ -1 +1 @@
1
- {"version":3,"file":"alternateResponses.js","names":["_react","_interopRequireDefault","require","_propTypes","_isEqual","_map","_reduce","_cloneDeep","_alternateSection","AlternateResponses","React","Component","constructor","args","_defineProperty2","default","maxLengthPerChoice","cloneDeep","props","model","state","choices","isEqual","values","Object","keys","length","maxLengthPerChoiceEnabled","selectedValues","reduce","obj","c","key","setState","valueKey","arr","push","label","value","choice","onChange","sectionChoices","isNew","find","newChoices","newVal","section","onLengthChange","UNSAFE_componentWillReceiveProps","nextProps","updateChoicesIfNeeded","componentDidMount","render","spellCheck","choicesErrors","pluginProps","createElement","map","selected","errors","onSelect","onSectionSelect","choiceChanged","onChoiceChanged","choiceRemoved","onChoiceRemoved","lengthChanged","onLengthChanged","selectChoices","maxLength","showMaxLength","getRemainingChoices","exports","PropTypes","object","isRequired","func","bool","_default"],"sources":["../src/alternateResponses.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport isEqual from 'lodash/isEqual';\nimport map from 'lodash/map';\nimport reduce from 'lodash/reduce';\nimport cloneDeep from 'lodash/cloneDeep';\n\nimport AlternateSection from './alternateSection';\n\nexport class AlternateResponses extends React.Component {\n static propTypes = {\n choicesErrors: PropTypes.object,\n model: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n onLengthChange: PropTypes.func.isRequired,\n maxLengthPerChoiceEnabled: PropTypes.bool.isRequired,\n spellCheck: PropTypes.bool,\n pluginProps: PropTypes.object\n };\n\n state = { maxLengthPerChoice: cloneDeep(this.props.model.maxLengthPerChoice) };\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.updateChoicesIfNeeded(nextProps);\n }\n\n componentDidMount() {\n this.updateChoicesIfNeeded(this.props);\n }\n\n updateChoicesIfNeeded = (props) => {\n if (\n !this.state.choices ||\n !isEqual(this.state.choices, props.model.choices) ||\n !isEqual(props.model.choices, this.props.model.choices) ||\n (this.state.values && Object.keys(this.state.values).length !== Object.keys(this.props.model.choices).length) ||\n props.maxLengthPerChoiceEnabled !== this.props.maxLengthPerChoiceEnabled\n ) {\n const { choices, maxLengthPerChoice } = props.model;\n\n const selectedValues = reduce(\n choices,\n (obj, c, key) => {\n // if maxLengthPerChoiceEnabled is true, we display all the choices\n if (c && (props.maxLengthPerChoiceEnabled || c.length > 1)) {\n obj[key] = c[0];\n }\n\n return obj;\n },\n {},\n );\n\n this.setState({\n choices: props.model.choices,\n values: selectedValues,\n maxLengthPerChoice: cloneDeep(maxLengthPerChoice),\n });\n }\n };\n\n getRemainingChoices = (valueKey) => {\n const { choices } = this.state;\n\n return reduce(\n choices,\n (arr, c, key) => {\n if (c && c.length === 1 && !valueKey) {\n arr.push({\n label: c[0].label,\n value: key,\n });\n }\n\n return arr;\n },\n [],\n );\n };\n\n onChoiceChanged = (choice, key) => {\n const { onChange } = this.props;\n const { choices } = this.state;\n const sectionChoices = choices[key] || [];\n\n const isNew = !sectionChoices.find((c) => c.value === choice.value);\n\n const newChoices = sectionChoices.reduce((arr, c) => {\n const newVal = c.value === choice.value ? choice : c;\n\n arr.push(newVal);\n\n return arr;\n }, []);\n\n if (isNew) {\n newChoices.push(choice);\n }\n\n onChange({\n ...choices,\n [key]: newChoices,\n });\n };\n\n onChoiceRemoved = (value, section) => {\n const { onChange } = this.props;\n const { choices } = this.state;\n const sectionChoices = choices[section] || [];\n\n const newChoices = sectionChoices.reduce((arr, c) => {\n if (c.value === value) {\n return arr;\n }\n\n arr.push(c);\n\n return arr;\n }, []);\n\n onChange({\n ...choices,\n [section]: newChoices,\n });\n };\n\n onSectionSelect = (choice, key) => {\n const { onChange } = this.props;\n const { choices, values } = this.state;\n\n if (choices[key] && choices[key].length > 1) {\n if (!choice) {\n onChange({\n ...choices,\n [key]: [choices[key][0]],\n });\n }\n } else {\n this.setState({\n choices: {\n ...choices,\n [key]: [\n ...choices[key],\n {\n label: '',\n value: '1',\n },\n ],\n },\n values: {\n ...values,\n [key]: choices[key][0],\n },\n });\n }\n };\n\n onLengthChanged = (value, key) => {\n const { model, onLengthChange } = this.props;\n const { maxLengthPerChoice } = model;\n\n maxLengthPerChoice[key] = value;\n onLengthChange(maxLengthPerChoice);\n };\n\n render() {\n const { choices } = this.state;\n const {\n model: { maxLengthPerChoice, maxLengthPerChoiceEnabled },\n spellCheck,\n choicesErrors,\n pluginProps\n } = this.props;\n\n return (\n <div>\n {map(choices, (c, key) => {\n // if maxLengthPerChoiceEnabled is true, we display all the choices\n if (c && (maxLengthPerChoiceEnabled || c.length > 1)) {\n const selected = this.state.values[key];\n\n return (\n <AlternateSection\n key={key}\n value={selected && selected.value}\n errors={choicesErrors && choicesErrors[key]}\n onSelect={(choice) => this.onSectionSelect(choice, key)}\n choiceChanged={(choice) => this.onChoiceChanged(choice, key)}\n choiceRemoved={(value) => this.onChoiceRemoved(value, key)}\n lengthChanged={(value) => this.onLengthChanged(value, key)}\n selectChoices={[selected]}\n choices={c}\n maxLength={maxLengthPerChoice[key]}\n showMaxLength={maxLengthPerChoiceEnabled}\n spellCheck={spellCheck}\n pluginProps={pluginProps}\n />\n );\n }\n })}\n\n {choices && Object.keys(this.state.values).length !== Object.keys(choices).length && (\n <AlternateSection\n value=\"\"\n onSelect={(choice) => this.onSectionSelect(choice, choice.value)}\n choiceChanged={(choice) => this.onChoiceChanged(choice)}\n choiceRemoved={(value) => this.onChoiceRemoved(value)}\n selectChoices={this.getRemainingChoices()}\n spellCheck={spellCheck}\n pluginProps={pluginProps}\n />\n )}\n </div>\n );\n }\n}\n\nexport default AlternateResponses;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,QAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,IAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,OAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,UAAA,GAAAN,sBAAA,CAAAC,OAAA;AAEA,IAAAM,iBAAA,GAAAP,sBAAA,CAAAC,OAAA;AAEO,MAAMO,kBAAkB,SAASC,cAAK,CAACC,SAAS,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,iBAW9C;MAAEC,kBAAkB,EAAE,IAAAC,kBAAS,EAAC,IAAI,CAACC,KAAK,CAACC,KAAK,CAACH,kBAAkB;IAAE,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,iCAUrDG,KAAK,IAAK;MACjC,IACE,CAAC,IAAI,CAACE,KAAK,CAACC,OAAO,IACnB,CAAC,IAAAC,gBAAO,EAAC,IAAI,CAACF,KAAK,CAACC,OAAO,EAAEH,KAAK,CAACC,KAAK,CAACE,OAAO,CAAC,IACjD,CAAC,IAAAC,gBAAO,EAACJ,KAAK,CAACC,KAAK,CAACE,OAAO,EAAE,IAAI,CAACH,KAAK,CAACC,KAAK,CAACE,OAAO,CAAC,IACtD,IAAI,CAACD,KAAK,CAACG,MAAM,IAAIC,MAAM,CAACC,IAAI,CAAC,IAAI,CAACL,KAAK,CAACG,MAAM,CAAC,CAACG,MAAM,KAAKF,MAAM,CAACC,IAAI,CAAC,IAAI,CAACP,KAAK,CAACC,KAAK,CAACE,OAAO,CAAC,CAACK,MAAO,IAC7GR,KAAK,CAACS,yBAAyB,KAAK,IAAI,CAACT,KAAK,CAACS,yBAAyB,EACxE;QACA,MAAM;UAAEN,OAAO;UAAEL;QAAmB,CAAC,GAAGE,KAAK,CAACC,KAAK;QAEnD,MAAMS,cAAc,GAAG,IAAAC,eAAM,EAC3BR,OAAO,EACP,CAACS,GAAG,EAAEC,CAAC,EAAEC,GAAG,KAAK;UACf;UACA,IAAID,CAAC,KAAKb,KAAK,CAACS,yBAAyB,IAAII,CAAC,CAACL,MAAM,GAAG,CAAC,CAAC,EAAE;YAC1DI,GAAG,CAACE,GAAG,CAAC,GAAGD,CAAC,CAAC,CAAC,CAAC;UACjB;UAEA,OAAOD,GAAG;QACZ,CAAC,EACD,CAAC,CACH,CAAC;QAED,IAAI,CAACG,QAAQ,CAAC;UACZZ,OAAO,EAAEH,KAAK,CAACC,KAAK,CAACE,OAAO;UAC5BE,MAAM,EAAEK,cAAc;UACtBZ,kBAAkB,EAAE,IAAAC,kBAAS,EAACD,kBAAkB;QAClD,CAAC,CAAC;MACJ;IACF,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,+BAEsBmB,QAAQ,IAAK;MAClC,MAAM;QAAEb;MAAQ,CAAC,GAAG,IAAI,CAACD,KAAK;MAE9B,OAAO,IAAAS,eAAM,EACXR,OAAO,EACP,CAACc,GAAG,EAAEJ,CAAC,EAAEC,GAAG,KAAK;QACf,IAAID,CAAC,IAAIA,CAAC,CAACL,MAAM,KAAK,CAAC,IAAI,CAACQ,QAAQ,EAAE;UACpCC,GAAG,CAACC,IAAI,CAAC;YACPC,KAAK,EAAEN,CAAC,CAAC,CAAC,CAAC,CAACM,KAAK;YACjBC,KAAK,EAAEN;UACT,CAAC,CAAC;QACJ;QAEA,OAAOG,GAAG;MACZ,CAAC,EACD,EACF,CAAC;IACH,CAAC;IAAA,IAAArB,gBAAA,CAAAC,OAAA,2BAEiB,CAACwB,MAAM,EAAEP,GAAG,KAAK;MACjC,MAAM;QAAEQ;MAAS,CAAC,GAAG,IAAI,CAACtB,KAAK;MAC/B,MAAM;QAAEG;MAAQ,CAAC,GAAG,IAAI,CAACD,KAAK;MAC9B,MAAMqB,cAAc,GAAGpB,OAAO,CAACW,GAAG,CAAC,IAAI,EAAE;MAEzC,MAAMU,KAAK,GAAG,CAACD,cAAc,CAACE,IAAI,CAAEZ,CAAC,IAAKA,CAAC,CAACO,KAAK,KAAKC,MAAM,CAACD,KAAK,CAAC;MAEnE,MAAMM,UAAU,GAAGH,cAAc,CAACZ,MAAM,CAAC,CAACM,GAAG,EAAEJ,CAAC,KAAK;QACnD,MAAMc,MAAM,GAAGd,CAAC,CAACO,KAAK,KAAKC,MAAM,CAACD,KAAK,GAAGC,MAAM,GAAGR,CAAC;QAEpDI,GAAG,CAACC,IAAI,CAACS,MAAM,CAAC;QAEhB,OAAOV,GAAG;MACZ,CAAC,EAAE,EAAE,CAAC;MAEN,IAAIO,KAAK,EAAE;QACTE,UAAU,CAACR,IAAI,CAACG,MAAM,CAAC;MACzB;MAEAC,QAAQ,CAAC;QACP,GAAGnB,OAAO;QACV,CAACW,GAAG,GAAGY;MACT,CAAC,CAAC;IACJ,CAAC;IAAA,IAAA9B,gBAAA,CAAAC,OAAA,2BAEiB,CAACuB,KAAK,EAAEQ,OAAO,KAAK;MACpC,MAAM;QAAEN;MAAS,CAAC,GAAG,IAAI,CAACtB,KAAK;MAC/B,MAAM;QAAEG;MAAQ,CAAC,GAAG,IAAI,CAACD,KAAK;MAC9B,MAAMqB,cAAc,GAAGpB,OAAO,CAACyB,OAAO,CAAC,IAAI,EAAE;MAE7C,MAAMF,UAAU,GAAGH,cAAc,CAACZ,MAAM,CAAC,CAACM,GAAG,EAAEJ,CAAC,KAAK;QACnD,IAAIA,CAAC,CAACO,KAAK,KAAKA,KAAK,EAAE;UACrB,OAAOH,GAAG;QACZ;QAEAA,GAAG,CAACC,IAAI,CAACL,CAAC,CAAC;QAEX,OAAOI,GAAG;MACZ,CAAC,EAAE,EAAE,CAAC;MAENK,QAAQ,CAAC;QACP,GAAGnB,OAAO;QACV,CAACyB,OAAO,GAAGF;MACb,CAAC,CAAC;IACJ,CAAC;IAAA,IAAA9B,gBAAA,CAAAC,OAAA,2BAEiB,CAACwB,MAAM,EAAEP,GAAG,KAAK;MACjC,MAAM;QAAEQ;MAAS,CAAC,GAAG,IAAI,CAACtB,KAAK;MAC/B,MAAM;QAAEG,OAAO;QAAEE;MAAO,CAAC,GAAG,IAAI,CAACH,KAAK;MAEtC,IAAIC,OAAO,CAACW,GAAG,CAAC,IAAIX,OAAO,CAACW,GAAG,CAAC,CAACN,MAAM,GAAG,CAAC,EAAE;QAC3C,IAAI,CAACa,MAAM,EAAE;UACXC,QAAQ,CAAC;YACP,GAAGnB,OAAO;YACV,CAACW,GAAG,GAAG,CAACX,OAAO,CAACW,GAAG,CAAC,CAAC,CAAC,CAAC;UACzB,CAAC,CAAC;QACJ;MACF,CAAC,MAAM;QACL,IAAI,CAACC,QAAQ,CAAC;UACZZ,OAAO,EAAE;YACP,GAAGA,OAAO;YACV,CAACW,GAAG,GAAG,CACL,GAAGX,OAAO,CAACW,GAAG,CAAC,EACf;cACEK,KAAK,EAAE,EAAE;cACTC,KAAK,EAAE;YACT,CAAC;UAEL,CAAC;UACDf,MAAM,EAAE;YACN,GAAGA,MAAM;YACT,CAACS,GAAG,GAAGX,OAAO,CAACW,GAAG,CAAC,CAAC,CAAC;UACvB;QACF,CAAC,CAAC;MACJ;IACF,CAAC;IAAA,IAAAlB,gBAAA,CAAAC,OAAA,2BAEiB,CAACuB,KAAK,EAAEN,GAAG,KAAK;MAChC,MAAM;QAAEb,KAAK;QAAE4B;MAAe,CAAC,GAAG,IAAI,CAAC7B,KAAK;MAC5C,MAAM;QAAEF;MAAmB,CAAC,GAAGG,KAAK;MAEpCH,kBAAkB,CAACgB,GAAG,CAAC,GAAGM,KAAK;MAC/BS,cAAc,CAAC/B,kBAAkB,CAAC;IACpC,CAAC;EAAA;EA7IDgC,gCAAgCA,CAACC,SAAS,EAAE;IAC1C,IAAI,CAACC,qBAAqB,CAACD,SAAS,CAAC;EACvC;EAEAE,iBAAiBA,CAAA,EAAG;IAClB,IAAI,CAACD,qBAAqB,CAAC,IAAI,CAAChC,KAAK,CAAC;EACxC;EAyIAkC,MAAMA,CAAA,EAAG;IACP,MAAM;MAAE/B;IAAQ,CAAC,GAAG,IAAI,CAACD,KAAK;IAC9B,MAAM;MACJD,KAAK,EAAE;QAAEH,kBAAkB;QAAEW;MAA0B,CAAC;MACxD0B,UAAU;MACVC,aAAa;MACbC;IACF,CAAC,GAAG,IAAI,CAACrC,KAAK;IAEd,oBACElB,MAAA,CAAAe,OAAA,CAAAyC,aAAA,cACG,IAAAC,YAAG,EAACpC,OAAO,EAAE,CAACU,CAAC,EAAEC,GAAG,KAAK;MACxB;MACA,IAAID,CAAC,KAAKJ,yBAAyB,IAAII,CAAC,CAACL,MAAM,GAAG,CAAC,CAAC,EAAE;QACpD,MAAMgC,QAAQ,GAAG,IAAI,CAACtC,KAAK,CAACG,MAAM,CAACS,GAAG,CAAC;QAEvC,oBACEhC,MAAA,CAAAe,OAAA,CAAAyC,aAAA,CAAChD,iBAAA,CAAAO,OAAgB;UACfiB,GAAG,EAAEA,GAAI;UACTM,KAAK,EAAEoB,QAAQ,IAAIA,QAAQ,CAACpB,KAAM;UAClCqB,MAAM,EAAEL,aAAa,IAAIA,aAAa,CAACtB,GAAG,CAAE;UAC5C4B,QAAQ,EAAGrB,MAAM,IAAK,IAAI,CAACsB,eAAe,CAACtB,MAAM,EAAEP,GAAG,CAAE;UACxD8B,aAAa,EAAGvB,MAAM,IAAK,IAAI,CAACwB,eAAe,CAACxB,MAAM,EAAEP,GAAG,CAAE;UAC7DgC,aAAa,EAAG1B,KAAK,IAAK,IAAI,CAAC2B,eAAe,CAAC3B,KAAK,EAAEN,GAAG,CAAE;UAC3DkC,aAAa,EAAG5B,KAAK,IAAK,IAAI,CAAC6B,eAAe,CAAC7B,KAAK,EAAEN,GAAG,CAAE;UAC3DoC,aAAa,EAAE,CAACV,QAAQ,CAAE;UAC1BrC,OAAO,EAAEU,CAAE;UACXsC,SAAS,EAAErD,kBAAkB,CAACgB,GAAG,CAAE;UACnCsC,aAAa,EAAE3C,yBAA0B;UACzC0B,UAAU,EAAEA,UAAW;UACvBE,WAAW,EAAEA;QAAY,CAC1B,CAAC;MAEN;IACF,CAAC,CAAC,EAEDlC,OAAO,IAAIG,MAAM,CAACC,IAAI,CAAC,IAAI,CAACL,KAAK,CAACG,MAAM,CAAC,CAACG,MAAM,KAAKF,MAAM,CAACC,IAAI,CAACJ,OAAO,CAAC,CAACK,MAAM,iBAC/E1B,MAAA,CAAAe,OAAA,CAAAyC,aAAA,CAAChD,iBAAA,CAAAO,OAAgB;MACfuB,KAAK,EAAC,EAAE;MACRsB,QAAQ,EAAGrB,MAAM,IAAK,IAAI,CAACsB,eAAe,CAACtB,MAAM,EAAEA,MAAM,CAACD,KAAK,CAAE;MACjEwB,aAAa,EAAGvB,MAAM,IAAK,IAAI,CAACwB,eAAe,CAACxB,MAAM,CAAE;MACxDyB,aAAa,EAAG1B,KAAK,IAAK,IAAI,CAAC2B,eAAe,CAAC3B,KAAK,CAAE;MACtD8B,aAAa,EAAE,IAAI,CAACG,mBAAmB,CAAC,CAAE;MAC1ClB,UAAU,EAAEA,UAAW;MACvBE,WAAW,EAAEA;IAAY,CAC1B,CAEA,CAAC;EAEV;AACF;AAACiB,OAAA,CAAA/D,kBAAA,GAAAA,kBAAA;AAAA,IAAAK,gBAAA,CAAAC,OAAA,EA9MYN,kBAAkB,eACV;EACjB6C,aAAa,EAAEmB,kBAAS,CAACC,MAAM;EAC/BvD,KAAK,EAAEsD,kBAAS,CAACC,MAAM,CAACC,UAAU;EAClCnC,QAAQ,EAAEiC,kBAAS,CAACG,IAAI,CAACD,UAAU;EACnC5B,cAAc,EAAE0B,kBAAS,CAACG,IAAI,CAACD,UAAU;EACzChD,yBAAyB,EAAE8C,kBAAS,CAACI,IAAI,CAACF,UAAU;EACpDtB,UAAU,EAAEoB,kBAAS,CAACI,IAAI;EAC1BtB,WAAW,EAAEkB,kBAAS,CAACC;AACzB,CAAC;AAAA,IAAAI,QAAA,GAAAN,OAAA,CAAAzD,OAAA,GAuMYN,kBAAkB","ignoreList":[]}
1
+ {"version":3,"file":"alternateResponses.js","names":["_react","_interopRequireDefault","require","_propTypes","_lodashEs","_alternateSection","AlternateResponses","React","Component","constructor","args","_defineProperty2","default","maxLengthPerChoice","cloneDeep","props","model","state","choices","isEqual","values","Object","keys","length","maxLengthPerChoiceEnabled","selectedValues","reduce","obj","c","key","setState","valueKey","arr","push","label","value","choice","onChange","sectionChoices","isNew","find","newChoices","newVal","section","onLengthChange","UNSAFE_componentWillReceiveProps","nextProps","updateChoicesIfNeeded","componentDidMount","render","spellCheck","choicesErrors","pluginProps","createElement","map","selected","errors","onSelect","onSectionSelect","choiceChanged","onChoiceChanged","choiceRemoved","onChoiceRemoved","lengthChanged","onLengthChanged","selectChoices","maxLength","showMaxLength","getRemainingChoices","exports","PropTypes","object","isRequired","func","bool","_default"],"sources":["../src/alternateResponses.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { cloneDeep, isEqual, map, reduce } from 'lodash-es';\n\nimport AlternateSection from './alternateSection';\n\nexport class AlternateResponses extends React.Component {\n static propTypes = {\n choicesErrors: PropTypes.object,\n model: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n onLengthChange: PropTypes.func.isRequired,\n maxLengthPerChoiceEnabled: PropTypes.bool.isRequired,\n spellCheck: PropTypes.bool,\n pluginProps: PropTypes.object,\n };\n\n state = { maxLengthPerChoice: cloneDeep(this.props.model.maxLengthPerChoice) };\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.updateChoicesIfNeeded(nextProps);\n }\n\n componentDidMount() {\n this.updateChoicesIfNeeded(this.props);\n }\n\n updateChoicesIfNeeded = (props) => {\n if (\n !this.state.choices ||\n !isEqual(this.state.choices, props.model.choices) ||\n !isEqual(props.model.choices, this.props.model.choices) ||\n (this.state.values && Object.keys(this.state.values).length !== Object.keys(this.props.model.choices).length) ||\n props.maxLengthPerChoiceEnabled !== this.props.maxLengthPerChoiceEnabled\n ) {\n const { choices, maxLengthPerChoice } = props.model;\n\n const selectedValues = reduce(\n choices,\n (obj, c, key) => {\n // if maxLengthPerChoiceEnabled is true, we display all the choices\n if (c && (props.maxLengthPerChoiceEnabled || c.length > 1)) {\n obj[key] = c[0];\n }\n\n return obj;\n },\n {},\n );\n\n this.setState({\n choices: props.model.choices,\n values: selectedValues,\n maxLengthPerChoice: cloneDeep(maxLengthPerChoice),\n });\n }\n };\n\n getRemainingChoices = (valueKey) => {\n const { choices } = this.state;\n\n return reduce(\n choices,\n (arr, c, key) => {\n if (c && c.length === 1 && !valueKey) {\n arr.push({\n label: c[0].label,\n value: key,\n });\n }\n\n return arr;\n },\n [],\n );\n };\n\n onChoiceChanged = (choice, key) => {\n const { onChange } = this.props;\n const { choices } = this.state;\n const sectionChoices = choices[key] || [];\n\n const isNew = !sectionChoices.find((c) => c.value === choice.value);\n\n const newChoices = sectionChoices.reduce((arr, c) => {\n const newVal = c.value === choice.value ? choice : c;\n\n arr.push(newVal);\n\n return arr;\n }, []);\n\n if (isNew) {\n newChoices.push(choice);\n }\n\n onChange({\n ...choices,\n [key]: newChoices,\n });\n };\n\n onChoiceRemoved = (value, section) => {\n const { onChange } = this.props;\n const { choices } = this.state;\n const sectionChoices = choices[section] || [];\n\n const newChoices = sectionChoices.reduce((arr, c) => {\n if (c.value === value) {\n return arr;\n }\n\n arr.push(c);\n\n return arr;\n }, []);\n\n onChange({\n ...choices,\n [section]: newChoices,\n });\n };\n\n onSectionSelect = (choice, key) => {\n const { onChange } = this.props;\n const { choices, values } = this.state;\n\n if (choices[key] && choices[key].length > 1) {\n if (!choice) {\n onChange({\n ...choices,\n [key]: [choices[key][0]],\n });\n }\n } else {\n this.setState({\n choices: {\n ...choices,\n [key]: [\n ...choices[key],\n {\n label: '',\n value: '1',\n },\n ],\n },\n values: {\n ...values,\n [key]: choices[key][0],\n },\n });\n }\n };\n\n onLengthChanged = (value, key) => {\n const { model, onLengthChange } = this.props;\n const { maxLengthPerChoice } = model;\n\n maxLengthPerChoice[key] = value;\n onLengthChange(maxLengthPerChoice);\n };\n\n render() {\n const { choices } = this.state;\n const {\n model: { maxLengthPerChoice, maxLengthPerChoiceEnabled },\n spellCheck,\n choicesErrors,\n pluginProps,\n } = this.props;\n\n return (\n <div>\n {map(choices, (c, key) => {\n // if maxLengthPerChoiceEnabled is true, we display all the choices\n if (c && (maxLengthPerChoiceEnabled || c.length > 1)) {\n const selected = this.state.values[key];\n\n return (\n <AlternateSection\n key={key}\n value={selected && selected.value}\n errors={choicesErrors && choicesErrors[key]}\n onSelect={(choice) => this.onSectionSelect(choice, key)}\n choiceChanged={(choice) => this.onChoiceChanged(choice, key)}\n choiceRemoved={(value) => this.onChoiceRemoved(value, key)}\n lengthChanged={(value) => this.onLengthChanged(value, key)}\n selectChoices={[selected]}\n choices={c}\n maxLength={maxLengthPerChoice[key]}\n showMaxLength={maxLengthPerChoiceEnabled}\n spellCheck={spellCheck}\n pluginProps={pluginProps}\n />\n );\n }\n })}\n\n {choices && Object.keys(this.state.values).length !== Object.keys(choices).length && (\n <AlternateSection\n value=\"\"\n onSelect={(choice) => this.onSectionSelect(choice, choice.value)}\n choiceChanged={(choice) => this.onChoiceChanged(choice)}\n choiceRemoved={(value) => this.onChoiceRemoved(value)}\n selectChoices={this.getRemainingChoices()}\n spellCheck={spellCheck}\n pluginProps={pluginProps}\n />\n )}\n </div>\n );\n }\n}\n\nexport default AlternateResponses;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AAEA,IAAAG,iBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAEO,MAAMI,kBAAkB,SAASC,cAAK,CAACC,SAAS,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,iBAW9C;MAAEC,kBAAkB,EAAE,IAAAC,mBAAS,EAAC,IAAI,CAACC,KAAK,CAACC,KAAK,CAACH,kBAAkB;IAAE,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,iCAUrDG,KAAK,IAAK;MACjC,IACE,CAAC,IAAI,CAACE,KAAK,CAACC,OAAO,IACnB,CAAC,IAAAC,iBAAO,EAAC,IAAI,CAACF,KAAK,CAACC,OAAO,EAAEH,KAAK,CAACC,KAAK,CAACE,OAAO,CAAC,IACjD,CAAC,IAAAC,iBAAO,EAACJ,KAAK,CAACC,KAAK,CAACE,OAAO,EAAE,IAAI,CAACH,KAAK,CAACC,KAAK,CAACE,OAAO,CAAC,IACtD,IAAI,CAACD,KAAK,CAACG,MAAM,IAAIC,MAAM,CAACC,IAAI,CAAC,IAAI,CAACL,KAAK,CAACG,MAAM,CAAC,CAACG,MAAM,KAAKF,MAAM,CAACC,IAAI,CAAC,IAAI,CAACP,KAAK,CAACC,KAAK,CAACE,OAAO,CAAC,CAACK,MAAO,IAC7GR,KAAK,CAACS,yBAAyB,KAAK,IAAI,CAACT,KAAK,CAACS,yBAAyB,EACxE;QACA,MAAM;UAAEN,OAAO;UAAEL;QAAmB,CAAC,GAAGE,KAAK,CAACC,KAAK;QAEnD,MAAMS,cAAc,GAAG,IAAAC,gBAAM,EAC3BR,OAAO,EACP,CAACS,GAAG,EAAEC,CAAC,EAAEC,GAAG,KAAK;UACf;UACA,IAAID,CAAC,KAAKb,KAAK,CAACS,yBAAyB,IAAII,CAAC,CAACL,MAAM,GAAG,CAAC,CAAC,EAAE;YAC1DI,GAAG,CAACE,GAAG,CAAC,GAAGD,CAAC,CAAC,CAAC,CAAC;UACjB;UAEA,OAAOD,GAAG;QACZ,CAAC,EACD,CAAC,CACH,CAAC;QAED,IAAI,CAACG,QAAQ,CAAC;UACZZ,OAAO,EAAEH,KAAK,CAACC,KAAK,CAACE,OAAO;UAC5BE,MAAM,EAAEK,cAAc;UACtBZ,kBAAkB,EAAE,IAAAC,mBAAS,EAACD,kBAAkB;QAClD,CAAC,CAAC;MACJ;IACF,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,+BAEsBmB,QAAQ,IAAK;MAClC,MAAM;QAAEb;MAAQ,CAAC,GAAG,IAAI,CAACD,KAAK;MAE9B,OAAO,IAAAS,gBAAM,EACXR,OAAO,EACP,CAACc,GAAG,EAAEJ,CAAC,EAAEC,GAAG,KAAK;QACf,IAAID,CAAC,IAAIA,CAAC,CAACL,MAAM,KAAK,CAAC,IAAI,CAACQ,QAAQ,EAAE;UACpCC,GAAG,CAACC,IAAI,CAAC;YACPC,KAAK,EAAEN,CAAC,CAAC,CAAC,CAAC,CAACM,KAAK;YACjBC,KAAK,EAAEN;UACT,CAAC,CAAC;QACJ;QAEA,OAAOG,GAAG;MACZ,CAAC,EACD,EACF,CAAC;IACH,CAAC;IAAA,IAAArB,gBAAA,CAAAC,OAAA,2BAEiB,CAACwB,MAAM,EAAEP,GAAG,KAAK;MACjC,MAAM;QAAEQ;MAAS,CAAC,GAAG,IAAI,CAACtB,KAAK;MAC/B,MAAM;QAAEG;MAAQ,CAAC,GAAG,IAAI,CAACD,KAAK;MAC9B,MAAMqB,cAAc,GAAGpB,OAAO,CAACW,GAAG,CAAC,IAAI,EAAE;MAEzC,MAAMU,KAAK,GAAG,CAACD,cAAc,CAACE,IAAI,CAAEZ,CAAC,IAAKA,CAAC,CAACO,KAAK,KAAKC,MAAM,CAACD,KAAK,CAAC;MAEnE,MAAMM,UAAU,GAAGH,cAAc,CAACZ,MAAM,CAAC,CAACM,GAAG,EAAEJ,CAAC,KAAK;QACnD,MAAMc,MAAM,GAAGd,CAAC,CAACO,KAAK,KAAKC,MAAM,CAACD,KAAK,GAAGC,MAAM,GAAGR,CAAC;QAEpDI,GAAG,CAACC,IAAI,CAACS,MAAM,CAAC;QAEhB,OAAOV,GAAG;MACZ,CAAC,EAAE,EAAE,CAAC;MAEN,IAAIO,KAAK,EAAE;QACTE,UAAU,CAACR,IAAI,CAACG,MAAM,CAAC;MACzB;MAEAC,QAAQ,CAAC;QACP,GAAGnB,OAAO;QACV,CAACW,GAAG,GAAGY;MACT,CAAC,CAAC;IACJ,CAAC;IAAA,IAAA9B,gBAAA,CAAAC,OAAA,2BAEiB,CAACuB,KAAK,EAAEQ,OAAO,KAAK;MACpC,MAAM;QAAEN;MAAS,CAAC,GAAG,IAAI,CAACtB,KAAK;MAC/B,MAAM;QAAEG;MAAQ,CAAC,GAAG,IAAI,CAACD,KAAK;MAC9B,MAAMqB,cAAc,GAAGpB,OAAO,CAACyB,OAAO,CAAC,IAAI,EAAE;MAE7C,MAAMF,UAAU,GAAGH,cAAc,CAACZ,MAAM,CAAC,CAACM,GAAG,EAAEJ,CAAC,KAAK;QACnD,IAAIA,CAAC,CAACO,KAAK,KAAKA,KAAK,EAAE;UACrB,OAAOH,GAAG;QACZ;QAEAA,GAAG,CAACC,IAAI,CAACL,CAAC,CAAC;QAEX,OAAOI,GAAG;MACZ,CAAC,EAAE,EAAE,CAAC;MAENK,QAAQ,CAAC;QACP,GAAGnB,OAAO;QACV,CAACyB,OAAO,GAAGF;MACb,CAAC,CAAC;IACJ,CAAC;IAAA,IAAA9B,gBAAA,CAAAC,OAAA,2BAEiB,CAACwB,MAAM,EAAEP,GAAG,KAAK;MACjC,MAAM;QAAEQ;MAAS,CAAC,GAAG,IAAI,CAACtB,KAAK;MAC/B,MAAM;QAAEG,OAAO;QAAEE;MAAO,CAAC,GAAG,IAAI,CAACH,KAAK;MAEtC,IAAIC,OAAO,CAACW,GAAG,CAAC,IAAIX,OAAO,CAACW,GAAG,CAAC,CAACN,MAAM,GAAG,CAAC,EAAE;QAC3C,IAAI,CAACa,MAAM,EAAE;UACXC,QAAQ,CAAC;YACP,GAAGnB,OAAO;YACV,CAACW,GAAG,GAAG,CAACX,OAAO,CAACW,GAAG,CAAC,CAAC,CAAC,CAAC;UACzB,CAAC,CAAC;QACJ;MACF,CAAC,MAAM;QACL,IAAI,CAACC,QAAQ,CAAC;UACZZ,OAAO,EAAE;YACP,GAAGA,OAAO;YACV,CAACW,GAAG,GAAG,CACL,GAAGX,OAAO,CAACW,GAAG,CAAC,EACf;cACEK,KAAK,EAAE,EAAE;cACTC,KAAK,EAAE;YACT,CAAC;UAEL,CAAC;UACDf,MAAM,EAAE;YACN,GAAGA,MAAM;YACT,CAACS,GAAG,GAAGX,OAAO,CAACW,GAAG,CAAC,CAAC,CAAC;UACvB;QACF,CAAC,CAAC;MACJ;IACF,CAAC;IAAA,IAAAlB,gBAAA,CAAAC,OAAA,2BAEiB,CAACuB,KAAK,EAAEN,GAAG,KAAK;MAChC,MAAM;QAAEb,KAAK;QAAE4B;MAAe,CAAC,GAAG,IAAI,CAAC7B,KAAK;MAC5C,MAAM;QAAEF;MAAmB,CAAC,GAAGG,KAAK;MAEpCH,kBAAkB,CAACgB,GAAG,CAAC,GAAGM,KAAK;MAC/BS,cAAc,CAAC/B,kBAAkB,CAAC;IACpC,CAAC;EAAA;EA7IDgC,gCAAgCA,CAACC,SAAS,EAAE;IAC1C,IAAI,CAACC,qBAAqB,CAACD,SAAS,CAAC;EACvC;EAEAE,iBAAiBA,CAAA,EAAG;IAClB,IAAI,CAACD,qBAAqB,CAAC,IAAI,CAAChC,KAAK,CAAC;EACxC;EAyIAkC,MAAMA,CAAA,EAAG;IACP,MAAM;MAAE/B;IAAQ,CAAC,GAAG,IAAI,CAACD,KAAK;IAC9B,MAAM;MACJD,KAAK,EAAE;QAAEH,kBAAkB;QAAEW;MAA0B,CAAC;MACxD0B,UAAU;MACVC,aAAa;MACbC;IACF,CAAC,GAAG,IAAI,CAACrC,KAAK;IAEd,oBACEf,MAAA,CAAAY,OAAA,CAAAyC,aAAA,cACG,IAAAC,aAAG,EAACpC,OAAO,EAAE,CAACU,CAAC,EAAEC,GAAG,KAAK;MACxB;MACA,IAAID,CAAC,KAAKJ,yBAAyB,IAAII,CAAC,CAACL,MAAM,GAAG,CAAC,CAAC,EAAE;QACpD,MAAMgC,QAAQ,GAAG,IAAI,CAACtC,KAAK,CAACG,MAAM,CAACS,GAAG,CAAC;QAEvC,oBACE7B,MAAA,CAAAY,OAAA,CAAAyC,aAAA,CAAChD,iBAAA,CAAAO,OAAgB;UACfiB,GAAG,EAAEA,GAAI;UACTM,KAAK,EAAEoB,QAAQ,IAAIA,QAAQ,CAACpB,KAAM;UAClCqB,MAAM,EAAEL,aAAa,IAAIA,aAAa,CAACtB,GAAG,CAAE;UAC5C4B,QAAQ,EAAGrB,MAAM,IAAK,IAAI,CAACsB,eAAe,CAACtB,MAAM,EAAEP,GAAG,CAAE;UACxD8B,aAAa,EAAGvB,MAAM,IAAK,IAAI,CAACwB,eAAe,CAACxB,MAAM,EAAEP,GAAG,CAAE;UAC7DgC,aAAa,EAAG1B,KAAK,IAAK,IAAI,CAAC2B,eAAe,CAAC3B,KAAK,EAAEN,GAAG,CAAE;UAC3DkC,aAAa,EAAG5B,KAAK,IAAK,IAAI,CAAC6B,eAAe,CAAC7B,KAAK,EAAEN,GAAG,CAAE;UAC3DoC,aAAa,EAAE,CAACV,QAAQ,CAAE;UAC1BrC,OAAO,EAAEU,CAAE;UACXsC,SAAS,EAAErD,kBAAkB,CAACgB,GAAG,CAAE;UACnCsC,aAAa,EAAE3C,yBAA0B;UACzC0B,UAAU,EAAEA,UAAW;UACvBE,WAAW,EAAEA;QAAY,CAC1B,CAAC;MAEN;IACF,CAAC,CAAC,EAEDlC,OAAO,IAAIG,MAAM,CAACC,IAAI,CAAC,IAAI,CAACL,KAAK,CAACG,MAAM,CAAC,CAACG,MAAM,KAAKF,MAAM,CAACC,IAAI,CAACJ,OAAO,CAAC,CAACK,MAAM,iBAC/EvB,MAAA,CAAAY,OAAA,CAAAyC,aAAA,CAAChD,iBAAA,CAAAO,OAAgB;MACfuB,KAAK,EAAC,EAAE;MACRsB,QAAQ,EAAGrB,MAAM,IAAK,IAAI,CAACsB,eAAe,CAACtB,MAAM,EAAEA,MAAM,CAACD,KAAK,CAAE;MACjEwB,aAAa,EAAGvB,MAAM,IAAK,IAAI,CAACwB,eAAe,CAACxB,MAAM,CAAE;MACxDyB,aAAa,EAAG1B,KAAK,IAAK,IAAI,CAAC2B,eAAe,CAAC3B,KAAK,CAAE;MACtD8B,aAAa,EAAE,IAAI,CAACG,mBAAmB,CAAC,CAAE;MAC1ClB,UAAU,EAAEA,UAAW;MACvBE,WAAW,EAAEA;IAAY,CAC1B,CAEA,CAAC;EAEV;AACF;AAACiB,OAAA,CAAA/D,kBAAA,GAAAA,kBAAA;AAAA,IAAAK,gBAAA,CAAAC,OAAA,EA9MYN,kBAAkB,eACV;EACjB6C,aAAa,EAAEmB,kBAAS,CAACC,MAAM;EAC/BvD,KAAK,EAAEsD,kBAAS,CAACC,MAAM,CAACC,UAAU;EAClCnC,QAAQ,EAAEiC,kBAAS,CAACG,IAAI,CAACD,UAAU;EACnC5B,cAAc,EAAE0B,kBAAS,CAACG,IAAI,CAACD,UAAU;EACzChD,yBAAyB,EAAE8C,kBAAS,CAACI,IAAI,CAACF,UAAU;EACpDtB,UAAU,EAAEoB,kBAAS,CAACI,IAAI;EAC1BtB,WAAW,EAAEkB,kBAAS,CAACC;AACzB,CAAC;AAAA,IAAAI,QAAA,GAAAN,OAAA,CAAAzD,OAAA,GAuMYN,kBAAkB","ignoreList":[]}
@@ -9,8 +9,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
9
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
- var _debounce = _interopRequireDefault(require("lodash/debounce"));
13
- var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
12
+ var _lodashEs = require("lodash-es");
14
13
  var _Button = _interopRequireDefault(require("@mui/material/Button"));
15
14
  var _Delete = _interopRequireDefault(require("@mui/icons-material/Delete"));
16
15
  var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
@@ -18,7 +17,6 @@ var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
18
17
  var _Select = _interopRequireDefault(require("@mui/material/Select"));
19
18
  var _TextField = _interopRequireDefault(require("@mui/material/TextField"));
20
19
  var _styles = require("@mui/material/styles");
21
- var _max = _interopRequireDefault(require("lodash/max"));
22
20
  var _editableHtmlTipTap = _interopRequireDefault(require("@pie-lib/editable-html-tip-tap"));
23
21
  var _markupUtils = require("./markupUtils");
24
22
  const DesignContainer = (0, _styles.styled)('div')(({
@@ -99,7 +97,7 @@ class Choice extends _react.default.Component {
99
97
  (0, _defineProperty2.default)(this, "state", {
100
98
  value: this.props.markup
101
99
  });
102
- (0, _defineProperty2.default)(this, "updateText", (0, _debounce.default)(this.props.onChange, 300));
100
+ (0, _defineProperty2.default)(this, "updateText", (0, _lodashEs.debounce)(this.props.onChange, 300));
103
101
  (0, _defineProperty2.default)(this, "onChange", e => {
104
102
  const strippedValue = (0, _markupUtils.stripHtmlTags)(e);
105
103
  this.setState({
@@ -174,7 +172,7 @@ class AlternateSection extends _react.default.Component {
174
172
  super(...args);
175
173
  (0, _defineProperty2.default)(this, "state", {});
176
174
  (0, _defineProperty2.default)(this, "updateChoicesIfNeeded", props => {
177
- if (!this.state.choices || !(0, _isEqual.default)(props.choices, this.state.choices) || !(0, _isEqual.default)(props.choices, this.props.choices)) {
175
+ if (!this.state.choices || !(0, _lodashEs.isEqual)(props.choices, this.state.choices) || !(0, _lodashEs.isEqual)(props.choices, this.props.choices)) {
178
176
  this.setState({
179
177
  choices: props.choices
180
178
  });
@@ -195,7 +193,7 @@ class AlternateSection extends _react.default.Component {
195
193
  choices
196
194
  } = this.state;
197
195
  if (choices.length && choices[choices.length - 1].label !== '') {
198
- const value = (0, _max.default)(choices.map(c => parseInt(c.value)).filter(id => !isNaN(id))) || 0;
196
+ const value = (0, _lodashEs.max)(choices.map(c => parseInt(c.value)).filter(id => !isNaN(id))) || 0;
199
197
  this.setState({
200
198
  choices: [...choices, {
201
199
  value: `${value + 1}`,
@@ -1 +1 @@
1
- {"version":3,"file":"alternateSection.js","names":["_react","_interopRequireDefault","require","_propTypes","_debounce","_isEqual","_Button","_Delete","_IconButton","_MenuItem","_Select","_TextField","_styles","_max","_editableHtmlTipTap","_markupUtils","DesignContainer","styled","theme","marginBottom","spacing","AltChoices","alignItems","flexDirection","display","paddingTop","width","StyledEditableHtml","EditableHtml","hasError","flex","marginRight","border","palette","error","main","borderRadius","StyledDeleteButton","IconButton","fill","grey","SelectContainer","justifyContent","RightContainer","LengthField","TextField","borderBottomColor","divider","text","primary","ErrorText","fontSize","typography","color","ChoiceWrapper","Choice","React","Component","constructor","args","_defineProperty2","default","value","props","markup","debounce","onChange","e","strippedValue","stripHtmlTags","setState","updateText","event","key","UNSAFE_componentWillReceiveProps","nextProps","render","state","onDelete","spellCheck","showMaxLength","pluginProps","inputProps","maxLength","createElement","Fragment","_extends2","disableUnderline","onKeyDown","activePlugins","languageCharactersProps","language","autoWidthToolbar","toolbarOpts","minWidth","isHidden","characters","disabled","onClick","size","exports","PropTypes","string","func","isRequired","bool","object","AlternateSection","choices","isEqual","onSelect","selectChoices","target","find","c","length","label","max","map","parseInt","filter","id","isNaN","choice","index","choiceChanged","lengthChanged","labelLengthsArr","decodeHTML","newLength","Math","getAdjustedLength","choiceRemoved","numberValue","minLength","getChoicesMaxLength","updateChoicesIfNeeded","componentDidMount","errors","variant","displayEmpty","handleSelect","readOnly","MenuProps","transitionDuration","enter","exit","type","min","changeLength","onAddChoice","val","onChoiceChanged","onRemoveChoice","array","number","_default"],"sources":["../src/alternateSection.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport debounce from 'lodash/debounce';\nimport isEqual from 'lodash/isEqual';\nimport Button from '@mui/material/Button';\nimport Delete from '@mui/icons-material/Delete';\nimport IconButton from '@mui/material/IconButton';\nimport MenuItem from '@mui/material/MenuItem';\nimport Select from '@mui/material/Select';\nimport TextField from '@mui/material/TextField';\nimport { styled } from '@mui/material/styles';\nimport max from 'lodash/max';\nimport EditableHtml from '@pie-lib/editable-html-tip-tap';\nimport { stripHtmlTags, getAdjustedLength, decodeHTML } from './markupUtils';\n\nconst DesignContainer = styled('div')(({ theme }) => ({\n marginBottom: theme.spacing(0.5),\n}));\n\nconst AltChoices = styled('div')(({ theme }) => ({\n alignItems: 'flex-start',\n flexDirection: 'column',\n display: 'flex',\n paddingTop: theme.spacing(2.5),\n '& > *': {\n marginBottom: theme.spacing(2.5),\n width: '100%',\n },\n}));\n\nconst StyledEditableHtml = styled(EditableHtml)(({ theme, hasError }) => ({\n flex: '1',\n marginRight: theme.spacing(2.5),\n ...(hasError && {\n border: `2px solid ${theme.palette.error.main}`,\n borderRadius: '6px',\n }),\n}));\n\nconst StyledDeleteButton = styled(IconButton)(({ theme }) => ({\n '& svg': {\n fill: theme.palette.grey[600],\n },\n}));\n\nconst SelectContainer = styled('div')({\n alignItems: 'flex-end',\n display: 'flex',\n justifyContent: 'space-between',\n width: '100%',\n});\n\nconst RightContainer = styled('div')({\n alignItems: 'center',\n display: 'flex',\n});\n\nconst LengthField = styled(TextField)(({ theme }) => ({\n width: '230px',\n marginRight: theme.spacing(2.5),\n '& .MuiInput-underline:before': {\n borderBottomColor: theme.palette.divider,\n },\n '& .MuiInput-underline:hover:not(.Mui-disabled):before': {\n borderBottomColor: theme.palette.text.primary,\n },\n '& .MuiInput-underline:after': {\n borderBottomColor: theme.palette.primary.main,\n },\n}));\n\nconst ErrorText = styled('div')(({ theme }) => ({\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing(0.5),\n}));\n\nconst ChoiceWrapper = styled('div')({\n alignItems: 'center',\n display: 'flex',\n justifyContent: 'space-between',\n});\n\nexport class Choice extends React.Component {\n static propTypes = {\n error: PropTypes.string,\n markup: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n onDelete: PropTypes.func.isRequired,\n value: PropTypes.string,\n spellCheck: PropTypes.bool,\n showMaxLength: PropTypes.bool,\n pluginProps: PropTypes.object,\n };\n\n state = {\n value: this.props.markup,\n };\n\n updateText = debounce(this.props.onChange, 300);\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.markup) {\n this.setState({ value: nextProps.markup });\n }\n }\n\n onChange = (e) => {\n const strippedValue = stripHtmlTags(e);\n this.setState({ value: strippedValue });\n this.updateText(strippedValue);\n };\n\n onKeyDown = (event) => {\n if (event.key === 'Enter') {\n return true;\n }\n };\n\n render() {\n const { value } = this.state;\n const { onDelete, spellCheck, error, showMaxLength, pluginProps } = this.props;\n const inputProps = showMaxLength ? {} : { maxLength: 25 };\n\n return (\n <React.Fragment>\n <ChoiceWrapper>\n <StyledEditableHtml\n hasError={!!error}\n disableUnderline\n onChange={this.onChange}\n onKeyDown={this.onKeyDown}\n markup={value || ''}\n activePlugins={['languageCharacters']}\n pluginProps={pluginProps}\n languageCharactersProps={[{ language: 'spanish' }]}\n spellCheck={spellCheck}\n autoWidthToolbar\n toolbarOpts={{\n minWidth: 'auto',\n isHidden: !!pluginProps?.characters?.disabled,\n }}\n {...inputProps}\n />\n <StyledDeleteButton\n aria-label=\"delete\"\n onClick={onDelete}\n size=\"large\">\n <Delete />\n </StyledDeleteButton>\n </ChoiceWrapper>\n {error && <ErrorText>{error}</ErrorText>}\n </React.Fragment>\n );\n }\n}\n\nexport class AlternateSection extends React.Component {\n static propTypes = {\n choices: PropTypes.array,\n selectChoices: PropTypes.array.isRequired,\n errors: PropTypes.object,\n onSelect: PropTypes.func.isRequired,\n choiceChanged: PropTypes.func.isRequired,\n lengthChanged: PropTypes.func,\n choiceRemoved: PropTypes.func.isRequired,\n value: PropTypes.string,\n maxLength: PropTypes.number,\n showMaxLength: PropTypes.bool,\n spellCheck: PropTypes.bool,\n pluginProps: PropTypes.object,\n };\n\n state = {};\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.updateChoicesIfNeeded(nextProps);\n }\n\n componentDidMount() {\n this.updateChoicesIfNeeded(this.props);\n }\n\n updateChoicesIfNeeded = (props) => {\n if (\n !this.state.choices ||\n !isEqual(props.choices, this.state.choices) ||\n !isEqual(props.choices, this.props.choices)\n ) {\n this.setState({\n choices: props.choices,\n });\n }\n };\n\n handleSelect = (e) => {\n const { onSelect, selectChoices } = this.props;\n const { value } = e.target;\n\n onSelect(selectChoices.find((c) => c.value === value));\n };\n\n onAddChoice = () => {\n const { choices } = this.state;\n\n if (choices.length && choices[choices.length - 1].label !== '') {\n const value = max(choices.map((c) => parseInt(c.value)).filter((id) => !isNaN(id))) || 0;\n\n this.setState({\n choices: [\n ...choices,\n {\n value: `${value + 1}`,\n label: '',\n },\n ],\n });\n }\n };\n\n onChoiceChanged = (choice, value, index) => {\n const { choiceChanged, lengthChanged, maxLength, choices } = this.props;\n\n const labelLengthsArr = choices.map((choice) => decodeHTML(choice.label || '').length);\n labelLengthsArr[index] = decodeHTML(value).length;\n\n const newLength = Math.max(...labelLengthsArr);\n\n choiceChanged({\n ...choice,\n label: value,\n });\n\n if (newLength > maxLength || newLength + 10 <= maxLength) {\n lengthChanged(getAdjustedLength(newLength));\n }\n };\n\n onRemoveChoice = (choice) => {\n const { choiceRemoved } = this.props;\n\n choiceRemoved(choice.value);\n };\n\n getChoicesMaxLength = () => {\n const { choices } = this.state;\n\n if (!choices) {\n return 1;\n }\n\n const labelLengthsArr = choices.map((choice) => decodeHTML(choice.label || '').length);\n\n return Math.max(...labelLengthsArr);\n };\n\n changeLength = (event) => {\n const { lengthChanged } = this.props;\n const numberValue = parseInt(event.target.value, 10);\n const minLength = this.getChoicesMaxLength();\n\n if (numberValue && numberValue >= minLength && numberValue <= minLength + 10) {\n lengthChanged(numberValue);\n }\n };\n\n render() {\n const { selectChoices, maxLength, showMaxLength, value, spellCheck, errors, pluginProps } = this.props;\n const { choices } = this.state;\n const minLength = this.getChoicesMaxLength();\n\n return (\n <DesignContainer>\n <SelectContainer>\n <Select\n variant=\"standard\"\n displayEmpty\n onChange={this.handleSelect}\n value={value || ''}\n readOnly={showMaxLength}\n MenuProps={{\n transitionDuration: { enter: 225, exit: 195 }\n }}\n >\n <MenuItem value=\"\">\n <em>{value ? 'Remove selection' : 'Select a response'}</em>\n </MenuItem>\n {selectChoices.map((c, index) => (\n <MenuItem key={index} value={c?.value}>\n {decodeHTML(c?.label)}\n </MenuItem>\n ))}\n </Select>\n\n {choices && choices.length > 0 && (\n <RightContainer>\n {maxLength && showMaxLength && (\n <LengthField\n variant=\"standard\"\n label=\"Maximum length (characters)\"\n type=\"number\"\n inputProps={{\n min: minLength,\n max: minLength + 10,\n }}\n value={maxLength}\n onChange={this.changeLength}\n />\n )}\n <Button variant=\"contained\" color=\"primary\" onClick={this.onAddChoice}>\n Add\n </Button>\n </RightContainer>\n )}\n </SelectContainer>\n {errors && errors[0] && <ErrorText>{errors[0]}</ErrorText>}\n\n <AltChoices>\n {choices &&\n choices.map(\n (c, index) =>\n index > 0 && (\n <Choice\n key={index}\n markup={c.label}\n onChange={(val) => this.onChoiceChanged(c, val, index)}\n onDelete={() => this.onRemoveChoice(c)}\n spellCheck={spellCheck}\n error={errors && errors[index]}\n showMaxLength={showMaxLength}\n pluginProps={pluginProps}\n />\n ),\n )}\n </AltChoices>\n </DesignContainer>\n );\n }\n}\n\nexport default AlternateSection;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"alternateSection.js","names":["_react","_interopRequireDefault","require","_propTypes","_lodashEs","_Button","_Delete","_IconButton","_MenuItem","_Select","_TextField","_styles","_editableHtmlTipTap","_markupUtils","DesignContainer","styled","theme","marginBottom","spacing","AltChoices","alignItems","flexDirection","display","paddingTop","width","StyledEditableHtml","EditableHtml","hasError","flex","marginRight","border","palette","error","main","borderRadius","StyledDeleteButton","IconButton","fill","grey","SelectContainer","justifyContent","RightContainer","LengthField","TextField","borderBottomColor","divider","text","primary","ErrorText","fontSize","typography","color","ChoiceWrapper","Choice","React","Component","constructor","args","_defineProperty2","default","value","props","markup","debounce","onChange","e","strippedValue","stripHtmlTags","setState","updateText","event","key","UNSAFE_componentWillReceiveProps","nextProps","render","state","onDelete","spellCheck","showMaxLength","pluginProps","inputProps","maxLength","createElement","Fragment","_extends2","disableUnderline","onKeyDown","activePlugins","languageCharactersProps","language","autoWidthToolbar","toolbarOpts","minWidth","isHidden","characters","disabled","onClick","size","exports","PropTypes","string","func","isRequired","bool","object","AlternateSection","choices","isEqual","onSelect","selectChoices","target","find","c","length","label","max","map","parseInt","filter","id","isNaN","choice","index","choiceChanged","lengthChanged","labelLengthsArr","decodeHTML","newLength","Math","getAdjustedLength","choiceRemoved","numberValue","minLength","getChoicesMaxLength","updateChoicesIfNeeded","componentDidMount","errors","variant","displayEmpty","handleSelect","readOnly","MenuProps","transitionDuration","enter","exit","type","min","changeLength","onAddChoice","val","onChoiceChanged","onRemoveChoice","array","number","_default"],"sources":["../src/alternateSection.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { debounce, isEqual } from 'lodash-es';\nimport Button from '@mui/material/Button';\nimport Delete from '@mui/icons-material/Delete';\nimport IconButton from '@mui/material/IconButton';\nimport MenuItem from '@mui/material/MenuItem';\nimport Select from '@mui/material/Select';\nimport TextField from '@mui/material/TextField';\nimport { styled } from '@mui/material/styles';\nimport { max } from 'lodash-es';\nimport EditableHtml from '@pie-lib/editable-html-tip-tap';\nimport { stripHtmlTags, getAdjustedLength, decodeHTML } from './markupUtils';\n\nconst DesignContainer = styled('div')(({ theme }) => ({\n marginBottom: theme.spacing(0.5),\n}));\n\nconst AltChoices = styled('div')(({ theme }) => ({\n alignItems: 'flex-start',\n flexDirection: 'column',\n display: 'flex',\n paddingTop: theme.spacing(2.5),\n '& > *': {\n marginBottom: theme.spacing(2.5),\n width: '100%',\n },\n}));\n\nconst StyledEditableHtml = styled(EditableHtml)(({ theme, hasError }) => ({\n flex: '1',\n marginRight: theme.spacing(2.5),\n ...(hasError && {\n border: `2px solid ${theme.palette.error.main}`,\n borderRadius: '6px',\n }),\n}));\n\nconst StyledDeleteButton = styled(IconButton)(({ theme }) => ({\n '& svg': {\n fill: theme.palette.grey[600],\n },\n}));\n\nconst SelectContainer = styled('div')({\n alignItems: 'flex-end',\n display: 'flex',\n justifyContent: 'space-between',\n width: '100%',\n});\n\nconst RightContainer = styled('div')({\n alignItems: 'center',\n display: 'flex',\n});\n\nconst LengthField = styled(TextField)(({ theme }) => ({\n width: '230px',\n marginRight: theme.spacing(2.5),\n '& .MuiInput-underline:before': {\n borderBottomColor: theme.palette.divider,\n },\n '& .MuiInput-underline:hover:not(.Mui-disabled):before': {\n borderBottomColor: theme.palette.text.primary,\n },\n '& .MuiInput-underline:after': {\n borderBottomColor: theme.palette.primary.main,\n },\n}));\n\nconst ErrorText = styled('div')(({ theme }) => ({\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing(0.5),\n}));\n\nconst ChoiceWrapper = styled('div')({\n alignItems: 'center',\n display: 'flex',\n justifyContent: 'space-between',\n});\n\nexport class Choice extends React.Component {\n static propTypes = {\n error: PropTypes.string,\n markup: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n onDelete: PropTypes.func.isRequired,\n value: PropTypes.string,\n spellCheck: PropTypes.bool,\n showMaxLength: PropTypes.bool,\n pluginProps: PropTypes.object,\n };\n\n state = {\n value: this.props.markup,\n };\n\n updateText = debounce(this.props.onChange, 300);\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.markup) {\n this.setState({ value: nextProps.markup });\n }\n }\n\n onChange = (e) => {\n const strippedValue = stripHtmlTags(e);\n this.setState({ value: strippedValue });\n this.updateText(strippedValue);\n };\n\n onKeyDown = (event) => {\n if (event.key === 'Enter') {\n return true;\n }\n };\n\n render() {\n const { value } = this.state;\n const { onDelete, spellCheck, error, showMaxLength, pluginProps } = this.props;\n const inputProps = showMaxLength ? {} : { maxLength: 25 };\n\n return (\n <React.Fragment>\n <ChoiceWrapper>\n <StyledEditableHtml\n hasError={!!error}\n disableUnderline\n onChange={this.onChange}\n onKeyDown={this.onKeyDown}\n markup={value || ''}\n activePlugins={['languageCharacters']}\n pluginProps={pluginProps}\n languageCharactersProps={[{ language: 'spanish' }]}\n spellCheck={spellCheck}\n autoWidthToolbar\n toolbarOpts={{\n minWidth: 'auto',\n isHidden: !!pluginProps?.characters?.disabled,\n }}\n {...inputProps}\n />\n <StyledDeleteButton aria-label=\"delete\" onClick={onDelete} size=\"large\">\n <Delete />\n </StyledDeleteButton>\n </ChoiceWrapper>\n {error && <ErrorText>{error}</ErrorText>}\n </React.Fragment>\n );\n }\n}\n\nexport class AlternateSection extends React.Component {\n static propTypes = {\n choices: PropTypes.array,\n selectChoices: PropTypes.array.isRequired,\n errors: PropTypes.object,\n onSelect: PropTypes.func.isRequired,\n choiceChanged: PropTypes.func.isRequired,\n lengthChanged: PropTypes.func,\n choiceRemoved: PropTypes.func.isRequired,\n value: PropTypes.string,\n maxLength: PropTypes.number,\n showMaxLength: PropTypes.bool,\n spellCheck: PropTypes.bool,\n pluginProps: PropTypes.object,\n };\n\n state = {};\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.updateChoicesIfNeeded(nextProps);\n }\n\n componentDidMount() {\n this.updateChoicesIfNeeded(this.props);\n }\n\n updateChoicesIfNeeded = (props) => {\n if (\n !this.state.choices ||\n !isEqual(props.choices, this.state.choices) ||\n !isEqual(props.choices, this.props.choices)\n ) {\n this.setState({\n choices: props.choices,\n });\n }\n };\n\n handleSelect = (e) => {\n const { onSelect, selectChoices } = this.props;\n const { value } = e.target;\n\n onSelect(selectChoices.find((c) => c.value === value));\n };\n\n onAddChoice = () => {\n const { choices } = this.state;\n\n if (choices.length && choices[choices.length - 1].label !== '') {\n const value = max(choices.map((c) => parseInt(c.value)).filter((id) => !isNaN(id))) || 0;\n\n this.setState({\n choices: [\n ...choices,\n {\n value: `${value + 1}`,\n label: '',\n },\n ],\n });\n }\n };\n\n onChoiceChanged = (choice, value, index) => {\n const { choiceChanged, lengthChanged, maxLength, choices } = this.props;\n\n const labelLengthsArr = choices.map((choice) => decodeHTML(choice.label || '').length);\n labelLengthsArr[index] = decodeHTML(value).length;\n\n const newLength = Math.max(...labelLengthsArr);\n\n choiceChanged({\n ...choice,\n label: value,\n });\n\n if (newLength > maxLength || newLength + 10 <= maxLength) {\n lengthChanged(getAdjustedLength(newLength));\n }\n };\n\n onRemoveChoice = (choice) => {\n const { choiceRemoved } = this.props;\n\n choiceRemoved(choice.value);\n };\n\n getChoicesMaxLength = () => {\n const { choices } = this.state;\n\n if (!choices) {\n return 1;\n }\n\n const labelLengthsArr = choices.map((choice) => decodeHTML(choice.label || '').length);\n\n return Math.max(...labelLengthsArr);\n };\n\n changeLength = (event) => {\n const { lengthChanged } = this.props;\n const numberValue = parseInt(event.target.value, 10);\n const minLength = this.getChoicesMaxLength();\n\n if (numberValue && numberValue >= minLength && numberValue <= minLength + 10) {\n lengthChanged(numberValue);\n }\n };\n\n render() {\n const { selectChoices, maxLength, showMaxLength, value, spellCheck, errors, pluginProps } = this.props;\n const { choices } = this.state;\n const minLength = this.getChoicesMaxLength();\n\n return (\n <DesignContainer>\n <SelectContainer>\n <Select\n variant=\"standard\"\n displayEmpty\n onChange={this.handleSelect}\n value={value || ''}\n readOnly={showMaxLength}\n MenuProps={{\n transitionDuration: { enter: 225, exit: 195 },\n }}\n >\n <MenuItem value=\"\">\n <em>{value ? 'Remove selection' : 'Select a response'}</em>\n </MenuItem>\n {selectChoices.map((c, index) => (\n <MenuItem key={index} value={c?.value}>\n {decodeHTML(c?.label)}\n </MenuItem>\n ))}\n </Select>\n\n {choices && choices.length > 0 && (\n <RightContainer>\n {maxLength && showMaxLength && (\n <LengthField\n variant=\"standard\"\n label=\"Maximum length (characters)\"\n type=\"number\"\n inputProps={{\n min: minLength,\n max: minLength + 10,\n }}\n value={maxLength}\n onChange={this.changeLength}\n />\n )}\n <Button variant=\"contained\" color=\"primary\" onClick={this.onAddChoice}>\n Add\n </Button>\n </RightContainer>\n )}\n </SelectContainer>\n {errors && errors[0] && <ErrorText>{errors[0]}</ErrorText>}\n\n <AltChoices>\n {choices &&\n choices.map(\n (c, index) =>\n index > 0 && (\n <Choice\n key={index}\n markup={c.label}\n onChange={(val) => this.onChoiceChanged(c, val, index)}\n onDelete={() => this.onRemoveChoice(c)}\n spellCheck={spellCheck}\n error={errors && errors[index]}\n showMaxLength={showMaxLength}\n pluginProps={pluginProps}\n />\n ),\n )}\n </AltChoices>\n </DesignContainer>\n );\n }\n}\n\nexport default AlternateSection;\n"],"mappings":"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","ignoreList":[]}
@@ -24,6 +24,9 @@ var _default = exports.default = {
24
24
  },
25
25
  configuration: {
26
26
  baseInputConfiguration: {
27
+ h3: {
28
+ disabled: true
29
+ },
27
30
  html: {
28
31
  disabled: true
29
32
  },
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","names":["model","choices","displayType","markup","maxLengthPerChoiceEnabled","playerSpellCheckEnabled","prompt","promptEnabled","rationale","rationaleEnabled","spellCheckEnabled","studentInstructionsEnabled","teacherInstructions","teacherInstructionsEnabled","toolbarEditorPosition","responseAreaInputConfiguration","configuration","baseInputConfiguration","html","disabled","audio","video","image","textAlign","showParagraphs","separateParagraphs","settings","label","inputConfiguration","required","partialScoring","settingsPanelDisabled","spellCheck","enabled","editSource","playerSpellCheck","template","h3","blockquote","maxLengthPerChoice","maxResponseAreas","maxImageWidth","maxImageHeight","withRubric","mathMlOptions","mmlOutput","mmlEditing","language","languageChoices","options","characters","spanishButton"],"sources":["../src/defaults.js"],"sourcesContent":["export default {\n model: {\n choices: {},\n displayType: 'block',\n markup: '',\n maxLengthPerChoiceEnabled: true,\n playerSpellCheckEnabled: true,\n prompt: '',\n promptEnabled: true,\n rationale: '',\n rationaleEnabled: true,\n spellCheckEnabled: true,\n studentInstructionsEnabled: true,\n teacherInstructions: '',\n teacherInstructionsEnabled: true,\n toolbarEditorPosition: 'bottom',\n responseAreaInputConfiguration: {},\n },\n configuration: {\n baseInputConfiguration: {\n html: { disabled: true },\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n textAlign: { disabled: true },\n showParagraphs: { disabled: false },\n separateParagraphs: { disabled: true },\n },\n prompt: {\n settings: true,\n label: 'Prompt',\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n required: false,\n },\n partialScoring: {\n settings: false,\n label: 'Allow Partial Scoring',\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 required: false,\n },\n settingsPanelDisabled: false,\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n editSource: {\n label: 'Edit Source',\n settings: false,\n enabled: false,\n },\n playerSpellCheck: {\n label: 'Student Spellcheck',\n settings: true,\n enabled: true,\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 required: false,\n },\n template: {\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n h3: { disabled: true },\n blockquote: { disabled: true },\n },\n },\n maxLengthPerChoice: {\n settings: true,\n label: 'Maximum Length Per Choice',\n },\n maxResponseAreas: 10,\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 responseAreaInputConfiguration: {\n inputConfiguration: {\n characters: {\n disabled: true\n },\n },\n },\n spanishButton: {\n settings: true,\n label: 'Disable Spanish Characters',\n },\n },\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"defaults.js","names":["model","choices","displayType","markup","maxLengthPerChoiceEnabled","playerSpellCheckEnabled","prompt","promptEnabled","rationale","rationaleEnabled","spellCheckEnabled","studentInstructionsEnabled","teacherInstructions","teacherInstructionsEnabled","toolbarEditorPosition","responseAreaInputConfiguration","configuration","baseInputConfiguration","h3","disabled","html","audio","video","image","textAlign","showParagraphs","separateParagraphs","settings","label","inputConfiguration","required","partialScoring","settingsPanelDisabled","spellCheck","enabled","editSource","playerSpellCheck","template","blockquote","maxLengthPerChoice","maxResponseAreas","maxImageWidth","maxImageHeight","withRubric","mathMlOptions","mmlOutput","mmlEditing","language","languageChoices","options","characters","spanishButton"],"sources":["../src/defaults.js"],"sourcesContent":["export default {\n model: {\n choices: {},\n displayType: 'block',\n markup: '',\n maxLengthPerChoiceEnabled: true,\n playerSpellCheckEnabled: true,\n prompt: '',\n promptEnabled: true,\n rationale: '',\n rationaleEnabled: true,\n spellCheckEnabled: true,\n studentInstructionsEnabled: true,\n teacherInstructions: '',\n teacherInstructionsEnabled: true,\n toolbarEditorPosition: 'bottom',\n responseAreaInputConfiguration: {},\n },\n configuration: {\n baseInputConfiguration: {\n h3: { disabled: true },\n html: { disabled: true },\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n textAlign: { disabled: true },\n showParagraphs: { disabled: false },\n separateParagraphs: { disabled: true },\n },\n prompt: {\n settings: true,\n label: 'Prompt',\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n required: false,\n },\n partialScoring: {\n settings: false,\n label: 'Allow Partial Scoring',\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 required: false,\n },\n settingsPanelDisabled: false,\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n editSource: {\n label: 'Edit Source',\n settings: false,\n enabled: false,\n },\n playerSpellCheck: {\n label: 'Student Spellcheck',\n settings: true,\n enabled: true,\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 required: false,\n },\n template: {\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n h3: { disabled: true },\n blockquote: { disabled: true },\n },\n },\n maxLengthPerChoice: {\n settings: true,\n label: 'Maximum Length Per Choice',\n },\n maxResponseAreas: 10,\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 responseAreaInputConfiguration: {\n inputConfiguration: {\n characters: {\n disabled: true\n },\n },\n },\n spanishButton: {\n settings: true,\n label: 'Disable Spanish Characters',\n },\n },\n};\n"],"mappings":"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","ignoreList":[]}
@@ -9,11 +9,10 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
9
9
  var _react = _interopRequireDefault(require("react"));
10
10
  var _client = require("react-dom/client");
11
11
  var _debug = _interopRequireDefault(require("debug"));
12
- var _defaults = _interopRequireDefault(require("lodash/defaults"));
13
- var _isArray = _interopRequireDefault(require("lodash/isArray"));
12
+ var _lodashEs = require("lodash-es");
14
13
  var _pieConfigureEvents = require("@pie-framework/pie-configure-events");
15
14
  var _main = _interopRequireDefault(require("./main"));
16
- var _defaults2 = _interopRequireDefault(require("./defaults"));
15
+ var _defaults = _interopRequireDefault(require("./defaults"));
17
16
  var _markupUtils = require("./markupUtils");
18
17
  const log = (0, _debug.default)('explicit-constructed-response:configure');
19
18
  class ExplicitConstructedResponse extends HTMLElement {
@@ -21,7 +20,7 @@ class ExplicitConstructedResponse extends HTMLElement {
21
20
  super();
22
21
  this._root = null;
23
22
  this._model = ExplicitConstructedResponse.prepareModel();
24
- this._configuration = _defaults2.default.configuration;
23
+ this._configuration = _defaults.default.configuration;
25
24
  this.onModelChanged = this.onModelChanged.bind(this);
26
25
  this.onConfigurationChanged = this.onConfigurationChanged.bind(this);
27
26
  }
@@ -33,7 +32,7 @@ class ExplicitConstructedResponse extends HTMLElement {
33
32
  this._render();
34
33
  }
35
34
  set configuration(c) {
36
- this._configuration = (0, _defaults.default)(c, _defaults2.default.configuration);
35
+ this._configuration = (0, _lodashEs.defaults)(c, _defaults.default.configuration);
37
36
 
38
37
  // if language:enabled is true, then the corresponding default item model should include a language value;
39
38
  // if it is false, then the language field should be omitted from the item model.
@@ -129,7 +128,7 @@ class ExplicitConstructedResponse extends HTMLElement {
129
128
  exports.default = ExplicitConstructedResponse;
130
129
  (0, _defineProperty2.default)(ExplicitConstructedResponse, "prepareModel", (model = {}) => {
131
130
  const joinedObj = {
132
- ..._defaults2.default.model,
131
+ ..._defaults.default.model,
133
132
  ...model
134
133
  };
135
134
  const slateMarkup = joinedObj.slateMarkup || (0, _markupUtils.createSlateMarkup)(joinedObj.markup, joinedObj.choices);
@@ -139,7 +138,7 @@ exports.default = ExplicitConstructedResponse;
139
138
  // like: { label: 'test' }
140
139
  if (joinedObj.choices) {
141
140
  Object.keys(joinedObj.choices).forEach(key => {
142
- if ((0, _isArray.default)(joinedObj.choices[key])) {
141
+ if ((0, _lodashEs.isArray)(joinedObj.choices[key])) {
143
142
  joinedObj.choices[key] = (joinedObj.choices[key] || []).map((item, index) => {
144
143
  if (!item.value) {
145
144
  log('Choice does not contain "value" property, which is required.', item);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_client","_debug","_defaults","_isArray","_pieConfigureEvents","_main","_defaults2","_markupUtils","log","debug","ExplicitConstructedResponse","HTMLElement","constructor","_root","_model","prepareModel","_configuration","sensibleDefaults","configuration","onModelChanged","bind","onConfigurationChanged","model","s","responseAreaInputConfiguration","inputConfiguration","_render","c","defaults","language","enabled","languageChoices","options","length","value","settings","find","option","push","label","disableSidePanel","_disableSidePanel","dispatchModelUpdated","reset","resetValue","dispatchEvent","ModelUpdatedEvent","m","newInputConfig","insertImage","handler","InsertImageEvent","onDeleteImage","src","done","DeleteImageEvent","insertSound","InsertSoundEvent","onDeleteSound","DeleteSoundEvent","element","React","createElement","Main","imageSupport","add","delete","uploadSoundSupport","createRoot","render","disconnectedCallback","unmount","exports","default","_defineProperty2","joinedObj","slateMarkup","createSlateMarkup","markup","choices","processedMarkup","processMarkup","Object","keys","forEach","key","isArray","map","item","index"],"sources":["../src/index.js"],"sourcesContent":["import React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport debug from 'debug';\nimport defaults from 'lodash/defaults';\nimport isArray from 'lodash/isArray';\nimport {\n ModelUpdatedEvent,\n DeleteImageEvent,\n InsertImageEvent,\n InsertSoundEvent,\n DeleteSoundEvent,\n} from '@pie-framework/pie-configure-events';\n\nimport Main from './main';\n\nimport sensibleDefaults from './defaults';\nimport { processMarkup, createSlateMarkup } from './markupUtils';\n\nconst log = debug('explicit-constructed-response:configure');\n\nexport default class ExplicitConstructedResponse extends HTMLElement {\n static prepareModel = (model = {}) => {\n const joinedObj = {\n ...sensibleDefaults.model,\n ...model,\n };\n const slateMarkup = joinedObj.slateMarkup || createSlateMarkup(joinedObj.markup, joinedObj.choices);\n const processedMarkup = processMarkup(slateMarkup);\n\n // this was added to treat an exception, when the model has choices without the \"value\" property\n // like: { label: 'test' }\n if (joinedObj.choices) {\n Object.keys(joinedObj.choices).forEach((key) => {\n if (isArray(joinedObj.choices[key])) {\n joinedObj.choices[key] = (joinedObj.choices[key] || []).map((item, index) => {\n if (!item.value) {\n log('Choice does not contain \"value\" property, which is required.', item);\n return { value: `${index}`, ...item };\n }\n\n return item;\n });\n }\n });\n }\n\n return {\n ...joinedObj,\n slateMarkup,\n markup: processedMarkup,\n };\n };\n\n constructor() {\n super();\n this._root = null;\n this._model = ExplicitConstructedResponse.prepareModel();\n this._configuration = sensibleDefaults.configuration;\n this.onModelChanged = this.onModelChanged.bind(this);\n this.onConfigurationChanged = this.onConfigurationChanged.bind(this);\n }\n\n set model(s) {\n this._model = ExplicitConstructedResponse.prepareModel(s);\n if (this._model.responseAreaInputConfiguration) {\n this._model.responseAreaInputConfiguration = this._configuration.responseAreaInputConfiguration?.inputConfiguration;\n }\n this._render();\n }\n\n set configuration(c) {\n this._configuration = defaults(c, sensibleDefaults.configuration);\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 (c.language?.enabled) {\n if (c.languageChoices?.options?.length) {\n this._model.language = c.languageChoices.options[0].value;\n }\n } else if (c.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 set disableSidePanel(s) {\n this._disableSidePanel = s;\n this._render();\n }\n\n dispatchModelUpdated(reset) {\n const resetValue = !!reset;\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model, resetValue));\n }\n\n onModelChanged(m, reset) {\n this._model = ExplicitConstructedResponse.prepareModel(m);\n this._render();\n this.dispatchModelUpdated(reset);\n }\n\n onConfigurationChanged(c) {\n this._configuration = c;\n\n const newInputConfig = this._configuration?.responseAreaInputConfiguration?.inputConfiguration;\n\n this._model = {\n ...this._model,\n responseAreaInputConfiguration: newInputConfig\n };\n\n this.onModelChanged(this._model);\n }\n\n\n /** @param {done, progress, file} handler */\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 log('_render');\n\n let element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged,\n onConfigurationChanged: this.onConfigurationChanged,\n disableSidePanel: this._disableSidePanel,\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(element);\n }\n\n disconnectedCallback() {\n if (this._root) {\n this._root.unmount();\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_client","_debug","_lodashEs","_pieConfigureEvents","_main","_defaults","_markupUtils","log","debug","ExplicitConstructedResponse","HTMLElement","constructor","_root","_model","prepareModel","_configuration","sensibleDefaults","configuration","onModelChanged","bind","onConfigurationChanged","model","s","responseAreaInputConfiguration","inputConfiguration","_render","c","defaults","language","enabled","languageChoices","options","length","value","settings","find","option","push","label","disableSidePanel","_disableSidePanel","dispatchModelUpdated","reset","resetValue","dispatchEvent","ModelUpdatedEvent","m","newInputConfig","insertImage","handler","InsertImageEvent","onDeleteImage","src","done","DeleteImageEvent","insertSound","InsertSoundEvent","onDeleteSound","DeleteSoundEvent","element","React","createElement","Main","imageSupport","add","delete","uploadSoundSupport","createRoot","render","disconnectedCallback","unmount","exports","default","_defineProperty2","joinedObj","slateMarkup","createSlateMarkup","markup","choices","processedMarkup","processMarkup","Object","keys","forEach","key","isArray","map","item","index"],"sources":["../src/index.js"],"sourcesContent":["import React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport debug from 'debug';\nimport { defaults, isArray } from 'lodash-es';\nimport {\n ModelUpdatedEvent,\n DeleteImageEvent,\n InsertImageEvent,\n InsertSoundEvent,\n DeleteSoundEvent,\n} from '@pie-framework/pie-configure-events';\n\nimport Main from './main';\n\nimport sensibleDefaults from './defaults';\nimport { processMarkup, createSlateMarkup } from './markupUtils';\n\nconst log = debug('explicit-constructed-response:configure');\n\nexport default class ExplicitConstructedResponse extends HTMLElement {\n static prepareModel = (model = {}) => {\n const joinedObj = {\n ...sensibleDefaults.model,\n ...model,\n };\n const slateMarkup = joinedObj.slateMarkup || createSlateMarkup(joinedObj.markup, joinedObj.choices);\n const processedMarkup = processMarkup(slateMarkup);\n\n // this was added to treat an exception, when the model has choices without the \"value\" property\n // like: { label: 'test' }\n if (joinedObj.choices) {\n Object.keys(joinedObj.choices).forEach((key) => {\n if (isArray(joinedObj.choices[key])) {\n joinedObj.choices[key] = (joinedObj.choices[key] || []).map((item, index) => {\n if (!item.value) {\n log('Choice does not contain \"value\" property, which is required.', item);\n return { value: `${index}`, ...item };\n }\n\n return item;\n });\n }\n });\n }\n\n return {\n ...joinedObj,\n slateMarkup,\n markup: processedMarkup,\n };\n };\n\n constructor() {\n super();\n this._root = null;\n this._model = ExplicitConstructedResponse.prepareModel();\n this._configuration = sensibleDefaults.configuration;\n this.onModelChanged = this.onModelChanged.bind(this);\n this.onConfigurationChanged = this.onConfigurationChanged.bind(this);\n }\n\n set model(s) {\n this._model = ExplicitConstructedResponse.prepareModel(s);\n if (this._model.responseAreaInputConfiguration) {\n this._model.responseAreaInputConfiguration =\n this._configuration.responseAreaInputConfiguration?.inputConfiguration;\n }\n this._render();\n }\n\n set configuration(c) {\n this._configuration = defaults(c, sensibleDefaults.configuration);\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 (c.language?.enabled) {\n if (c.languageChoices?.options?.length) {\n this._model.language = c.languageChoices.options[0].value;\n }\n } else if (c.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 set disableSidePanel(s) {\n this._disableSidePanel = s;\n this._render();\n }\n\n dispatchModelUpdated(reset) {\n const resetValue = !!reset;\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model, resetValue));\n }\n\n onModelChanged(m, reset) {\n this._model = ExplicitConstructedResponse.prepareModel(m);\n this._render();\n this.dispatchModelUpdated(reset);\n }\n\n onConfigurationChanged(c) {\n this._configuration = c;\n\n const newInputConfig = this._configuration?.responseAreaInputConfiguration?.inputConfiguration;\n\n this._model = {\n ...this._model,\n responseAreaInputConfiguration: newInputConfig,\n };\n\n this.onModelChanged(this._model);\n }\n\n /** @param {done, progress, file} handler */\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 log('_render');\n\n let element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged,\n onConfigurationChanged: this.onConfigurationChanged,\n disableSidePanel: this._disableSidePanel,\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(element);\n }\n\n disconnectedCallback() {\n if (this._root) {\n this._root.unmount();\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -8,10 +8,7 @@ exports.default = exports.Main = void 0;
8
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
9
  var _react = _interopRequireDefault(require("react"));
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
- var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
12
- var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
13
- var _pick = _interopRequireDefault(require("lodash/pick"));
14
- var _throttle = _interopRequireDefault(require("lodash/throttle"));
11
+ var _lodashEs = require("lodash-es");
15
12
  var _editableHtmlTipTap = _interopRequireWildcard(require("@pie-lib/editable-html-tip-tap"));
16
13
  var _configUi = require("@pie-lib/config-ui");
17
14
  var _styles = require("@mui/material/styles");
@@ -184,7 +181,7 @@ class Main extends _react.default.Component {
184
181
  const allChoices = {};
185
182
  const updatedMaxLengthPerChoice = [];
186
183
  allRespAreas.forEach((el, index) => {
187
- const newChoices = (0, _cloneDeep.default)(choices[el.dataset.index]);
184
+ const newChoices = (0, _lodashEs.cloneDeep)(choices[el.dataset.index]);
188
185
  if (newChoices) {
189
186
  newChoices[0] = {
190
187
  label: el.dataset.value || '',
@@ -205,7 +202,7 @@ class Main extends _react.default.Component {
205
202
  cachedChoices: undefined
206
203
  }, callback);
207
204
  });
208
- (0, _defineProperty2.default)(this, "onHandleAreaChange", (0, _throttle.default)(nodes => {
205
+ (0, _defineProperty2.default)(this, "onHandleAreaChange", (0, _lodashEs.throttle)(nodes => {
209
206
  const {
210
207
  model: {
211
208
  choices
@@ -218,17 +215,17 @@ class Main extends _react.default.Component {
218
215
  if (!nodes) {
219
216
  return;
220
217
  }
221
- const newChoices = choices ? (0, _cloneDeep.default)(choices) : {};
222
- const newCachedChoices = cachedChoices ? (0, _cloneDeep.default)(cachedChoices) : {};
218
+ const newChoices = choices ? (0, _lodashEs.cloneDeep)(choices) : {};
219
+ const newCachedChoices = cachedChoices ? (0, _lodashEs.cloneDeep)(cachedChoices) : {};
223
220
  nodes.forEach(node => {
224
221
  const keyForNode = node.index;
225
222
  if (!newChoices[keyForNode] && newCachedChoices[keyForNode]) {
226
- Object.assign(newChoices, (0, _pick.default)(newCachedChoices, keyForNode));
223
+ Object.assign(newChoices, (0, _lodashEs.pick)(newCachedChoices, keyForNode));
227
224
  if (Object.prototype.hasOwnProperty.call(newCachedChoices, keyForNode)) {
228
225
  delete newCachedChoices[keyForNode];
229
226
  }
230
227
  } else {
231
- Object.assign(newCachedChoices, (0, _pick.default)(newChoices, keyForNode));
228
+ Object.assign(newCachedChoices, (0, _lodashEs.pick)(newChoices, keyForNode));
232
229
  if (Object.prototype.hasOwnProperty.call(newChoices, keyForNode)) {
233
230
  delete newChoices[keyForNode];
234
231
  }
@@ -466,7 +463,7 @@ class Main extends _react.default.Component {
466
463
  }],
467
464
  mathMlOptions: mathMlOptions,
468
465
  autoWidthToolbar: true
469
- }), responseAreasError && /*#__PURE__*/_react.default.createElement(ErrorText, null, responseAreasError), !(0, _isEmpty.default)(model.choices) && /*#__PURE__*/_react.default.createElement(ResponseHeader, null, `Define Alternates ${maxLengthPerChoiceEnabled ? 'and Character Limits' : ''}`), /*#__PURE__*/_react.default.createElement(_alternateResponses.default, {
466
+ }), responseAreasError && /*#__PURE__*/_react.default.createElement(ErrorText, null, responseAreasError), !(0, _lodashEs.isEmpty)(model.choices) && /*#__PURE__*/_react.default.createElement(ResponseHeader, null, `Define Alternates ${maxLengthPerChoiceEnabled ? 'and Character Limits' : ''}`), /*#__PURE__*/_react.default.createElement(_alternateResponses.default, {
470
467
  model: model,
471
468
  onChange: this.onResponsesChanged,
472
469
  onLengthChange: this.onLengthChanged,