@instructure/quiz-core 20.4.0 → 20.4.1-rc.1

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 (25) hide show
  1. package/es/common/components/resources/positionBox/PositionBox.js +16 -20
  2. package/es/common/components/resources/positionBox/styles.js +27 -0
  3. package/es/common/components/resources/positionBox/theme.js +4 -2
  4. package/es/common/components/resources/quiz/AddContent/Body/presenter.js +24 -29
  5. package/es/common/components/resources/quiz/AddContent/Body/styles.js +28 -0
  6. package/es/common/components/resources/quiz/AddContent/Body/theme.js +4 -2
  7. package/es/common/components/resources/quiz/AddContent/Button/index.js +29 -28
  8. package/es/common/components/resources/quiz/AddContent/Button/styles.js +51 -0
  9. package/es/common/components/resources/quiz/AddContent/Button/theme.js +4 -2
  10. package/es/common/components/resources/quiz/AddContent/Popover/presenter.js +16 -22
  11. package/es/common/components/resources/quiz/AddContent/Popover/styles.js +28 -0
  12. package/es/common/components/resources/quiz/AddContent/Popover/theme.js +4 -2
  13. package/lib/common/components/resources/positionBox/PositionBox.js +15 -21
  14. package/lib/common/components/resources/positionBox/styles.js +37 -0
  15. package/lib/common/components/resources/positionBox/theme.js +6 -3
  16. package/lib/common/components/resources/quiz/AddContent/Body/presenter.js +21 -29
  17. package/lib/common/components/resources/quiz/AddContent/Body/styles.js +38 -0
  18. package/lib/common/components/resources/quiz/AddContent/Body/theme.js +6 -3
  19. package/lib/common/components/resources/quiz/AddContent/Button/index.js +28 -31
  20. package/lib/common/components/resources/quiz/AddContent/Button/styles.js +62 -0
  21. package/lib/common/components/resources/quiz/AddContent/Button/theme.js +6 -3
  22. package/lib/common/components/resources/quiz/AddContent/Popover/presenter.js +15 -23
  23. package/lib/common/components/resources/quiz/AddContent/Popover/styles.js +36 -0
  24. package/lib/common/components/resources/quiz/AddContent/Popover/theme.js +6 -3
  25. package/package.json +10 -10
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var generateStyle = function generateStyle(componentTheme) {
13
+ var printMq = '@media print';
14
+ return {
15
+ position: (0, _defineProperty2.default)({
16
+ height: componentTheme.positionDimension,
17
+ minWidth: componentTheme.positionDimension,
18
+ marginLeft: '-1.2rem',
19
+ marginRight: componentTheme.positionMargin,
20
+ display: 'flex',
21
+ justifyContent: 'center',
22
+ alignItems: 'center',
23
+ backgroundColor: componentTheme.positionBackgroundColor,
24
+ padding: "0 ".concat(componentTheme.positionPadding),
25
+ zIndex: componentTheme.positionZIndex
26
+ }, printMq, {
27
+ colorAdjust: 'exact'
28
+ }),
29
+ positionText: {
30
+ fontSize: componentTheme.positionTextFontSize,
31
+ color: componentTheme.positionTextColor
32
+ }
33
+ };
34
+ };
35
+
36
+ var _default = generateStyle;
37
+ exports.default = _default;
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = generator;
6
+ exports.default = void 0;
7
7
 
8
- function generator(_ref) {
8
+ var generateComponentTheme = function generateComponentTheme(_ref) {
9
9
  var spacing = _ref.spacing,
10
10
  colors = _ref.colors,
11
11
  typography = _ref.typography;
@@ -18,4 +18,7 @@ function generator(_ref) {
18
18
  positionTextColor: colors.porcelain,
19
19
  positionTextFontSize: typography.fontSizeMedium
20
20
  };
21
- }
21
+ };
22
+
23
+ var _default = generateComponentTheme;
24
+ exports.default = _default;
@@ -2,8 +2,6 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
@@ -17,7 +15,7 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
17
15
 
