@pie-lib/render-ui 4.35.3-next.0 → 4.35.3-next.155

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.
Files changed (60) hide show
  1. package/CHANGELOG.md +9 -81
  2. package/esm/package.json +3 -0
  3. package/lib/append-css-rules.js +10 -37
  4. package/lib/append-css-rules.js.map +1 -1
  5. package/lib/assets/enableAudioAutoplayImage.js +1 -2
  6. package/lib/assets/enableAudioAutoplayImage.js.map +1 -1
  7. package/lib/collapsible/index.js +35 -65
  8. package/lib/collapsible/index.js.map +1 -1
  9. package/lib/color.js +57 -201
  10. package/lib/color.js.map +1 -1
  11. package/lib/feedback.js +71 -108
  12. package/lib/feedback.js.map +1 -1
  13. package/lib/has-media.js +2 -7
  14. package/lib/has-media.js.map +1 -1
  15. package/lib/has-text.js +1 -7
  16. package/lib/has-text.js.map +1 -1
  17. package/lib/html-and-math.js +10 -30
  18. package/lib/html-and-math.js.map +1 -1
  19. package/lib/index.js +1 -24
  20. package/lib/index.js.map +1 -1
  21. package/lib/input-container.js +43 -44
  22. package/lib/input-container.js.map +1 -1
  23. package/lib/preview-layout.js +22 -58
  24. package/lib/preview-layout.js.map +1 -1
  25. package/lib/preview-prompt.js +104 -131
  26. package/lib/preview-prompt.js.map +1 -1
  27. package/lib/purpose.js +1 -7
  28. package/lib/purpose.js.map +1 -1
  29. package/lib/readable.js +1 -7
  30. package/lib/readable.js.map +1 -1
  31. package/lib/response-indicators.js +37 -86
  32. package/lib/response-indicators.js.map +1 -1
  33. package/lib/ui-layout.js +53 -70
  34. package/lib/ui-layout.js.map +1 -1
  35. package/lib/withUndoReset.js +51 -97
  36. package/lib/withUndoReset.js.map +1 -1
  37. package/package.json +23 -13
  38. package/src/__tests__/html-and-math.test.js +26 -14
  39. package/src/__tests__/preview-prompt.test.jsx +43 -40
  40. package/src/__tests__/purpose.test.jsx +27 -23
  41. package/src/__tests__/readable.test.jsx +34 -29
  42. package/src/__tests__/response-indicators.test.jsx +104 -9
  43. package/src/__tests__/ui-layout.test.jsx +28 -12
  44. package/src/__tests__/withUndoReset.test.jsx +110 -188
  45. package/src/collapsible/__tests__/index.test.jsx +33 -7
  46. package/src/collapsible/index.jsx +17 -17
  47. package/src/color.js +1 -5
  48. package/src/feedback.jsx +59 -63
  49. package/src/input-container.jsx +41 -32
  50. package/src/preview-layout.jsx +11 -23
  51. package/src/preview-prompt.jsx +76 -58
  52. package/src/response-indicators.jsx +22 -29
  53. package/src/ui-layout.jsx +41 -28
  54. package/src/withUndoReset.jsx +48 -50
  55. package/src/__tests__/__snapshots__/html-and-math.test.js.snap +0 -11
  56. package/src/__tests__/__snapshots__/preview-prompt.test.jsx.snap +0 -37
  57. package/src/__tests__/__snapshots__/purpose.test.jsx.snap +0 -42
  58. package/src/__tests__/__snapshots__/readable.test.jsx.snap +0 -64
  59. package/src/__tests__/__snapshots__/response-indicators.test.jsx.snap +0 -27
  60. package/src/collapsible/__tests__/__snapshots__/index.test.jsx.snap +0 -18
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/input-container.jsx"],"names":["RawInputContainer","props","label","className","children","classes","names","formControl","propTypes","PropTypes","oneOfType","string","object","isRequired","arrayOf","node","theme","marginLeft","marginRight","paddingBottom","spacing","unit","flex","minWidth","fontSize","whiteSpace"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,KAAD,EAAW;AACnC,MAAQC,KAAR,GAAgDD,KAAhD,CAAQC,KAAR;AAAA,MAAeC,SAAf,GAAgDF,KAAhD,CAAeE,SAAf;AAAA,MAA0BC,QAA1B,GAAgDH,KAAhD,CAA0BG,QAA1B;AAAA,MAAoCC,OAApC,GAAgDJ,KAAhD,CAAoCI,OAApC;AACA,MAAMC,KAAK,GAAG,4BAAWD,OAAO,CAACE,WAAnB,EAAgCJ,SAAhC,CAAd;AAEA,sBACE,gCAAC,uBAAD;AAAa,IAAA,SAAS,EAAEG;AAAxB,kBACE,gCAAC,sBAAD;AAAY,IAAA,SAAS,EAAED,OAAO,CAACH,KAA/B;AAAsC,IAAA,MAAM,EAAE;AAA9C,KACGA,KADH,CADF,EAIGE,QAJH,CADF;AAQD,CAZD;;AAcAJ,iBAAiB,CAACQ,SAAlB,GAA8B;AAC5BN,EAAAA,KAAK,EAAEO,sBAAUC,SAAV,CAAoB,CAACD,sBAAUE,MAAX,EAAmBF,sBAAUG,MAA7B,CAApB,EAA0DC,UADrC;AAE5BV,EAAAA,SAAS,EAAEM,sBAAUE,MAFO;AAG5BP,EAAAA,QAAQ,EAAEK,sBAAUC,SAAV,CAAoB,CAACD,sBAAUK,OAAV,CAAkBL,sBAAUM,IAA5B,CAAD,EAAoCN,sBAAUM,IAA9C,CAApB,EAAyEF,UAHvD;AAI5BR,EAAAA,OAAO,EAAEI,sBAAUG,MAAV,CAAiBC;AAJE,CAA9B;;eAOe,wBAAW,UAACG,KAAD;AAAA,SAAY;AACpCT,IAAAA,WAAW,EAAE;AACXU,MAAAA,UAAU,EAAE,CADD;AAEXC,MAAAA,WAAW,EAAE,CAFF;AAGXC,MAAAA,aAAa,EAAEH,KAAK,CAACI,OAAN,CAAcC,IAHlB;AAIXC,MAAAA,IAAI,EAAE,UAJK;AAKXC,MAAAA,QAAQ,EAAEP,KAAK,CAACI,OAAN,CAAcC,IAAd,GAAqB;AALpB,KADuB;AAQpCnB,IAAAA,KAAK,EAAE;AACLsB,MAAAA,QAAQ,EAAE,SADL;AAELC,MAAAA,UAAU,EAAE;AAFP;AAR6B,GAAZ;AAAA,CAAX,EAYXzB,iBAZW,C","sourcesContent":["import InputLabel from '@material-ui/core/InputLabel';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport classNames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport FormControl from '@material-ui/core/FormControl';\n\nconst RawInputContainer = (props) => {\n const { label, className, children, classes } = props;\n const names = classNames(classes.formControl, className);\n\n return (\n <FormControl className={names}>\n <InputLabel className={classes.label} shrink={true}>\n {label}\n </InputLabel>\n {children}\n </FormControl>\n );\n};\n\nRawInputContainer.propTypes = {\n label: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired,\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n classes: PropTypes.object.isRequired,\n};\n\nexport default withStyles((theme) => ({\n formControl: {\n marginLeft: 0,\n marginRight: 0,\n paddingBottom: theme.spacing.unit,\n flex: '1 0 auto',\n minWidth: theme.spacing.unit * 4,\n },\n label: {\n fontSize: 'inherit',\n whiteSpace: 'nowrap',\n },\n}))(RawInputContainer);\n"],"file":"input-container.js"}
1
+ {"version":3,"file":"input-container.js","names":["_InputLabel","_interopRequireDefault","require","_propTypes","_react","_styles","_FormControl","StyledFormControl","styled","FormControl","_ref","theme","margin","padding","flex","minWidth","spacing","StyledInputLabel","InputLabel","fontSize","whiteSpace","alignSelf","position","top","left","transformOrigin","pointerEvents","transform","InputContainer","_ref2","label","className","children","createElement","shrink","propTypes","PropTypes","oneOfType","string","object","isRequired","arrayOf","node","_default","exports"],"sources":["../src/input-container.jsx"],"sourcesContent":["import InputLabel from '@mui/material/InputLabel';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { styled } from '@mui/material/styles';\nimport FormControl from '@mui/material/FormControl';\n\nconst StyledFormControl = styled(FormControl)(({ theme }) => ({\n margin: 0,\n padding: 0,\n flex: '1 0 auto',\n minWidth: theme.spacing(4),\n}));\n\nconst StyledInputLabel = styled(InputLabel)(() => ({\n fontSize: 'inherit',\n whiteSpace: 'nowrap',\n margin: 0,\n padding: 0,\n alignSelf: 'flex-start',\n position: 'absolute',\n top: 0,\n left: 0,\n transformOrigin: 'top left',\n pointerEvents: 'none',\n // override MUI's default transform styles\n '&.MuiInputLabel-shrink': {\n transform: 'scale(0.75) translate(0, -0.75em)',\n },\n '&:not(.MuiInputLabel-shrink)': {\n transform: 'translate(0, 0)',\n },\n}));\n\nconst InputContainer = ({ label, className, children }) => (\n <StyledFormControl className={className}>\n <StyledInputLabel shrink>{label}</StyledInputLabel>\n {children}\n </StyledFormControl>\n);\n\nInputContainer.propTypes = {\n label: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired,\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]).isRequired,\n};\n\nexport default InputContainer;\n"],"mappings":";;;;;;;AAAA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAL,sBAAA,CAAAC,OAAA;AAEA,IAAMK,iBAAiB,GAAG,IAAAC,cAAM,EAACC,uBAAW,CAAC,CAAC,UAAAC,IAAA;EAAA,IAAGC,KAAK,GAAAD,IAAA,CAALC,KAAK;EAAA,OAAQ;IAC5DC,MAAM,EAAE,CAAC;IACTC,OAAO,EAAE,CAAC;IACVC,IAAI,EAAE,UAAU;IAChBC,QAAQ,EAAEJ,KAAK,CAACK,OAAO,CAAC,CAAC;EAC3B,CAAC;AAAA,CAAC,CAAC;AAEH,IAAMC,gBAAgB,GAAG,IAAAT,cAAM,EAACU,sBAAU,CAAC,CAAC;EAAA,OAAO;IAClDC,QAAQ,EAAE,SAAS;IAClBC,UAAU,EAAE,QAAQ;IACpBR,MAAM,EAAE,CAAC;IACTC,OAAO,EAAE,CAAC;IACVQ,SAAS,EAAE,YAAY;IACvBC,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,eAAe,EAAE,UAAU;IAC3BC,aAAa,EAAE,MAAM;IACrB;IACA,wBAAwB,EAAE;MACxBC,SAAS,EAAE;IACb,CAAC;IACD,8BAA8B,EAAE;MAC9BA,SAAS,EAAE;IACb;EACF,CAAC;AAAA,CAAC,CAAC;AAEH,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,KAAA;EAAA,IAAMC,KAAK,GAAAD,KAAA,CAALC,KAAK;IAAEC,SAAS,GAAAF,KAAA,CAATE,SAAS;IAAEC,QAAQ,GAAAH,KAAA,CAARG,QAAQ;EAAA,oBAClD5B,MAAA,YAAA6B,aAAA,CAAC1B,iBAAiB;IAACwB,SAAS,EAAEA;EAAU,gBACtC3B,MAAA,YAAA6B,aAAA,CAAChB,gBAAgB;IAACiB,MAAM;EAAA,GAAEJ,KAAwB,CAAC,EAClDE,QACgB,CAAC;AAAA,CACrB;AAEDJ,cAAc,CAACO,SAAS,GAAG;EACzBL,KAAK,EAAEM,qBAAS,CAACC,SAAS,CAAC,CAACD,qBAAS,CAACE,MAAM,EAAEF,qBAAS,CAACG,MAAM,CAAC,CAAC,CAACC,UAAU;EAC3ET,SAAS,EAAEK,qBAAS,CAACE,MAAM;EAC3BN,QAAQ,EAAEI,qBAAS,CAACC,SAAS,CAAC,CAC5BD,qBAAS,CAACK,OAAO,CAACL,qBAAS,CAACM,IAAI,CAAC,EACjCN,qBAAS,CAACM,IAAI,CACf,CAAC,CAACF;AACL,CAAC;AAAC,IAAAG,QAAA,GAAAC,OAAA,cAEahB,cAAc","ignoreList":[]}
@@ -1,77 +1,59 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
9
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
10
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
11
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
12
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
13
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
22
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
15
  var _react = _interopRequireDefault(require("react"));
