@instructure/quiz-core 20.8.1-rc.6 → 20.8.1-rc.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/common/components/shared/PaginatedCollection/presenter.js +12 -16
- package/es/common/components/shared/PaginatedCollection/styles.js +12 -0
- package/es/common/components/shared/PaginatedCollection/theme.js +4 -2
- package/es/common/components/shared/overlayEmotion/index.js +89 -0
- package/es/common/components/shared/overlayEmotion/styles.js +23 -0
- package/es/common/components/shared/overlayEmotion/theme.js +12 -0
- package/es/common/components/shared/spinner/Spinner.js +12 -23
- package/es/common/components/shared/spinner/styles.js +15 -0
- package/lib/common/components/shared/PaginatedCollection/presenter.js +12 -30
- package/lib/common/components/shared/PaginatedCollection/styles.js +20 -0
- package/lib/common/components/shared/PaginatedCollection/theme.js +6 -3
- package/lib/common/components/shared/overlayEmotion/index.js +95 -0
- package/lib/common/components/shared/overlayEmotion/styles.js +31 -0
- package/lib/common/components/shared/overlayEmotion/theme.js +20 -0
- package/lib/common/components/shared/spinner/Spinner.js +11 -25
- package/lib/common/components/shared/spinner/styles.js +23 -0
- package/package.json +9 -9
- package/es/common/components/shared/spinner/theme.js +0 -3
- package/lib/common/components/shared/spinner/theme.js +0 -10
|
@@ -8,11 +8,12 @@ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
|
|
|
8
8
|
|
|
9
9
|
var _dec, _class, _class2, _temp;
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
/** @jsx jsx */
|
|
12
|
+
import { Component } from 'react';
|
|
12
13
|
import * as Immutable from 'immutable';
|
|
13
14
|
import PropTypes from 'prop-types';
|
|
14
15
|
import ImmutablePropTypes from 'react-immutable-proptypes';
|
|
15
|
-
import {
|
|
16
|
+
import { withStyle, jsx } from '@instructure/emotion';
|
|
16
17
|
import Paginator from "../Paginator/index.js";
|
|
17
18
|
import Spinner from "../spinner/Spinner.js";
|
|
18
19
|
/**
|
|
@@ -29,18 +30,12 @@ import Spinner from "../spinner/Spinner.js";
|
|
|
29
30
|
* `params` change.
|
|
30
31
|
*/
|
|
31
32
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
template: function template(theme) {
|
|
35
|
-
return "\n\n.wHCnH_eMrv{color:".concat(theme.emptyColor || 'inherit', ";font-size:").concat(theme.emptyFontSize || 'inherit', ";padding:").concat(theme.emptyPadding || 'inherit', ";text-align:center}\n\n[dir=ltr] .wHCnH_eMrv,[dir=rtl] .wHCnH_eMrv{text-align:center}");
|
|
36
|
-
},
|
|
37
|
-
'empty': 'wHCnH_eMrv'
|
|
38
|
-
};
|
|
39
|
-
import theme from "./theme.js";
|
|
33
|
+
import generateStyle from "./styles.js";
|
|
34
|
+
import generateComponentTheme from "./theme.js";
|
|
40
35
|
|
|
41
|
-
var _ref2 =
|
|
36
|
+
var _ref2 = jsx(Spinner, null);
|
|
42
37
|
|
|
43
|
-
export var PaginatedCollection = (_dec =
|
|
38
|
+
export var PaginatedCollection = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
44
39
|
_inherits(PaginatedCollection, _Component);
|
|
45
40
|
|
|
46
41
|
var _super = _createSuper(PaginatedCollection);
|
|
@@ -160,8 +155,8 @@ export var PaginatedCollection = (_dec = themeable(theme, styles), _dec(_class =
|
|
|
160
155
|
}, {
|
|
161
156
|
key: "renderEmpty",
|
|
162
157
|
value: function renderEmpty() {
|
|
163
|
-
return
|
|
164
|
-
|
|
158
|
+
return jsx("div", {
|
|
159
|
+
css: this.props.styles.empty
|
|
165
160
|
}, this.props.empty);
|
|
166
161
|
}
|
|
167
162
|
}, {
|
|
@@ -175,7 +170,7 @@ export var PaginatedCollection = (_dec = themeable(theme, styles), _dec(_class =
|
|
|
175
170
|
var _this$props = this.props,
|
|
176
171
|
currentPage = _this$props.currentPage,
|
|
177
172
|
totalPages = _this$props.totalPages;
|
|
178
|
-
return
|
|
173
|
+
return jsx(Paginator, {
|
|
179
174
|
currentPage: currentPage,
|
|
180
175
|
onPageChange: this.onPageChange,
|
|
181
176
|
totalPages: totalPages
|
|
@@ -195,7 +190,8 @@ export var PaginatedCollection = (_dec = themeable(theme, styles), _dec(_class =
|
|
|
195
190
|
renderRecords: PropTypes.func.isRequired,
|
|
196
191
|
set: PropTypes.func.isRequired,
|
|
197
192
|
stateKey: PropTypes.string.isRequired,
|
|
198
|
-
totalPages: PropTypes.number.isRequired
|
|
193
|
+
totalPages: PropTypes.number.isRequired,
|
|
194
|
+
styles: PropTypes.object
|
|
199
195
|
}, _class2.defaultProps = {
|
|
200
196
|
empty: null,
|
|
201
197
|
params: Immutable.Map()
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
var generateStyle = function generateStyle(componentTheme) {
|
|
2
|
+
return {
|
|
3
|
+
empty: {
|
|
4
|
+
padding: componentTheme.emptyPadding,
|
|
5
|
+
fontSize: componentTheme.emptyFontSize,
|
|
6
|
+
textAlign: 'center',
|
|
7
|
+
color: componentTheme.emptyColor
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export default generateStyle;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
var generateComponentTheme = function generateComponentTheme(_ref) {
|
|
2
2
|
var colors = _ref.colors,
|
|
3
3
|
typography = _ref.typography,
|
|
4
4
|
spacing = _ref.spacing;
|
|
@@ -7,4 +7,6 @@ export default function generator(_ref) {
|
|
|
7
7
|
emptyFontSize: typography.fontSizeLarge,
|
|
8
8
|
emptyColor: colors.ash
|
|
9
9
|
};
|
|
10
|
-
}
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export default generateComponentTheme;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
|
+
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
4
|
+
import _createSuper from "@babel/runtime/helpers/esm/createSuper";
|
|
5
|
+
|
|
6
|
+
var _dec, _class, _class2, _temp;
|
|
7
|
+
|
|
8
|
+
/** @jsx jsx */
|
|
9
|
+
|
|
10
|
+
/* eslint "jsx-a11y/click-events-have-key-events": "warn" */
|
|
11
|
+
|
|
12
|
+
/* eslint "jsx-a11y/no-static-element-interactions": "warn" */
|
|
13
|
+
|
|
14
|
+
/* eslint-disable-next-line no-unused-vars */
|
|
15
|
+
import React, { Component } from 'react';
|
|
16
|
+
import PropTypes from 'prop-types';
|
|
17
|
+
/*
|
|
18
|
+
* We might be able to do the mouse over stuff automatically inside of this
|
|
19
|
+
* component but it seems like this is the simplest and best choice for now.
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
import { withStyle, jsx, Global } from '@instructure/emotion';
|
|
23
|
+
import generateStyle from "./styles.js";
|
|
24
|
+
import generateComponentTheme from "./theme.js";
|
|
25
|
+
var OverlayEmotion = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
26
|
+
_inherits(OverlayEmotion, _Component);
|
|
27
|
+
|
|
28
|
+
var _super = _createSuper(OverlayEmotion);
|
|
29
|
+
|
|
30
|
+
function OverlayEmotion() {
|
|
31
|
+
_classCallCheck(this, OverlayEmotion);
|
|
32
|
+
|
|
33
|
+
return _super.apply(this, arguments);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
_createClass(OverlayEmotion, [{
|
|
37
|
+
key: "overlayDiv",
|
|
38
|
+
value: function overlayDiv() {
|
|
39
|
+
if (this.props.hideOverlay) {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
return jsx("div", {
|
|
44
|
+
role: "presentation",
|
|
45
|
+
css: this.props.styles.overlay,
|
|
46
|
+
onClick: this.props.onClick,
|
|
47
|
+
"data-automation": "sdk-overlay"
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}, {
|
|
51
|
+
key: "render",
|
|
52
|
+
value: function render() {
|
|
53
|
+
var _this$props = this.props,
|
|
54
|
+
wrapperStyles = _this$props.wrapperStyles,
|
|
55
|
+
children = _this$props.children,
|
|
56
|
+
tabIndex = _this$props.tabIndex,
|
|
57
|
+
ariaLabel = _this$props.ariaLabel;
|
|
58
|
+
return jsx(React.Fragment, null, jsx(Global, {
|
|
59
|
+
styles: {
|
|
60
|
+
'body.tox-fullscreen .overlay': {
|
|
61
|
+
'zIndex': '0'
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}), jsx("div", {
|
|
65
|
+
css: [this.props.styles.root, wrapperStyles],
|
|
66
|
+
"data-testid": "overlay-wrapper",
|
|
67
|
+
tabIndex: tabIndex,
|
|
68
|
+
"aria-label": ariaLabel
|
|
69
|
+
}, this.overlayDiv(), children));
|
|
70
|
+
}
|
|
71
|
+
}]);
|
|
72
|
+
|
|
73
|
+
OverlayEmotion.displayName = "OverlayEmotion";
|
|
74
|
+
return OverlayEmotion;
|
|
75
|
+
}(Component), _class2.propTypes = {
|
|
76
|
+
children: PropTypes.oneOfType([PropTypes.element, PropTypes.arrayOf(PropTypes.element)]).isRequired,
|
|
77
|
+
hideOverlay: PropTypes.bool,
|
|
78
|
+
onClick: PropTypes.func.isRequired,
|
|
79
|
+
wrapperStyles: PropTypes.object,
|
|
80
|
+
tabIndex: PropTypes.string,
|
|
81
|
+
ariaLabel: PropTypes.string,
|
|
82
|
+
styles: PropTypes.object
|
|
83
|
+
}, _class2.defaultProps = {
|
|
84
|
+
hideOverlay: false,
|
|
85
|
+
tabIndex: '0',
|
|
86
|
+
wrapperStyles: {},
|
|
87
|
+
ariaLabel: void 0
|
|
88
|
+
}, _temp)) || _class);
|
|
89
|
+
export default OverlayEmotion;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
var generateStyle = function generateStyle(componentTheme) {
|
|
2
|
+
return {
|
|
3
|
+
root: {
|
|
4
|
+
position: 'relative',
|
|
5
|
+
alignSelf: 'center'
|
|
6
|
+
},
|
|
7
|
+
overlay: {
|
|
8
|
+
position: 'absolute',
|
|
9
|
+
top: '0',
|
|
10
|
+
left: '0',
|
|
11
|
+
cursor: 'pointer',
|
|
12
|
+
zIndex: componentTheme.overlayZIndex,
|
|
13
|
+
height: '100%',
|
|
14
|
+
width: '100%',
|
|
15
|
+
'&:hover': {
|
|
16
|
+
boxSizing: 'border-box',
|
|
17
|
+
borderLeft: "".concat(componentTheme.overlayBarSize, " solid ").concat(componentTheme.overlayBarColor)
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export default generateStyle;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
var generateComponentTheme = function generateComponentTheme(_ref) {
|
|
2
|
+
var colors = _ref.colors,
|
|
3
|
+
borders = _ref.borders,
|
|
4
|
+
spacing = _ref.spacing;
|
|
5
|
+
return {
|
|
6
|
+
overlayZIndex: '2222',
|
|
7
|
+
overlayBarColor: colors.electric,
|
|
8
|
+
overlayBarSize: '0.3rem'
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export default generateComponentTheme;
|
|
@@ -5,24 +5,16 @@ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
|
|
|
5
5
|
|
|
6
6
|
var _dec, _class, _class2, _temp;
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
/** @jsx jsx */
|
|
9
|
+
import { Component } from 'react';
|
|
9
10
|
import PropTypes from 'prop-types';
|
|
10
11
|
import { Text } from '@instructure/ui-text';
|
|
11
12
|
import { Spinner } from '@instructure/ui-spinner';
|
|
12
13
|
import { PresentationContent } from '@instructure/ui-a11y-content';
|
|
13
|
-
import {
|
|
14
|
+
import { withStyle, jsx } from '@instructure/emotion';
|
|
14
15
|
import t from '@instructure/quiz-i18n/es/format-message';
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
template: function template(theme) {
|
|
18
|
-
return "\n\n.cJgyM_gasz{align-items:center;column-gap:10px;display:inline-flex;flex:1 1 auto;height:100%;justify-content:center;width:100%}\n\n:root .cJgyM_gasz,_:-ms-fullscreen{height:10rem}\n\n.cJgyM_bZBM .cJgyM_qrQc{flex:1 1 auto}";
|
|
19
|
-
},
|
|
20
|
-
'wrapper': 'cJgyM_gasz',
|
|
21
|
-
'left': 'cJgyM_bZBM',
|
|
22
|
-
'right': 'cJgyM_qrQc'
|
|
23
|
-
};
|
|
24
|
-
import theme from "./theme.js";
|
|
25
|
-
export var QuizzesSpinner = (_dec = themeable(theme, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
16
|
+
import generateStyle from "./styles.js";
|
|
17
|
+
export var QuizzesSpinner = (_dec = withStyle(generateStyle, null), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
26
18
|
_inherits(QuizzesSpinner, _Component);
|
|
27
19
|
|
|
28
20
|
var _super = _createSuper(QuizzesSpinner);
|
|
@@ -40,7 +32,7 @@ export var QuizzesSpinner = (_dec = themeable(theme, styles), _dec(_class = (_te
|
|
|
40
32
|
color = _this$props.color,
|
|
41
33
|
mainText = _this$props.mainText,
|
|
42
34
|
fontSize = _this$props.fontSize;
|
|
43
|
-
return
|
|
35
|
+
return jsx(Text, {
|
|
44
36
|
size: fontSize,
|
|
45
37
|
color: color
|
|
46
38
|
}, mainText || t('Loading...'));
|
|
@@ -51,19 +43,15 @@ export var QuizzesSpinner = (_dec = themeable(theme, styles), _dec(_class = (_te
|
|
|
51
43
|
var _this$props2 = this.props,
|
|
52
44
|
size = _this$props2.size,
|
|
53
45
|
minHeight = _this$props2.minHeight;
|
|
54
|
-
return
|
|
55
|
-
|
|
46
|
+
return jsx("div", {
|
|
47
|
+
css: this.props.styles.wrapper,
|
|
56
48
|
style: {
|
|
57
49
|
minHeight: minHeight
|
|
58
50
|
}
|
|
59
|
-
},
|
|
60
|
-
className: styles.left
|
|
61
|
-
}, /*#__PURE__*/React.createElement(Spinner, {
|
|
51
|
+
}, jsx("div", null, jsx(Spinner, {
|
|
62
52
|
renderTitle: this.mainText(),
|
|
63
53
|
size: size
|
|
64
|
-
})),
|
|
65
|
-
className: styles.right
|
|
66
|
-
}, /*#__PURE__*/React.createElement(PresentationContent, null, this.mainText())));
|
|
54
|
+
})), jsx("div", null, jsx(PresentationContent, null, this.mainText())));
|
|
67
55
|
}
|
|
68
56
|
}]);
|
|
69
57
|
|
|
@@ -74,7 +62,8 @@ export var QuizzesSpinner = (_dec = themeable(theme, styles), _dec(_class = (_te
|
|
|
74
62
|
fontSize: PropTypes.oneOf(['x-small', 'small', 'medium', 'large', 'x-large', 'xx-large']),
|
|
75
63
|
size: PropTypes.oneOf(['x-small', 'small', 'medium', 'large']),
|
|
76
64
|
color: PropTypes.string,
|
|
77
|
-
minHeight: PropTypes.string
|
|
65
|
+
minHeight: PropTypes.string,
|
|
66
|
+
styles: PropTypes.object
|
|
78
67
|
}, _class2.defaultProps = {
|
|
79
68
|
mainText: null,
|
|
80
69
|
size: 'large',
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
var generateStyle = function generateStyle() {
|
|
2
|
+
return {
|
|
3
|
+
wrapper: {
|
|
4
|
+
width: '100%',
|
|
5
|
+
height: '100%',
|
|
6
|
+
display: 'inline-flex',
|
|
7
|
+
flex: '1 1 auto',
|
|
8
|
+
alignItems: 'center',
|
|
9
|
+
justifyContent: 'center',
|
|
10
|
+
columnGap: '10px'
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export default generateStyle;
|
|
@@ -23,7 +23,7 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
|
|
|
23
23
|
|
|
24
24
|
var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
|
|
25
25
|
|
|
26
|
-
var _react =
|
|
26
|
+
var _react = require("react");
|
|
27
27
|
|
|
28
28
|
var Immutable = _interopRequireWildcard(require("immutable"));
|
|
29
29
|
|
|
@@ -31,40 +31,21 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
31
31
|
|
|
32
32
|
var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
|
|
33
33
|
|
|
34
|
-
var
|
|
34
|
+
var _emotion = require("@instructure/emotion");
|
|
35
35
|
|
|
36
36
|
var _index = _interopRequireDefault(require("../Paginator/index.js"));
|
|
37
37
|
|
|
38
38
|
var _Spinner = _interopRequireDefault(require("../spinner/Spinner.js"));
|
|
39
39
|
|
|
40
|
+
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
41
|
+
|
|
40
42
|
var _theme = _interopRequireDefault(require("./theme.js"));
|
|
41
43
|
|
|
42
44
|
var _dec, _class, _class2, _temp;
|
|
43
45
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
* return a promise that resolves to `{ records, totalPages }`, where `records`
|
|
48
|
-
* is an array of arbitrary records, and `totalPages` is the total number of
|
|
49
|
-
* pages. `renderRecords` will be called with `records` as returned from the
|
|
50
|
-
* `getPage` function. It is the responsibility of that function to render the
|
|
51
|
-
* page.
|
|
52
|
-
*
|
|
53
|
-
* This component assumes that changing collection `params` can change the
|
|
54
|
-
* underlying collection that is fetched. It thus resets the page cache when
|
|
55
|
-
* `params` change.
|
|
56
|
-
*/
|
|
57
|
-
var styles = {
|
|
58
|
-
componentId: 'wHCnH',
|
|
59
|
-
template: function template(theme) {
|
|
60
|
-
return "\n\n.wHCnH_eMrv{color:".concat(theme.emptyColor || 'inherit', ";font-size:").concat(theme.emptyFontSize || 'inherit', ";padding:").concat(theme.emptyPadding || 'inherit', ";text-align:center}\n\n[dir=ltr] .wHCnH_eMrv,[dir=rtl] .wHCnH_eMrv{text-align:center}");
|
|
61
|
-
},
|
|
62
|
-
'empty': 'wHCnH_eMrv'
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
var _ref2 = /*#__PURE__*/_react.default.createElement(_Spinner.default, null);
|
|
66
|
-
|
|
67
|
-
var PaginatedCollection = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
46
|
+
var _ref2 = (0, _emotion.jsx)(_Spinner.default, null);
|
|
47
|
+
|
|
48
|
+
var PaginatedCollection = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
68
49
|
(0, _inherits2.default)(PaginatedCollection, _Component);
|
|
69
50
|
|
|
70
51
|
var _super = (0, _createSuper2.default)(PaginatedCollection);
|
|
@@ -184,8 +165,8 @@ var PaginatedCollection = (_dec = (0, _uiThemeable.themeable)(_theme.default, st
|
|
|
184
165
|
}, {
|
|
185
166
|
key: "renderEmpty",
|
|
186
167
|
value: function renderEmpty() {
|
|
187
|
-
return
|
|
188
|
-
|
|
168
|
+
return (0, _emotion.jsx)("div", {
|
|
169
|
+
css: this.props.styles.empty
|
|
189
170
|
}, this.props.empty);
|
|
190
171
|
}
|
|
191
172
|
}, {
|
|
@@ -199,7 +180,7 @@ var PaginatedCollection = (_dec = (0, _uiThemeable.themeable)(_theme.default, st
|
|
|
199
180
|
var _this$props = this.props,
|
|
200
181
|
currentPage = _this$props.currentPage,
|
|
201
182
|
totalPages = _this$props.totalPages;
|
|
202
|
-
return
|
|
183
|
+
return (0, _emotion.jsx)(_index.default, {
|
|
203
184
|
currentPage: currentPage,
|
|
204
185
|
onPageChange: this.onPageChange,
|
|
205
186
|
totalPages: totalPages
|
|
@@ -218,7 +199,8 @@ var PaginatedCollection = (_dec = (0, _uiThemeable.themeable)(_theme.default, st
|
|
|
218
199
|
renderRecords: _propTypes.default.func.isRequired,
|
|
219
200
|
set: _propTypes.default.func.isRequired,
|
|
220
201
|
stateKey: _propTypes.default.string.isRequired,
|
|
221
|
-
totalPages: _propTypes.default.number.isRequired
|
|
202
|
+
totalPages: _propTypes.default.number.isRequired,
|
|
203
|
+
styles: _propTypes.default.object
|
|
222
204
|
}, _class2.defaultProps = {
|
|
223
205
|
empty: null,
|
|
224
206
|
params: Immutable.Map()
|
|
@@ -0,0 +1,20 @@
|
|
|
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) {
|
|
9
|
+
return {
|
|
10
|
+
empty: {
|
|
11
|
+
padding: componentTheme.emptyPadding,
|
|
12
|
+
fontSize: componentTheme.emptyFontSize,
|
|
13
|
+
textAlign: 'center',
|
|
14
|
+
color: componentTheme.emptyColor
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
var _default = generateStyle;
|
|
20
|
+
exports.default = _default;
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
6
|
+
exports.default = void 0;
|
|
7
7
|
|
|
8
|
-
function
|
|
8
|
+
var generateComponentTheme = function generateComponentTheme(_ref) {
|
|
9
9
|
var colors = _ref.colors,
|
|
10
10
|
typography = _ref.typography,
|
|
11
11
|
spacing = _ref.spacing;
|
|
@@ -14,4 +14,7 @@ function generator(_ref) {
|
|
|
14
14
|
emptyFontSize: typography.fontSizeLarge,
|
|
15
15
|
emptyColor: colors.ash
|
|
16
16
|
};
|
|
17
|
-
}
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
var _default = generateComponentTheme;
|
|
20
|
+
exports.default = _default;
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.default = void 0;
|
|
11
|
+
|
|
12
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
|
+
|
|
14
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
|
+
|
|
16
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
+
|
|
18
|
+
var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
|
|
19
|
+
|
|
20
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
21
|
+
|
|
22
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
23
|
+
|
|
24
|
+
var _emotion = require("@instructure/emotion");
|
|
25
|
+
|
|
26
|
+
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
27
|
+
|
|
28
|
+
var _theme = _interopRequireDefault(require("./theme.js"));
|
|
29
|
+
|
|
30
|
+
var _dec, _class, _class2, _temp;
|
|
31
|
+
|
|
32
|
+
var OverlayEmotion = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
33
|
+
(0, _inherits2.default)(OverlayEmotion, _Component);
|
|
34
|
+
|
|
35
|
+
var _super = (0, _createSuper2.default)(OverlayEmotion);
|
|
36
|
+
|
|
37
|
+
function OverlayEmotion() {
|
|
38
|
+
(0, _classCallCheck2.default)(this, OverlayEmotion);
|
|
39
|
+
return _super.apply(this, arguments);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
(0, _createClass2.default)(OverlayEmotion, [{
|
|
43
|
+
key: "overlayDiv",
|
|
44
|
+
value: function overlayDiv() {
|
|
45
|
+
if (this.props.hideOverlay) {
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return (0, _emotion.jsx)("div", {
|
|
50
|
+
role: "presentation",
|
|
51
|
+
css: this.props.styles.overlay,
|
|
52
|
+
onClick: this.props.onClick,
|
|
53
|
+
"data-automation": "sdk-overlay"
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}, {
|
|
57
|
+
key: "render",
|
|
58
|
+
value: function render() {
|
|
59
|
+
var _this$props = this.props,
|
|
60
|
+
wrapperStyles = _this$props.wrapperStyles,
|
|
61
|
+
children = _this$props.children,
|
|
62
|
+
tabIndex = _this$props.tabIndex,
|
|
63
|
+
ariaLabel = _this$props.ariaLabel;
|
|
64
|
+
return (0, _emotion.jsx)(_react.default.Fragment, null, (0, _emotion.jsx)(_emotion.Global, {
|
|
65
|
+
styles: {
|
|
66
|
+
'body.tox-fullscreen .overlay': {
|
|
67
|
+
'zIndex': '0'
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}), (0, _emotion.jsx)("div", {
|
|
71
|
+
css: [this.props.styles.root, wrapperStyles],
|
|
72
|
+
"data-testid": "overlay-wrapper",
|
|
73
|
+
tabIndex: tabIndex,
|
|
74
|
+
"aria-label": ariaLabel
|
|
75
|
+
}, this.overlayDiv(), children));
|
|
76
|
+
}
|
|
77
|
+
}]);
|
|
78
|
+
OverlayEmotion.displayName = "OverlayEmotion";
|
|
79
|
+
return OverlayEmotion;
|
|
80
|
+
}(_react.Component), _class2.propTypes = {
|
|
81
|
+
children: _propTypes.default.oneOfType([_propTypes.default.element, _propTypes.default.arrayOf(_propTypes.default.element)]).isRequired,
|
|
82
|
+
hideOverlay: _propTypes.default.bool,
|
|
83
|
+
onClick: _propTypes.default.func.isRequired,
|
|
84
|
+
wrapperStyles: _propTypes.default.object,
|
|
85
|
+
tabIndex: _propTypes.default.string,
|
|
86
|
+
ariaLabel: _propTypes.default.string,
|
|
87
|
+
styles: _propTypes.default.object
|
|
88
|
+
}, _class2.defaultProps = {
|
|
89
|
+
hideOverlay: false,
|
|
90
|
+
tabIndex: '0',
|
|
91
|
+
wrapperStyles: {},
|
|
92
|
+
ariaLabel: void 0
|
|
93
|
+
}, _temp)) || _class);
|
|
94
|
+
var _default = OverlayEmotion;
|
|
95
|
+
exports.default = _default;
|
|
@@ -0,0 +1,31 @@
|
|
|
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) {
|
|
9
|
+
return {
|
|
10
|
+
root: {
|
|
11
|
+
position: 'relative',
|
|
12
|
+
alignSelf: 'center'
|
|
13
|
+
},
|
|
14
|
+
overlay: {
|
|
15
|
+
position: 'absolute',
|
|
16
|
+
top: '0',
|
|
17
|
+
left: '0',
|
|
18
|
+
cursor: 'pointer',
|
|
19
|
+
zIndex: componentTheme.overlayZIndex,
|
|
20
|
+
height: '100%',
|
|
21
|
+
width: '100%',
|
|
22
|
+
'&:hover': {
|
|
23
|
+
boxSizing: 'border-box',
|
|
24
|
+
borderLeft: "".concat(componentTheme.overlayBarSize, " solid ").concat(componentTheme.overlayBarColor)
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
var _default = generateStyle;
|
|
31
|
+
exports.default = _default;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var generateComponentTheme = function generateComponentTheme(_ref) {
|
|
9
|
+
var colors = _ref.colors,
|
|
10
|
+
borders = _ref.borders,
|
|
11
|
+
spacing = _ref.spacing;
|
|
12
|
+
return {
|
|
13
|
+
overlayZIndex: '2222',
|
|
14
|
+
overlayBarColor: colors.electric,
|
|
15
|
+
overlayBarSize: '0.3rem'
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
var _default = generateComponentTheme;
|
|
20
|
+
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 =
|
|
18
|
+
var _react = require("react");
|
|
21
19
|
|
|
22
20
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
23
21
|
|
|
@@ -27,24 +25,15 @@ var _uiSpinner = require("@instructure/ui-spinner");
|
|
|
27
25
|
|
|
28
26
|
var _uiA11yContent = require("@instructure/ui-a11y-content");
|
|
29
27
|
|
|
30
|
-
var
|
|
28
|
+
var _emotion = require("@instructure/emotion");
|
|
31
29
|
|
|
32
30
|
var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
|
|
33
31
|
|
|
34
|
-
var
|
|
32
|
+
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
35
33
|
|
|
36
34
|
var _dec, _class, _class2, _temp;
|
|
37
35
|
|
|
38
|
-
var
|
|
39
|
-
componentId: 'cJgyM',
|
|
40
|
-
template: function template(theme) {
|
|
41
|
-
return "\n\n.cJgyM_gasz{align-items:center;column-gap:10px;display:inline-flex;flex:1 1 auto;height:100%;justify-content:center;width:100%}\n\n:root .cJgyM_gasz,_:-ms-fullscreen{height:10rem}\n\n.cJgyM_bZBM .cJgyM_qrQc{flex:1 1 auto}";
|
|
42
|
-
},
|
|
43
|
-
'wrapper': 'cJgyM_gasz',
|
|
44
|
-
'left': 'cJgyM_bZBM',
|
|
45
|
-
'right': 'cJgyM_qrQc'
|
|
46
|
-
};
|
|
47
|
-
var QuizzesSpinner = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
36
|
+
var QuizzesSpinner = (_dec = (0, _emotion.withStyle)(_styles.default, null), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
48
37
|
(0, _inherits2.default)(QuizzesSpinner, _Component);
|
|
49
38
|
|
|
50
39
|
var _super = (0, _createSuper2.default)(QuizzesSpinner);
|
|
@@ -61,7 +50,7 @@ var QuizzesSpinner = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles)
|
|
|
61
50
|
color = _this$props.color,
|
|
62
51
|
mainText = _this$props.mainText,
|
|
63
52
|
fontSize = _this$props.fontSize;
|
|
64
|
-
return
|
|
53
|
+
return (0, _emotion.jsx)(_uiText.Text, {
|
|
65
54
|
size: fontSize,
|
|
66
55
|
color: color
|
|
67
56
|
}, mainText || (0, _formatMessage.default)('Loading...'));
|
|
@@ -72,19 +61,15 @@ var QuizzesSpinner = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles)
|
|
|
72
61
|
var _this$props2 = this.props,
|
|
73
62
|
size = _this$props2.size,
|
|
74
63
|
minHeight = _this$props2.minHeight;
|
|
75
|
-
return
|
|
76
|
-
|
|
64
|
+
return (0, _emotion.jsx)("div", {
|
|
65
|
+
css: this.props.styles.wrapper,
|
|
77
66
|
style: {
|
|
78
67
|
minHeight: minHeight
|
|
79
68
|
}
|
|
80
|
-
},
|
|
81
|
-
className: styles.left
|
|
82
|
-
}, /*#__PURE__*/_react.default.createElement(_uiSpinner.Spinner, {
|
|
69
|
+
}, (0, _emotion.jsx)("div", null, (0, _emotion.jsx)(_uiSpinner.Spinner, {
|
|
83
70
|
renderTitle: this.mainText(),
|
|
84
71
|
size: size
|
|
85
|
-
})),
|
|
86
|
-
className: styles.right
|
|
87
|
-
}, /*#__PURE__*/_react.default.createElement(_uiA11yContent.PresentationContent, null, this.mainText())));
|
|
72
|
+
})), (0, _emotion.jsx)("div", null, (0, _emotion.jsx)(_uiA11yContent.PresentationContent, null, this.mainText())));
|
|
88
73
|
}
|
|
89
74
|
}]);
|
|
90
75
|
QuizzesSpinner.displayName = "QuizzesSpinner";
|
|
@@ -94,7 +79,8 @@ var QuizzesSpinner = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles)
|
|
|
94
79
|
fontSize: _propTypes.default.oneOf(['x-small', 'small', 'medium', 'large', 'x-large', 'xx-large']),
|
|
95
80
|
size: _propTypes.default.oneOf(['x-small', 'small', 'medium', 'large']),
|
|
96
81
|
color: _propTypes.default.string,
|
|
97
|
-
minHeight: _propTypes.default.string
|
|
82
|
+
minHeight: _propTypes.default.string,
|
|
83
|
+
styles: _propTypes.default.object
|
|
98
84
|
}, _class2.defaultProps = {
|
|
99
85
|
mainText: null,
|
|
100
86
|
size: 'large',
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var generateStyle = function generateStyle() {
|
|
9
|
+
return {
|
|
10
|
+
wrapper: {
|
|
11
|
+
width: '100%',
|
|
12
|
+
height: '100%',
|
|
13
|
+
display: 'inline-flex',
|
|
14
|
+
flex: '1 1 auto',
|
|
15
|
+
alignItems: 'center',
|
|
16
|
+
justifyContent: 'center',
|
|
17
|
+
columnGap: '10px'
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
var _default = generateStyle;
|
|
23
|
+
exports.default = _default;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@instructure/quiz-core",
|
|
3
|
-
"version": "20.8.1-rc.
|
|
3
|
+
"version": "20.8.1-rc.7+de8a0c6fd",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "The Quiz React SDK by Instructure Inc.",
|
|
6
6
|
"author": "Instructure, Inc. Engineering and Product Design",
|
|
@@ -44,11 +44,11 @@
|
|
|
44
44
|
"@instructure/emotion": "^8.51.0",
|
|
45
45
|
"@instructure/grading-utils": "^1.0.0",
|
|
46
46
|
"@instructure/outcomes-ui": "^3.1.0",
|
|
47
|
-
"@instructure/quiz-common": "20.8.1-rc.
|
|
48
|
-
"@instructure/quiz-i18n": "20.8.1-rc.
|
|
49
|
-
"@instructure/quiz-interactions": "20.8.1-rc.
|
|
50
|
-
"@instructure/quiz-number-input": "20.8.1-rc.
|
|
51
|
-
"@instructure/quiz-rce": "20.8.1-rc.
|
|
47
|
+
"@instructure/quiz-common": "20.8.1-rc.7+de8a0c6fd",
|
|
48
|
+
"@instructure/quiz-i18n": "20.8.1-rc.7+de8a0c6fd",
|
|
49
|
+
"@instructure/quiz-interactions": "20.8.1-rc.7+de8a0c6fd",
|
|
50
|
+
"@instructure/quiz-number-input": "20.8.1-rc.7+de8a0c6fd",
|
|
51
|
+
"@instructure/quiz-rce": "20.8.1-rc.7+de8a0c6fd",
|
|
52
52
|
"@instructure/ui-a11y-content": "^8.51.0",
|
|
53
53
|
"@instructure/ui-alerts": "^8.51.0",
|
|
54
54
|
"@instructure/ui-avatar": "^8.51.0",
|
|
@@ -112,7 +112,7 @@
|
|
|
112
112
|
"file-saver": "~2.0.5",
|
|
113
113
|
"humps": "^2.0.0",
|
|
114
114
|
"immutable": "^3.8.1",
|
|
115
|
-
"instructure-validations": "20.8.1-rc.
|
|
115
|
+
"instructure-validations": "20.8.1-rc.7+de8a0c6fd",
|
|
116
116
|
"ipaddr.js": "^1.5.4",
|
|
117
117
|
"isomorphic-fetch": "^2.2.0",
|
|
118
118
|
"isuuid": "^0.1.0",
|
|
@@ -163,7 +163,7 @@
|
|
|
163
163
|
"intl": "^1.2.4",
|
|
164
164
|
"jquery": "^2.2.3",
|
|
165
165
|
"most-subject": "^5.3.0",
|
|
166
|
-
"quiz-presets": "20.8.1-rc.
|
|
166
|
+
"quiz-presets": "20.8.1-rc.7+de8a0c6fd",
|
|
167
167
|
"react": "^16.8.6",
|
|
168
168
|
"react-addons-test-utils": "^15.6.2",
|
|
169
169
|
"react-dom": "^16.8.6",
|
|
@@ -179,5 +179,5 @@
|
|
|
179
179
|
"publishConfig": {
|
|
180
180
|
"access": "public"
|
|
181
181
|
},
|
|
182
|
-
"gitHead": "
|
|
182
|
+
"gitHead": "de8a0c6fd8ca971f496d689fa38d73ed6fa92a62"
|
|
183
183
|
}
|