18
16
  var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
19
17
 
20
- var _react = _interopRequireWildcard(require("react"));
18
+ var _react = require("react");
21
19
 
22
20
  var _propTypes = _interopRequireDefault(require("prop-types"));
23
21
 
@@ -35,7 +33,7 @@ var _uiView = require("@instructure/ui-view");
35
33
 
36
34
  var _uiText = require("@instructure/ui-text");
37
35
 
38
- var _uiThemeable = require("@instructure/ui-themeable");
36
+ var _emotion = require("@instructure/emotion");
39
37
 
40
38
  var _index = _interopRequireDefault(require("../../../../shared/InteractionTypes/index.js"));
41
39
 
@@ -43,23 +41,15 @@ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/f
43
41
 
44
42
  var _quizCommon = require("@instructure/quiz-common");
45
43
 
44
+ var _styles = _interopRequireDefault(require("./styles.js"));
45
+
46
46
  var _theme = _interopRequireDefault(require("./theme.js"));
47
47
 
48
48
  var _dec, _class, _class2, _temp;
49
49
 
50
- var styles = {
51
- componentId: 'GmYGC',
52
- template: function template(theme) {
53
- return "\n\n.GmYGC_bHWS{border-bottom:solid ".concat(theme.popoverHeaderBoxBorderWidth || 'inherit', " ").concat(theme.popoverHeaderBoxBorderColor || 'inherit', "}\n\n.GmYGC_cqxf{margin:1rem;margin-bottom:0.25rem}\n\n.GmYGC_cdWv{margin-left:").concat(theme.popoverContentMargin || 'inherit', ";margin-right:").concat(theme.popoverContentMargin || 'inherit', "}\n\n@media (-ms-high-contrast:none),screen and (-ms-high-contrast:active){.GmYGC_cdWv{width:22rem}}\n\n@media screen and (--phoneBreakPoint) and (-ms-high-contrast:active),screen and (--phoneBreakPoint) and (-ms-high-contrast:none){.GmYGC_cdWv{width:11rem}}");
54
- },
55
- 'popoverHeaderBox': 'GmYGC_bHWS',
56
- 'popoverHeader': 'GmYGC_cqxf',
57
- 'popoverContent': 'GmYGC_cdWv'
58
- };
59
-
60
- var _ref = /*#__PURE__*/_react.default.createElement(_uiIcons.IconBankLine, null);
50
+ var _ref = (0, _emotion.jsx)(_uiIcons.IconBankLine, null);
61
51
 
62
- var AddContentBody = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
52
+ var AddContentBody = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
63
53
  (0, _inherits2.default)(AddContentBody, _Component);
64
54
 
65
55
  var _super = (0, _createSuper2.default)(AddContentBody);
@@ -129,7 +119,7 @@ var AddContentBody = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles)
129
119
  };
130
120
 