25
-
26
- var _styles = require("@material-ui/core/styles");
27
-
16
+ var _styles = require("@mui/material/styles");
28
17
  var _propTypes = _interopRequireDefault(require("prop-types"));
29
-
30
18
  var _uiLayout = _interopRequireDefault(require("./ui-layout"));
31
-
32
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
33
-
34
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
35
-
19
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
20
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
21
+ var StyledUiLayout = (0, _styles.styled)(_uiLayout["default"])({
22
+ display: 'flex',
23
+ flexDirection: 'column',
24
+ position: 'relative'
25
+ });
36
26
  var PreviewLayout = /*#__PURE__*/function (_React$Component) {
37
- (0, _inherits2["default"])(PreviewLayout, _React$Component);
38
-
39
- var _super = _createSuper(PreviewLayout);
40
-
41
27
  function PreviewLayout() {
42
28
  (0, _classCallCheck2["default"])(this, PreviewLayout);
43
- return _super.apply(this, arguments);
29
+ return _callSuper(this, PreviewLayout, arguments);
44
30
  }
45
-
46
- (0, _createClass2["default"])(PreviewLayout, [{
31
+ (0, _inherits2["default"])(PreviewLayout, _React$Component);
32
+ return (0, _createClass2["default"])(PreviewLayout, [{
47
33
  key: "render",
48
34
  value: function render() {
49
35
  var _this$props = this.props,
50
- children = _this$props.children,
51
- classes = _this$props.classes,
52
- ariaLabel = _this$props.ariaLabel,
53
- role = _this$props.role,
54
- extraCSSRules = _this$props.extraCSSRules,
55
- fontSizeFactor = _this$props.fontSizeFactor;
36
+ children = _this$props.children,
37
+ ariaLabel = _this$props.ariaLabel,
38
+ role = _this$props.role,
39
+ extraCSSRules = _this$props.extraCSSRules,
40
+ fontSizeFactor = _this$props.fontSizeFactor,
41
+ classes = _this$props.classes;
56
42
  var accessibility = ariaLabel ? {
57
43
  'aria-label': ariaLabel,
58
44
  role: role
59
45
  } : {};
60
- return /*#__PURE__*/_react["default"].createElement(_uiLayout["default"], (0, _extends2["default"])({
61
- className: classes.container
62
- }, accessibility, {
46
+ return /*#__PURE__*/_react["default"].createElement(StyledUiLayout, (0, _extends2["default"])({}, accessibility, {
63
47
  extraCSSRules: extraCSSRules,
64
- fontSizeFactor: fontSizeFactor
48
+ fontSizeFactor: fontSizeFactor,
49
+ classes: classes
65
50
  }), children);
66
51
  }
67
52
  }]);
68
- return PreviewLayout;
69
53
  }(_react["default"].Component);
70
-
71
54
  (0, _defineProperty2["default"])(PreviewLayout, "propTypes", {
72
55
  ariaLabel: _propTypes["default"].string,
73
56
  children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired,
74
- classes: _propTypes["default"].object,
75
57
  role: _propTypes["default"].string,
76
58
  extraCSSRules: _propTypes["default"].shape({
77
59
  names: _propTypes["default"].arrayOf(_propTypes["default"].string),
@@ -79,23 +61,5 @@ var PreviewLayout = /*#__PURE__*/function (_React$Component) {
79
61
  }),
80
62
  fontSizeFactor: _propTypes["default"].number
81
63
  });
82
-
83
- var styles = function styles() {
84
- return {
85
- container: {
86
- display: 'flex',
87
- flexDirection: 'column',
88
- position: 'relative'
89
- }
90
- };
91
- };
92
-
93
- var Styled = (0, _styles.withStyles)(styles)(PreviewLayout);
94
-
95
- var RootElem = function RootElem(props) {
96
- return /*#__PURE__*/_react["default"].createElement(Styled, props);
97
- };
98
-
99
- var _default = RootElem;
100
- exports["default"] = _default;
64
+ var _default = exports["default"] = PreviewLayout;
101
65
  //# sourceMappingURL=preview-layout.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/preview-layout.jsx"],"names":["PreviewLayout","props","children","classes","ariaLabel","role","extraCSSRules","fontSizeFactor","accessibility","container","React","Component","PropTypes","string","oneOfType","arrayOf","node","isRequired","object","shape","names","rules","number","styles","display","flexDirection","position","Styled","RootElem"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;IAEMA,a;;;;;;;;;;;;WAaJ,kBAAS;AACP,wBAA8E,KAAKC,KAAnF;AAAA,UAAQC,QAAR,eAAQA,QAAR;AAAA,UAAkBC,OAAlB,eAAkBA,OAAlB;AAAA,UAA2BC,SAA3B,eAA2BA,SAA3B;AAAA,UAAsCC,IAAtC,eAAsCA,IAAtC;AAAA,UAA4CC,aAA5C,eAA4CA,aAA5C;AAAA,UAA2DC,cAA3D,eAA2DA,cAA3D;AACA,UAAMC,aAAa,GAAGJ,SAAS,GAAG;AAAE,sBAAcA,SAAhB;AAA2BC,QAAAA,IAAI,EAAJA;AAA3B,OAAH,GAAuC,EAAtE;AAEA,0BACE,gCAAC,oBAAD;AACE,QAAA,SAAS,EAAEF,OAAO,CAACM;AADrB,SAEMD,aAFN;AAGE,QAAA,aAAa,EAAEF,aAHjB;AAIE,QAAA,cAAc,EAAEC;AAJlB,UAMGL,QANH,CADF;AAUD;;;EA3ByBQ,kBAAMC,S;;iCAA5BX,a,eACe;AACjBI,EAAAA,SAAS,EAAEQ,sBAAUC,MADJ;AAEjBX,EAAAA,QAAQ,EAAEU,sBAAUE,SAAV,CAAoB,CAACF,sBAAUG,OAAV,CAAkBH,sBAAUI,IAA5B,CAAD,EAAoCJ,sBAAUI,IAA9C,CAApB,EAAyEC,UAFlE;AAGjBd,EAAAA,OAAO,EAAES,sBAAUM,MAHF;AAIjBb,EAAAA,IAAI,EAAEO,sBAAUC,MAJC;AAKjBP,EAAAA,aAAa,EAAEM,sBAAUO,KAAV,CAAgB;AAC7BC,IAAAA,KAAK,EAAER,sBAAUG,OAAV,CAAkBH,sBAAUC,MAA5B,CADsB;AAE7BQ,IAAAA,KAAK,EAAET,sBAAUC;AAFY,GAAhB,CALE;AASjBN,EAAAA,cAAc,EAAEK,sBAAUU;AATT,C;;AA6BrB,IAAMC,MAAM,GAAG,SAATA,MAAS;AAAA,SAAO;AACpBd,IAAAA,SAAS,EAAE;AACTe,MAAAA,OAAO,EAAE,MADA;AAETC,MAAAA,aAAa,EAAE,QAFN;AAGTC,MAAAA,QAAQ,EAAE;AAHD;AADS,GAAP;AAAA,CAAf;;AAQA,IAAMC,MAAM,GAAG,wBAAWJ,MAAX,EAAmBvB,aAAnB,CAAf;;AAEA,IAAM4B,QAAQ,GAAG,SAAXA,QAAW,CAAC3B,KAAD;AAAA,sBAAW,gCAAC,MAAD,EAAYA,KAAZ,CAAX;AAAA,CAAjB;;eAEe2B,Q","sourcesContent":["import React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\nimport UiLayout from './ui-layout';\n\nclass PreviewLayout extends React.Component {\n static propTypes = {\n ariaLabel: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n classes: PropTypes.object,\n role: PropTypes.string,\n extraCSSRules: PropTypes.shape({\n names: PropTypes.arrayOf(PropTypes.string),\n rules: PropTypes.string,\n }),\n fontSizeFactor: PropTypes.number,\n };\n\n render() {\n const { children, classes, ariaLabel, role, extraCSSRules, fontSizeFactor } = this.props;\n const accessibility = ariaLabel ? { 'aria-label': ariaLabel, role } : {};\n\n return (\n <UiLayout\n className={classes.container}\n {...accessibility}\n extraCSSRules={extraCSSRules}\n fontSizeFactor={fontSizeFactor}\n >\n {children}\n </UiLayout>\n );\n }\n}\n\nconst styles = () => ({\n container: {\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n },\n});\n\nconst Styled = withStyles(styles)(PreviewLayout);\n\nconst RootElem = (props) => <Styled {...props} />;\n\nexport default RootElem;\n"],"file":"preview-layout.js"}
1
+ {"version":3,"file":"preview-layout.js","names":["_react","_interopRequireDefault","require","_styles","_propTypes","_uiLayout","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","StyledUiLayout","styled","UiLayout","display","flexDirection","position","PreviewLayout","_React$Component","_classCallCheck2","arguments","_inherits2","_createClass2","key","value","render","_this$props","props","children","ariaLabel","role","extraCSSRules","fontSizeFactor","classes","accessibility","createElement","_extends2","React","Component","_defineProperty2","PropTypes","string","oneOfType","arrayOf","node","isRequired","shape","names","rules","number","_default","exports"],"sources":["../src/preview-layout.jsx"],"sourcesContent":["import React from 'react';\nimport { styled } from '@mui/material/styles';\nimport PropTypes from 'prop-types';\nimport UiLayout from './ui-layout';\n\nconst StyledUiLayout = styled(UiLayout)({\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n});\n\nclass PreviewLayout extends React.Component {\n static propTypes = {\n ariaLabel: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n role: PropTypes.string,\n extraCSSRules: PropTypes.shape({\n names: PropTypes.arrayOf(PropTypes.string),\n rules: PropTypes.string,\n }),\n fontSizeFactor: PropTypes.number,\n };\n\n render() {\n const { children, ariaLabel, role, extraCSSRules, fontSizeFactor, classes } = this.props;\n const accessibility = ariaLabel ? { 'aria-label': ariaLabel, role } : {};\n\n return (\n <StyledUiLayout {...accessibility} extraCSSRules={extraCSSRules} fontSizeFactor={fontSizeFactor} classes={classes}>\n {children}\n </StyledUiLayout>\n );\n }\n}\n\nexport default PreviewLayout;\n"],"mappings":";;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,SAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAAmC,SAAAI,WAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,OAAAE,gBAAA,aAAAF,CAAA,OAAAG,2BAAA,aAAAJ,CAAA,EAAAK,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAN,CAAA,EAAAC,CAAA,YAAAC,gBAAA,aAAAH,CAAA,EAAAQ,WAAA,IAAAP,CAAA,CAAAQ,KAAA,CAAAT,CAAA,EAAAE,CAAA;AAAA,SAAAG,0BAAA,cAAAL,CAAA,IAAAU,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAP,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAAV,CAAA,aAAAK,yBAAA,YAAAA,0BAAA,aAAAL,CAAA;AAEnC,IAAMc,cAAc,GAAG,IAAAC,cAAM,EAACC,oBAAQ,CAAC,CAAC;EACtCC,OAAO,EAAE,MAAM;EACfC,aAAa,EAAE,QAAQ;EACvBC,QAAQ,EAAE;AACZ,CAAC,CAAC;AAAC,IAEGC,aAAa,0BAAAC,gBAAA;EAAA,SAAAD,cAAA;IAAA,IAAAE,gBAAA,mBAAAF,aAAA;IAAA,OAAArB,UAAA,OAAAqB,aAAA,EAAAG,SAAA;EAAA;EAAA,IAAAC,UAAA,aAAAJ,aAAA,EAAAC,gBAAA;EAAA,WAAAI,aAAA,aAAAL,aAAA;IAAAM,GAAA;IAAAC,KAAA,EAYjB,SAAAC,MAAMA,CAAA,EAAG;MACP,IAAAC,WAAA,GAA8E,IAAI,CAACC,KAAK;QAAhFC,QAAQ,GAAAF,WAAA,CAARE,QAAQ;QAAEC,SAAS,GAAAH,WAAA,CAATG,SAAS;QAAEC,IAAI,GAAAJ,WAAA,CAAJI,IAAI;QAAEC,aAAa,GAAAL,WAAA,CAAbK,aAAa;QAAEC,cAAc,GAAAN,WAAA,CAAdM,cAAc;QAAEC,OAAO,GAAAP,WAAA,CAAPO,OAAO;MACzE,IAAMC,aAAa,GAAGL,SAAS,GAAG;QAAE,YAAY,EAAEA,SAAS;QAAEC,IAAI,EAAJA;MAAK,CAAC,GAAG,CAAC,CAAC;MAExE,oBACExC,MAAA,YAAA6C,aAAA,CAACxB,cAAc,MAAAyB,SAAA,iBAAKF,aAAa;QAAEH,aAAa,EAAEA,aAAc;QAACC,cAAc,EAAEA,cAAe;QAACC,OAAO,EAAEA;MAAQ,IAC/GL,QACa,CAAC;IAErB;EAAC;AAAA,EArByBS,iBAAK,CAACC,SAAS;AAAA,IAAAC,gBAAA,aAArCtB,aAAa,eACE;EACjBY,SAAS,EAAEW,qBAAS,CAACC,MAAM;EAC3Bb,QAAQ,EAAEY,qBAAS,CAACE,SAAS,CAAC,CAACF,qBAAS,CAACG,OAAO,CAACH,qBAAS,CAACI,IAAI,CAAC,EAAEJ,qBAAS,CAACI,IAAI,CAAC,CAAC,CAACC,UAAU;EAC7Ff,IAAI,EAAEU,qBAAS,CAACC,MAAM;EACtBV,aAAa,EAAES,qBAAS,CAACM,KAAK,CAAC;IAC7BC,KAAK,EAAEP,qBAAS,CAACG,OAAO,CAACH,qBAAS,CAACC,MAAM,CAAC;IAC1CO,KAAK,EAAER,qBAAS,CAACC;EACnB,CAAC,CAAC;EACFT,cAAc,EAAEQ,qBAAS,CAACS;AAC5B,CAAC;AAAA,IAAAC,QAAA,GAAAC,OAAA,cAcYlC,aAAa","ignoreList":[]}
@@ -1,75 +1,97 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = exports.PreviewPrompt = void 0;
11
-
12
9
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
10
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
11
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
12
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
13
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
24
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
-
26
15
  var _react = _interopRequireWildcard(require("react"));
27
-
28
- var _styles = require("@material-ui/core/styles");
29
-
16
+ var _styles = require("@mui/material/styles");
30
17
  var _propTypes = _interopRequireDefault(require("prop-types"));
31
-
32
18
  var color = _interopRequireWildcard(require("./color"));
33
-
34
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
-
36
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
37
-
38
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
39
-
40
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
41
-
42
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
43
-
44
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
45
-
46
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
19
+ var _mathRendering = require("@pie-lib/math-rendering");
20
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
21
+ function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
22
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
23
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
24
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
25
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
26
+ var StyledPromptContainer = (0, _styles.styled)('div')(function (_ref) {
27
+ var theme = _ref.theme,
28
+ tagName = _ref.tagName;
29
+ return {
30
+ // Base promptTable styles
31
+ '&:not(.MathJax) > table': {
32
+ borderCollapse: 'collapse'
33
+ },
34
+ // Apply vertical striping when first column is a header (th) and NOT mixed with td
35
+ '&:not(.MathJax) > table:has(tbody tr > th:first-child):not(:has(tbody tr > td:first-child)) tbody td:nth-child(even)': {
36
+ backgroundColor: '#f6f8fa',
37
+ color: theme.palette.common.black
38
+ },
39
+ // Apply horizontal striping for tables where first element is a data cell (td)
40
+ '&:not(.MathJax) > table:has(tbody tr > td:first-child) tbody tr:nth-child(even) td': {
41
+ backgroundColor: '#f6f8fa',
42
+ color: theme.palette.common.black
43
+ },
44
+ // align table content to left as per STAR requirement PD-3687
45
+ '&:not(.MathJax) table td, &:not(.MathJax) table th': {
46
+ padding: '.6em 1em',
47
+ textAlign: 'left'
48
+ },
49
+ // added this to fix alignment of text in prompt imported from studio (PD-3423)
50
+ '&:not(.MathJax) > table td > p.kds-indent': {
51
+ textAlign: 'initial'
52
+ },
53
+ // Conditional styles based on class names
54
+ '&.prompt': {
55
+ verticalAlign: 'middle',
56
+ color: color.text()
57
+ },
58
+ '&.legend': {
59
+ width: '100%',
60
+ fontSize: 'inherit !important'
61
+ },
62
+ '&.rationale': {
63
+ paddingLeft: theme.spacing(4),
64
+ paddingBottom: theme.spacing(1)
65
+ },
66
+ '&.label': {
67
+ color: "".concat(color.text(), " !important"),
68
+ display: 'flex',
69
+ flexDirection: 'column',
70
+ verticalAlign: 'middle',
71
+ cursor: 'pointer',
72
+ '& > p': {
73
+ margin: '0 0 0 0 !important'
74
+ }
75
+ }
76
+ };
77
+ });
47
78
 
48
79
  //Used these below to replace \\embed{newLine} with \\newline from prompt which will get parsed in MathJax
49
80
  var NEWLINE_BLOCK_REGEX = /\\embed\{newLine\}\[\]/g;
50
81
  var NEWLINE_LATEX = '\\newline ';
51
-
52
- var PreviewPrompt = /*#__PURE__*/function (_Component) {
53
- (0, _inherits2["default"])(PreviewPrompt, _Component);
54
-
55
- var _super = _createSuper(PreviewPrompt);
56
-
82
+ var PreviewPrompt = exports.PreviewPrompt = /*#__PURE__*/function (_Component) {
57
83
  function PreviewPrompt() {
58
84
  var _this;
59
-
60
85
  (0, _classCallCheck2["default"])(this, PreviewPrompt);
61
-
62
86
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
63
87
  args[_key] = arguments[_key];
64
88
  }
65
-
66
- _this = _super.call.apply(_super, [this].concat(args));
67
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "parsedText", function (text) {
89
+ _this = _callSuper(this, PreviewPrompt, [].concat(args));
90
+ (0, _defineProperty2["default"])(_this, "parsedText", function (text) {
68
91
  var customAudioButton = _this.props.customAudioButton;
69
92
  var div = document.createElement('div');
70
93
  div.innerHTML = text;
71
94
  var audio = div.querySelector('audio');
72
-
73
95
  if (audio) {
74
96
  var source = document.createElement('source');
75
97
  source.setAttribute('type', 'audio/mp3');
@@ -77,7 +99,6 @@ var PreviewPrompt = /*#__PURE__*/function (_Component) {
77
99
  audio.removeAttribute('src');
78
100
  audio.setAttribute('id', 'pie-prompt-audio-player');
79
101
  audio.appendChild(source);
80
-
81
102
  if (customAudioButton) {
82
103
  audio.style.display = 'none';
83
104
  var playButton = document.createElement('div');
@@ -95,21 +116,19 @@ var PreviewPrompt = /*#__PURE__*/function (_Component) {
95
116
  audio.parentNode.insertBefore(playButton, audio);
96
117
  }
97
118
  }
98
-
99
119
  return div.innerHTML;
100
120
  });
101
121
  return _this;
102
122
  }
103
-
104
- (0, _createClass2["default"])(PreviewPrompt, [{
123
+ (0, _inherits2["default"])(PreviewPrompt, _Component);
124
+ return (0, _createClass2["default"])(PreviewPrompt, [{
105
125
  key: "addCustomAudioButtonControls",
106
126
  value: function addCustomAudioButtonControls() {
107
127
  var _this$props = this.props,
108
- autoplayAudioEnabled = _this$props.autoplayAudioEnabled,
109
- customAudioButton = _this$props.customAudioButton;
128
+ autoplayAudioEnabled = _this$props.autoplayAudioEnabled,
129
+ customAudioButton = _this$props.customAudioButton;
110
130
  var playButton = document.getElementById('play-audio-button');
111
131
  var audio = document.getElementById('pie-prompt-audio-player');
112
-
113
132
  if (autoplayAudioEnabled && audio) {
114
133
  audio.play().then(function () {
115
134
  if (playButton && customAudioButton) {
@@ -119,39 +138,34 @@ var PreviewPrompt = /*#__PURE__*/function (_Component) {
119
138
  console.error('Error playing audio', error);
120
139
  });
121
140
  }
122
-
123
141
  if (!playButton || !audio || !customAudioButton) return;
124
-
125
142
  var handlePlayClick = function handlePlayClick() {
126
143
  // if already playing, don't play again
127
144
  if (!audio.paused) return;
128
145
  if (playButton.style.backgroundImage.includes(customAudioButton.pauseImage)) return;
129
146
  audio.play();
130
147
  };
131
-
132
148
  var handleAudioEnded = function handleAudioEnded() {
133
149
  playButton.style.backgroundImage = "url(".concat(customAudioButton.playImage, ")");
134
150
  };
135
-
136
151
  var handleAudioPlay = function handleAudioPlay() {
137
152
  Object.assign(playButton.style, {
138
153
  backgroundImage: "url(".concat(customAudioButton.pauseImage, ")"),
139
154
  border: '1px solid #ccc'
140
155
  });
141
156
  };
142
-
143
157
  var handleAudioPause = function handleAudioPause() {
144
158
  Object.assign(playButton.style, {
145
159
  backgroundImage: "url(".concat(customAudioButton.playImage, ")"),
146
160
  border: '1px solid #326295'
147
161
  });
148
162
  };
149
-
150
163
  playButton.addEventListener('click', handlePlayClick);
151
164
  audio.addEventListener('play', handleAudioPlay);
152
165
  audio.addEventListener('pause', handleAudioPause);
153
- audio.addEventListener('ended', handleAudioEnded); // store event handler references so they can be removed later
166
+ audio.addEventListener('ended', handleAudioEnded);
154
167
 
168
+ // store event handler references so they can be removed later
155
169
  this._handlePlayClick = handlePlayClick;
156
170
  this._handleAudioPlay = handleAudioPlay;
157
171
  this._handleAudioPause = handleAudioPause;
@@ -162,8 +176,9 @@ var PreviewPrompt = /*#__PURE__*/function (_Component) {
162
176
  value: function removeCustomAudioButtonListeners() {
163
177
  var playButton = document.getElementById('play-audio-button');
164
178
  var audio = document.querySelector('audio');
165
- if (!playButton || !audio) return; // remove event listeners using stored references
179
+ if (!playButton || !audio) return;
166
180
 
181
+ // remove event listeners using stored references
167
182
  playButton.removeEventListener('click', this._handlePlayClick);
168
183
  audio.removeEventListener('play', this._handleAudioPlay);
169
184
  audio.removeEventListener('pause', this._handleAudioPause);
@@ -174,36 +189,51 @@ var PreviewPrompt = /*#__PURE__*/function (_Component) {
174
189
  value: function componentDidMount() {
175
190
  this.alignImages();
176
191
  this.addCustomAudioButtonControls();
192
+ this.setupMathRendering();
177
193
  }
178
194
  }, {
179
195
  key: "componentDidUpdate",
180
- value: function componentDidUpdate() {
196
+ value: function componentDidUpdate(prevProps) {
181
197
  this.alignImages();
198
+ if (prevProps.prompt !== this.props.prompt) {
199
+ this.renderMathContent();
200
+ }
182
201
  }
183
202
  }, {
184
203
  key: "componentWillUnmount",
185
204
  value: function componentWillUnmount() {
186
205
  this.removeCustomAudioButtonListeners();
187
206
  }
207
+ }, {
208
+ key: "setupMathRendering",
209
+ value: function setupMathRendering() {
210
+ this.renderMathContent();
211
+ }
212
+ }, {
213
+ key: "renderMathContent",
214
+ value: function renderMathContent() {
215
+ var container = document.getElementById('preview-prompt');
216
+ if (container && typeof _mathRendering.renderMath === 'function') {
217
+ (0, _mathRendering.renderMath)(container);
218
+ }
219
+ }
188
220
  }, {
189
221
  key: "alignImages",
190
222
  value: function alignImages() {
191
223
  var previewPrompts = document.querySelectorAll('#preview-prompt');
192
224
  previewPrompts.forEach(function (previewPrompt) {
193
225
  var images = previewPrompt.getElementsByTagName('img');
194
-
195
226
  if (images && images.length) {
196
227
  var _iterator = _createForOfIteratorHelper(images),
197
- _step;
198
-
228
+ _step;
199
229
  try {
200
230
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
201
231
  var image = _step.value;
202
-
203
232
  // check if alignment property was set
204
233
  if (image.attributes && image.attributes.alignment && image.attributes.alignment.value) {
205
- var parentNode = image.parentElement; // check if div is not already added to dom and replace current image with wrapped image
234
+ var parentNode = image.parentElement;
206
235
 
236
+ // check if div is not already added to dom and replace current image with wrapped image
207
237
  if (!(parentNode.tagName === 'DIV' && parentNode.style.display === 'flex' && parentNode.style.width === '100%')) {
208
238
  var div = document.createElement('div');
209
239
  div.style.display = 'flex';
@@ -226,32 +256,28 @@ var PreviewPrompt = /*#__PURE__*/function (_Component) {
226
256
  key: "render",
227
257
  value: function render() {
228
258
  var _this$props2 = this.props,
229
- prompt = _this$props2.prompt,
230
- classes = _this$props2.classes,
231
- tagName = _this$props2.tagName,
232
- className = _this$props2.className,
233
- onClick = _this$props2.onClick,
234
- defaultClassName = _this$props2.defaultClassName;
235
- var CustomTag = tagName || 'div'; // legend tag was added once with accessibility tasks, wee need extra style to make it work with images alignment
236
-
259
+ prompt = _this$props2.prompt,
260
+ tagName = _this$props2.tagName,
261
+ className = _this$props2.className,
262
+ onClick = _this$props2.onClick,
263
+ defaultClassName = _this$props2.defaultClassName;
264
+ // legend tag was added once with accessibility tasks, we need extra style to make it work with images alignment
237
265
  var legendClass = tagName === 'legend' ? 'legend' : '';
238
- var customClasses = "".concat(classes.promptTable, " ").concat(classes[className] || '', " ").concat(defaultClassName || '', " ").concat(classes[legendClass] || '');
239
- return /*#__PURE__*/_react["default"].createElement(CustomTag, {
266
+ var customClasses = "".concat(className || '', " ").concat(defaultClassName || '', " ").concat(legendClass).trim();
267
+ return /*#__PURE__*/_react["default"].createElement(StyledPromptContainer, {
268
+ as: tagName || 'div',
240
269
  id: 'preview-prompt',
241
270
  onClick: onClick,
242
271
  className: customClasses,
272
+ tagName: tagName,
243
273
  dangerouslySetInnerHTML: {
244
274
  __html: this.parsedText(prompt || '').replace(NEWLINE_BLOCK_REGEX, NEWLINE_LATEX)
245
275
  }
246
276
  });
247
277
  }
248
278
  }]);
249
- return PreviewPrompt;
250
279
  }(_react.Component);
251
-
252
- exports.PreviewPrompt = PreviewPrompt;
253
280
  (0, _defineProperty2["default"])(PreviewPrompt, "propTypes", {
254
- classes: _propTypes["default"].object,
255
281
  prompt: _propTypes["default"].string,
256
282
  tagName: _propTypes["default"].string,
257
283
  className: _propTypes["default"].string,
@@ -266,58 +292,5 @@ exports.PreviewPrompt = PreviewPrompt;
266
292
  (0, _defineProperty2["default"])(PreviewPrompt, "defaultProps", {
267
293
  onClick: function onClick() {}
268
294
  });
269
-
270
- var styles = function styles(theme) {
271
- return {
272
- prompt: {
273
- verticalAlign: 'middle',
274
- color: color.text()
275
- },
276
- legend: {
277
- width: '100%',
278
- fontSize: 'inherit !important'
279
- },
280
- rationale: {
281
- paddingLeft: theme.spacing.unit * 4,
282
- paddingBottom: theme.spacing.unit
283
- },
284
- label: {
285
- color: "".concat(color.text(), " !important"),
286
- //'var(--choice-input-color, black)',
287
- display: 'flex',
288
- flexDirection: 'column',
289
- verticalAlign: 'middle',
290
- cursor: 'pointer',
291
- '& > p': {
292
- margin: '0 0 0 0 !important'
293
- }
294
- },
295
- promptTable: {
296
- '&:not(.MathJax) > table': {
297
- borderCollapse: 'collapse'
298
- },
299
- '&:not(.MathJax) > table:has(tbody tr > th:first-child):not(:has(tbody tr > td:first-child)) tbody td:nth-child(even)': {
300
- backgroundColor: '#f6f8fa',
301
- color: theme.palette.common.black
302
- },
303
- '&:not(.MathJax) > table:has(tbody tr > td:first-child) tbody tr:nth-child(even) td': {
304
- backgroundColor: '#f6f8fa',
305
- color: theme.palette.common.black
306
- },
307
- // align table content to left as per STAR requirement PD-3687
308
- '&:not(.MathJax) table td, &:not(.MathJax) table th': {
309
- padding: '.6em 1em',
310
- textAlign: 'left'
311
- },
312
- // added this to fix alignment of text in prompt imported from studio (PD-3423)
313
- '&:not(.MathJax) > table td > p.kds-indent': {
314
- textAlign: 'initial'
315
- }
316
- }
317
- };
318
- };
319
-
320
- var _default = (0, _styles.withStyles)(styles)(PreviewPrompt);
321
-
322
- exports["default"] = _default;
295
+ var _default = exports["default"] = PreviewPrompt;
323
296
  //# sourceMappingURL=preview-prompt.js.map