131
121
  _this.renderBankButton = function () {
132
- return /*#__PURE__*/_react.default.createElement(_uiButtons.IconButton, {
122
+ return (0, _emotion.jsx)(_uiButtons.IconButton, {
133
123
  size: "large",
134
124
  onClick: _this.openBankTray,
135
125
  "data-automation": "sdk-add-banked-content-button",
@@ -139,17 +129,17 @@ var AddContentBody = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles)
139
129
 
140
130
  _this.renderPopoverHeader = function () {
141
131
  var text = _this.props.showHeaderText ? (0, _formatMessage.default)('Insert Content') : '';
142
- return /*#__PURE__*/_react.default.createElement("div", {
143
- className: styles.popoverHeaderBox
144
- }, /*#__PURE__*/_react.default.createElement("div", {
145
- className: styles.popoverHeader
146
- }, /*#__PURE__*/_react.default.createElement(_uiGrid.Grid, {
132
+ return (0, _emotion.jsx)("div", {
133
+ css: _this.props.styles.popoverHeaderBox
134
+ }, (0, _emotion.jsx)("div", {
135
+ css: _this.props.styles.popoverHeader
136
+ }, (0, _emotion.jsx)(_uiGrid.Grid, {
147
137
  vAlign: "middle",
148
138
  colSpacing: "none",
149
139
  rowSpacing: "none"
150
- }, /*#__PURE__*/_react.default.createElement(_uiGrid.Grid.Row, null, /*#__PURE__*/_react.default.createElement(_uiGrid.Grid.Col, null, /*#__PURE__*/_react.default.createElement(_uiText.Text, {
140
+ }, (0, _emotion.jsx)(_uiGrid.Grid.Row, null, (0, _emotion.jsx)(_uiGrid.Grid.Col, null, (0, _emotion.jsx)(_uiText.Text, {
151
141
  color: "primary"
152
- }, text)), /*#__PURE__*/_react.default.createElement(_uiGrid.Grid.Col, {
142
+ }, text)), (0, _emotion.jsx)(_uiGrid.Grid.Col, {
153
143
  width: "auto"
154
144
  }, _this.renderBankButton())))));
155
145
  };
@@ -160,13 +150,13 @@ var AddContentBody = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles)
160
150
  (0, _createClass2.default)(AddContentBody, [{
161
151
  key: "render",
162
152
  value: function render() {
163
- return /*#__PURE__*/_react.default.createElement("div", {
164
- className: styles.popoverContent,
153
+ return (0, _emotion.jsx)("div", {
154
+ css: this.props.styles.popoverContent,
165
155
  role: "dialog",
166
156
  "aria-label": (0, _formatMessage.default)('Insert Content')
167
- }, this.renderPopoverHeader(), /*#__PURE__*/_react.default.createElement(_uiView.View, {
157
+ }, this.renderPopoverHeader(), (0, _emotion.jsx)(_uiView.View, {
168
158
  padding: "small"
169
- }, /*#__PURE__*/_react.default.createElement(_index.default, {
159
+ }, (0, _emotion.jsx)(_index.default, {
170
160
  columns: 2,
171
161
  addItem: this.addItem,
172
162
  addStimulus: this.addStimulus,
@@ -193,7 +183,9 @@ var AddContentBody = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles)
193
183
  setNextQuizEntry: _propTypes.default.func.isRequired,
194
184
  setUi: _propTypes.default.func.isRequired,
195
185
  showHeaderText: _propTypes.default.bool,
196
- stimulusId: _propTypes.default.string
186
+ stimulusId: _propTypes.default.string,
187
+ // eslint-disable-next-line react/require-default-props,react/forbid-prop-types
188
+ styles: _propTypes.default.object
197
189
  }, _class2.defaultProps = {
198
190
  editingQuizEntry: void 0,
199
191
  interactionTypes: void 0,
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var generateStyle = function generateStyle(componentTheme) {
13
+ var _popoverContent;
14
+
15
+ var ieMq = '@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)'; // IE11 only
16
+
17
+ var mobileMq = "@media screen and (".concat(componentTheme.phoneBreakPoint, ") and (-ms-high-contrast: active), screen and (").concat(componentTheme.phoneBreakPoint, ") and (-ms-high-contrast: none)");
18
+ return {
19
+ popoverHeaderBox: {
20
+ borderBottom: "solid ".concat(componentTheme.popoverHeaderBoxBorderWidth, " ").concat(componentTheme.popoverHeaderBoxBorderColor)
21
+ },
22
+ popoverHeader: {
23
+ margin: '1rem',
24
+ marginBottom: '0.25rem'
25
+ },
26
+ popoverContent: (_popoverContent = {
27
+ marginLeft: componentTheme.popoverContentMargin,
28
+ marginRight: componentTheme.popoverContentMargin
29
+ }, (0, _defineProperty2.default)(_popoverContent, ieMq, {
30
+ width: '22rem'
31
+ }), (0, _defineProperty2.default)(_popoverContent, mobileMq, {
32
+ width: '11rem'
33
+ }), _popoverContent)
34
+ };
35
+ };
36
+
37
+ var _default = generateStyle;
38
+ exports.default = _default;
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = generator;
6
+ exports.default = void 0;
7
7
 
8
- function generator(_ref) {
8
+ var generateComponentTheme = function generateComponentTheme(_ref) {
9
9
  var spacing = _ref.spacing,
10
10
  colors = _ref.colors,
11
11
  borders = _ref.borders,
@@ -17,4 +17,7 @@ function generator(_ref) {
17
17
  popoverHeaderBoxBorderWidth: borders.widthSmall,
18
18
  popoverHeaderBoxBorderColor: colors.tiara
19
19
  };
20
- }
20
+ };
21
+
22
+ var _default = generateComponentTheme;
23
+ exports.default = _default;
@@ -2,15 +2,11 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.default = exports.AddContentButton = void 0;
11
9
 
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
11
 
16
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
@@ -19,37 +15,27 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
19
15
 
20
16
  var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
21
17
 
22
- var _react = _interopRequireWildcard(require("react"));
18
+ var _react = require("react");
23
19
 
24
20
  var _propTypes = _interopRequireDefault(require("prop-types"));
25
21
 
26
- var _classnames = _interopRequireDefault(require("classnames"));
27
-
28
22
  var _uiIcons = require("@instructure/ui-icons");
29
23
 
30
24
  var _uiA11yContent = require("@instructure/ui-a11y-content");
31
25
 
32
26
  var _uiButtons = require("@instructure/ui-buttons");
33
27
 
34
- var _uiThemeable = require("@instructure/ui-themeable");
28
+ var _emotion = require("@instructure/emotion");
35
29
 
36
30
  var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
37
31
 
32
+ var _styles = _interopRequireDefault(require("./styles.js"));
33
+
38
34
  var _theme = _interopRequireDefault(require("./theme.js"));
39
35
 
40
36
  var _dec, _class, _class2, _temp;
41
37
 
42
- var styles = {
43
- componentId: 'cIWJr',
44
- template: function template(theme) {
45
- return "\n\n.cIWJr_ePYF{background-color:".concat(theme.newItemButtonBackgroundColor || 'inherit', ";border:none;border-radius:").concat(theme.newItemButtonBorderRadius || 'inherit', ";box-shadow:").concat(theme.newItemButtonBoxShadow || 'inherit', ";color:").concat(theme.newItemButtonColor || 'inherit', ";font-size:").concat(theme.newItemButtonFontSize || 'inherit', ";font-weight:").concat(theme.newItemButtonFontWeight || 'inherit', ";line-height:0;margin:").concat(theme.newItemButtonMargin || 'inherit', ";padding:").concat(theme.newItemButtonPadding || 'inherit', ";text-align:center;transform:rotate(0deg);transition:").concat(theme.newItemButtonTransition || 'inherit', ";z-index:").concat(theme.newItemButtonZIndex || 'inherit', "}\n\n[dir=ltr] .cIWJr_ePYF,[dir=rtl] .cIWJr_ePYF{text-align:center}\n\n.cIWJr_ePYF:focus{outline:").concat(theme.newItemButtonFocusOutline || 'inherit', ";outline-offset:").concat(theme.newItemButtonFocusOutlineOffset || 'inherit', "}\n\n.cIWJr_ePYF.cIWJr_cwUE{background-color:").concat(theme.newItemButtonEditingBackgroundColor || 'inherit', ";transform:rotate(45deg);transition:").concat(theme.newItemButtonTransition || 'inherit', "}\n\n.cIWJr_ekys{display:flex;justify-content:center;margin-top:-1.5rem;width:100%;z-index:").concat(theme.newItemButtonHolderZIndex || 'inherit', "}\n\n.cIWJr_egTu{display:flex;justify-content:center;width:100%;z-index:").concat(theme.attachQuestionButtonHolderZIndex || 'inherit', "}\n\n@media print{.cIWJr_egTu,.cIWJr_ekys{display:none}}");
46
- },
47
- 'newItemButton': 'cIWJr_ePYF',
48
- 'newItemButtonEditing': 'cIWJr_cwUE',
49
- 'newItemButtonHolder': 'cIWJr_ekys',
50
- 'attachQuestionButtonHolder': 'cIWJr_egTu'
51
- };
52
- var AddContentButton = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
38
+ var AddContentButton = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
53
39
  (0, _inherits2.default)(AddContentButton, _Component);
54
40
 
55
41
  var _super = (0, _createSuper2.default)(AddContentButton);
@@ -73,6 +59,16 @@ var AddContentButton = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
73
59
  }
74
60
 
75
61
  (0, _createClass2.default)(AddContentButton, [{
62
+ key: "componentDidMount",
63
+ value: function componentDidMount() {
64
+ this.props.makeStyles();
65
+ }
66
+ }, {
67
+ key: "componentDidUpdate",
68
+ value: function componentDidUpdate() {
69
+ this.props.makeStyles();
70
+ }
71
+ }, {
76
72
  key: "focus",
77
73
  value: function focus() {
78
74
  this.buttonElem.focus();
@@ -80,9 +76,9 @@ var AddContentButton = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
80
76
  }, {
81
77
  key: "renderStimulus",
82
78
  value: function renderStimulus() {
83
- return /*#__PURE__*/_react.default.createElement("div", {
84
- className: styles.attachQuestionButtonHolder
85
- }, /*#__PURE__*/_react.default.createElement(_uiButtons.Button, {
79
+ return (0, _emotion.jsx)("div", {
80
+ css: this.props.styles.attachQuestionButtonHolder
81
+ }, (0, _emotion.jsx)(_uiButtons.Button, {
86
82
  ref: this.storeButtonElemRef,
87
83
  color: "primary",
88
84
  margin: "medium",
@@ -93,18 +89,16 @@ var AddContentButton = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
93
89
  }, {
94
90
  key: "renderNonStimulus",
95
91
  value: function renderNonStimulus() {
96
- var _classNames;
97
-
98
- var buttonClasses = (0, _classnames.default)((_classNames = {}, (0, _defineProperty2.default)(_classNames, styles.newItemButton, true), (0, _defineProperty2.default)(_classNames, "newItemButton_".concat(this.props.position), this.props.position !== null), (0, _defineProperty2.default)(_classNames, styles.newItemButtonEditing, this.props.isEditing), _classNames));
99
- return /*#__PURE__*/_react.default.createElement("div", {
100
- className: styles.newItemButtonHolder
101
- }, /*#__PURE__*/_react.default.createElement("button", {
92
+ return (0, _emotion.jsx)("div", {
93
+ css: this.props.styles.newItemButtonHolder
94
+ }, (0, _emotion.jsx)("button", {
102
95
  ref: this.storeButtonElemRef,
103
96
  onClick: this.props.onClick,
104
- className: buttonClasses,
97
+ css: this.props.styles.newItemButton,
98
+ className: this.props.position !== null ? "newItemButton_".concat(this.props.position) : null,
105
99
  "data-automation": "sdk-add-content-button",
106
100
  "aria-expanded": this.props.isEditing
107
- }, /*#__PURE__*/_react.default.createElement(_uiA11yContent.ScreenReaderContent, null, (0, _formatMessage.default)('Add Content')), /*#__PURE__*/_react.default.createElement(_uiA11yContent.PresentationContent, null, /*#__PURE__*/_react.default.createElement(_uiIcons.IconPlusLine, {
101
+ }, (0, _emotion.jsx)(_uiA11yContent.ScreenReaderContent, null, (0, _formatMessage.default)('Add Content')), (0, _emotion.jsx)(_uiA11yContent.PresentationContent, null, (0, _emotion.jsx)(_uiIcons.IconPlusLine, {
108
102
  title: (0, _formatMessage.default)('Add Content')
109
103
  }))));
110
104
  }
@@ -120,7 +114,10 @@ var AddContentButton = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
120
114
  isEditing: _propTypes.default.bool.isRequired,
121
115
  onClick: _propTypes.default.func,
122
116
  position: _propTypes.default.number,
123
- useStimulusTrigger: _propTypes.default.bool.isRequired
117
+ useStimulusTrigger: _propTypes.default.bool.isRequired,
118
+ // eslint-disable-next-line react/require-default-props,react/forbid-prop-types
119
+ styles: _propTypes.default.object,
120
+ makeStyles: _propTypes.default.func
124
121
  }, _class2.defaultProps = {
125
122
  onClick: Function.prototype,
126
123
  position: null
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
13
+
14
+ var generateStyle = function generateStyle(componentTheme, props) {
15
+ var printMq = '@media print';
16
+ return {
17
+ newItemButton: (0, _objectSpread2.default)({
18
+ border: 'none',
19
+ margin: componentTheme.newItemButtonMargin,
20
+ padding: componentTheme.newItemButtonPadding,
21
+ backgroundColor: componentTheme.newItemButtonBackgroundColor,
22
+ borderRadius: componentTheme.newItemButtonBorderRadius,
23
+ lineHeight: 0,
24
+ fontSize: componentTheme.newItemButtonFontSize,
25
+ fontWeight: componentTheme.newItemButtonFontWeight,
26
+ textAlign: 'center',
27
+ color: componentTheme.newItemButtonColor,
28
+ boxShadow: componentTheme.newItemButtonBoxShadow,
29
+ transform: 'rotate(0deg)',
30
+ transition: componentTheme.newItemButtonTransition,
31
+ zIndex: componentTheme.newItemButtonZIndex,
32
+ ':focus': {
33
+ outline: componentTheme.newItemButtonFocusOutline,
34
+ outlineOffset: componentTheme.newItemButtonFocusOutlineOffset
35
+ }
36
+ }, props.isEditing && {
37
+ backgroundColor: componentTheme.newItemButtonEditingBackgroundColor,
38
+ transform: 'rotate(45deg)',
39
+ transition: componentTheme.newItemButtonTransition
40
+ }),
41
+ newItemButtonHolder: (0, _defineProperty2.default)({
42
+ display: 'flex',
43
+ justifyContent: 'center',
44
+ width: '100%',
45
+ zIndex: componentTheme.newItemButtonHolderZIndex,
46
+ marginTop: '-1.5rem'
47
+ }, printMq, {
48
+ display: 'none'
49
+ }),
50
+ attachQuestionButtonHolder: (0, _defineProperty2.default)({
51
+ display: 'flex',
52
+ justifyContent: 'center',
53
+ width: '100%',
54
+ zIndex: componentTheme.attachQuestionButtonHolderZIndex
55
+ }, printMq, {
56
+ display: 'none'
57
+ })
58
+ };
59
+ };
60
+
61
+ var _default = generateStyle;
62
+ exports.default = _default;
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = generator;
6
+ exports.default = void 0;
7
7
 
8
- function generator(_ref) {
8
+ var generateComponentTheme = function generateComponentTheme(_ref) {
9
9
  var spacing = _ref.spacing,
10
10
  colors = _ref.colors,
11
11
  borders = _ref.borders,
@@ -28,4 +28,7 @@ function generator(_ref) {
28
28
  newItemButtonHolderZIndex: '2222',
29
29
  newItemButtonTransition: "background-color ".concat(transitions.duration, " linear, transform ").concat(transitions.duration, " ease")
30
30
  };
31
- }
31
+ };
32
+
33
+ var _default = generateComponentTheme;
34
+ exports.default = _default;
@@ -2,8 +2,6 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
@@ -17,13 +15,13 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
17
15
 
18
16
  var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
19
17
 
20
- var _react = _interopRequireWildcard(require("react"));
18
+ var _react = require("react");
21
19
 
22
20
  var _propTypes = _interopRequireDefault(require("prop-types"));
23
21
 
24
22
  var _uiPopover = require("@instructure/ui-popover");
25
23
 
26
- var _uiThemeable = require("@instructure/ui-themeable");
24
+ var _emotion = require("@instructure/emotion");
27
25
 
28
26
  var _CustomPropTypes = _interopRequireDefault(require("../../../../../util/CustomPropTypes.js"));
29
27
 
@@ -37,20 +35,13 @@ var _index2 = _interopRequireDefault(require("../Body/index.js"));
37
35
 
38
36
  var _quizCommon = require("@instructure/quiz-common");
39
37
 
38
+ var _styles = _interopRequireDefault(require("./styles.js"));
39
+
40
40
  var _theme = _interopRequireDefault(require("./theme.js"));
41
41
 
42
42
  var _dec, _class, _class2, _temp;
43
43
 
44
- var styles = {
45
- componentId: 'bgZYv',
46
- template: function template(theme) {
47
- return "\n\n.bgZYv_NbWo{height:1px;position:relative}\n\n.bgZYv_NbWo,.bgZYv_ljGg{align-items:center;display:flex;flex-wrap:wrap;justify-content:center;width:100%}\n\nbody.tox-fullscreen .bgZYv_NbWo,body.tox-fullscreen .bgZYv_ljGg{z-index:0}\n\n.bgZYv_bRWN{border-bottom:solid ".concat(theme.borderLineBorderWidth || 'inherit', " ").concat(theme.borderLineBorderColor || 'inherit', ";top:0;width:100%}");
48
- },
49
- 'addContentContainer': 'bgZYv_NbWo',
50
- 'attachQuestionContainer': 'bgZYv_ljGg',
51
- 'borderLine': 'bgZYv_bRWN'
52
- };
53
- var AddContentPopover = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
44
+ var AddContentPopover = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
54
45
  (0, _inherits2.default)(AddContentPopover, _Component);
55
46
 
56
47
  var _super = (0, _createSuper2.default)(AddContentPopover);
@@ -83,7 +74,7 @@ var AddContentPopover = (_dec = (0, _uiThemeable.themeable)(_theme.default, styl
83
74
  };
84
75
 
85
76
  _this.renderPopoverButton = function () {
86
- return /*#__PURE__*/_react.default.createElement(_uiPopover.Popover, {
77
+ return (0, _emotion.jsx)(_uiPopover.Popover, {
87
78
  on: "click",
88
79
  onShowContent: _this.showContent,
89
80
  onHideContent: _this.hideContent,
@@ -91,7 +82,7 @@ var AddContentPopover = (_dec = (0, _uiThemeable.themeable)(_theme.default, styl
91
82
  shouldCloseOnEscape: true,
92
83
  shouldContainFocus: true,
93
84
  renderTrigger: _this.renderAddContentButton()
94
- }, /*#__PURE__*/_react.default.createElement(_index2.default, {
85
+ }, (0, _emotion.jsx)(_index2.default, {
95
86
  allowStimulusCreation: _this.props.allowStimulusCreation,
96
87
  onOpenBankTray: _this.props.switchOffEditing,
97
88
  onAddItem: _this.props.switchOffEditing,
@@ -132,7 +123,7 @@ var AddContentPopover = (_dec = (0, _uiThemeable.themeable)(_theme.default, styl
132
123
  key: "renderAddContentButton",
133
124
  value: function renderAddContentButton() {
134
125
  var onClick = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
135
- return /*#__PURE__*/_react.default.createElement(_index.default, {
126
+ return (0, _emotion.jsx)(_index.default, {
136
127
  ref: this.storePopoverTriggerRef,
137
128
  onClick: onClick,
138
129
  isEditing: this.props.isEditing,
@@ -147,13 +138,12 @@ var AddContentPopover = (_dec = (0, _uiThemeable.themeable)(_theme.default, styl
147
138
  }, {
148
139
  key: "render",
149
140
  value: function render() {
150
- var borderLine = this.props.useStimulusTrigger ? null : /*#__PURE__*/_react.default.createElement("div", {
151
- className: styles.borderLine
141
+ var borderLine = this.props.useStimulusTrigger ? null : (0, _emotion.jsx)("div", {
142
+ css: this.props.styles.borderLine
152
143
  });
153
- var wrapperClass = this.props.useStimulusTrigger ? styles.attachQuestionContainer : styles.addContentContainer;
154
144
  var button = this.props.isMobile ? this.renderModalButton() : this.renderPopoverButton();
155
- return /*#__PURE__*/_react.default.createElement("div", {
156
- className: wrapperClass,
145
+ return (0, _emotion.jsx)("div", {
146
+ css: this.props.styles.wrapper,
157
147
  "data-automation": "sdk-build-add-content"
158
148
  }, borderLine, button);
159
149
  }
@@ -174,7 +164,9 @@ var AddContentPopover = (_dec = (0, _uiThemeable.themeable)(_theme.default, styl
174
164
  stimulusId: _propTypes.default.string,
175
165
  switchOffEditing: _propTypes.default.func.isRequired,
176
166
  switchOnEditing: _propTypes.default.func.isRequired,
177
- useStimulusTrigger: _propTypes.default.bool
167
+ useStimulusTrigger: _propTypes.default.bool,
168
+ // eslint-disable-next-line react/require-default-props,react/forbid-prop-types
169
+ styles: _propTypes.default.object
178
170
  }, _class2.defaultProps = {
179
171
  allowStimulusCreation: true,
180
172
  isMobile: (0, _windowChecks.onPhone)() || (0, _windowChecks.onTablet)(),
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var generateStyle = function generateStyle(componentTheme, props) {
9
+ var attachQuestionContainer = {
10
+ width: '100%',
11
+ display: 'flex',
12
+ justifyContent: 'center',
13
+ alignItems: 'center',
14
+ flexWrap: 'wrap'
15
+ };
16
+ var addContentContainer = {
17
+ width: '100%',
18
+ display: 'flex',
19
+ justifyContent: 'center',
20
+ alignItems: 'center',
21
+ flexWrap: 'wrap',
22
+ position: 'relative',
23
+ height: '1px'
24
+ };
25
+ return {
26
+ wrapper: props.useStimulusTrigger ? attachQuestionContainer : addContentContainer,
27
+ borderLine: {
28
+ top: 0,
29
+ width: '100%',
30
+ borderBottom: "solid ".concat(componentTheme.borderLineBorderWidth, " ").concat(componentTheme.borderLineBorderColor)
31
+ }
32
+ };
33
+ };
34
+
35
+ var _default = generateStyle;
36
+ exports.default = _default;
@@ -3,13 +3,16 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = generator;
6
+ exports.default = void 0;
7
7
 
8
- function generator(_ref) {
8
+ var generateComponentTheme = function generateComponentTheme(_ref) {
9
9
  var colors = _ref.colors,
10
10
  borders = _ref.borders;
11
11
  return {
12
12
  borderLineBorderWidth: borders.widthMedium,
13
13
  borderLineBorderColor: colors.porcelain
14
14
  };
15
- }
15
+ };
16
+
17
+ var _default = generateComponentTheme;
18
+ exports.default = _default;